事件经过
在 Crawl4AI 0.8.7 之前,_safe_eval_expression() 函数使用 AST 验证器,仅阻止以下划线开头的属性。Python 生成器和帧对象属性(gi_frame、f_back、f_builtins)不以下划线开头,但提供对解释器执行环境的访问。攻击者可以提供精心设计的计算字段表达式来逃逸沙盒并实现任意代码执行。CVSS 9.8 严重,发布于 2026-06-23。
影响分析
Crawl4AI 明确设计为 LLM 友好的网页爬虫,广泛用于向 RAG 管道和 AI 代理提供数据。利用允许注入的网页内容(通过爬取的页面)在通过计算字段处理时实现服务器端 RCE — AI 数据管道的直接提示到代码执行路径。
攻击途径
攻击者提供使用生成器/帧对象属性(例如 gi_frame.f_back.f_builtins)的恶意计算字段表达式来逃逸 AST 沙盒并执行任意 Python
受影响系统
Crawl4AI < 0.8.7
缓解措施
升级到 Crawl4AI 0.8.7。公告:https://github.com/unclecode/crawl4ai/security/advisories/GHSA-qxjp-w3pj-48m7