Description
Crawl4AI is an open-source LLM friendly web crawler & scraper. Prior to 0.8.7, the _safe_eval_expression() function in the computed fields feature uses an AST validator that only blocks attributes starting with underscore. Python generator and frame object attributes (gi_frame, f_back, f_builtins) do NOT start with underscore, enabling a complete sandbox escape to achieve arbitrary code execution. The attack requires no authentication (JWT disabled by default) and is triggered via POST /crawl with a crafted extraction schema. This vulnerability is fixed in 0.8.7.
Problem types
CWE-94: Improper Control of Generation of Code ('Code Injection')
CWE-913: Improper Control of Dynamically-Managed Code Resources
Product status
References
github.com/...awl4ai/security/advisories/GHSA-qxjp-w3pj-48m7
github.com/...awl4ai/security/advisories/GHSA-qxjp-w3pj-48m7