跳到正文
原文
GitHub 安全公告·本站收录 · 原文发表 精选关注度52

Pydantic AI 修复 web_fetch 中二次复杂度标题提取导致的 event loop 阻塞漏洞

Pydantic AI: Event loop blocked by quadratic title extraction in `web_fetch`

AI 导读

Pydantic AI 的本地网页抓取工具 web_fetch_tool(也是 WebFetch 能力的本地回退)在处理响应时存在二次复杂度步骤并运行在 event loop 上,暴露给不可信提示词的应用可被引导抓取攻击者控制的页面,阻塞 event loop 数分钟,拖住进程内其他协程。标题提取使用回溯正则匹配原始响应体,重复未闭合标签开头会让耗时随体积平方增长;HTML 转 markdown 的空白归一化、preformatted 块剥离和有序列表编号也有同样问题。HTML 转 markdown 每层嵌套递归一次,嵌套数百层会触发 RecursionError 中止运行, 响应嵌套过深同理。该问题仅影响可用性,GHSA-v2xh-2vp8-57h8 引入的 SSRF 防护和下载体积限制不受影响。该问题由 @BrianWillows 私下报告,其余问题在修复过程中发现。

推荐理由

披露了 Pydantic AI 本地网页抓取工具中由服务器可控输入触发的二次复杂度处理问题,以及对应的修复方式。

阅读原文github.com