CVE-2026-119122: Crawl4AI blind SSRF in CacheValidator proxy bypass

CVE-2026-119122 · Severity: medium · CVSS 5.3 · Published 2026-10-29

Crawl4AI is a web scraping library with a Docker API server that enforces an egress proxy to block requests to internal and cloud services. Before version 0.9.5, the cache freshness check feature bypassed this proxy entirely, allowing an attacker to trigger requests to internal addresses, cloud metadata services, and other restricted destinations. An attacker can discover internal services and ports, or potentially exfiltrate sensitive metadata by controlling a URL the server caches and then redirects.

Technologies: Unclecode Crawl4AI. Vendors: Unclecode.

Quick answers

Is CVE-2026-119122 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-119122 being exploited in the wild.
How severe is CVE-2026-119122?
Medium severity, with a CVSS score of 5.3, published 29 October 2026.
Which products and versions are affected?
Unclecode Crawl4AI before 0.9.5.
Is there a fix for CVE-2026-119122?
Yes: fixed in 0.9.5. Until then: Strip check_cache_freshness from incoming crawler_config request bodies at your reverse proxy. Restrict the container's outbound network access via egress firewall rules and remove routes to metadata services. Enable API authentication and restrict token distribution. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-119122 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-119122?
Check whether you run Unclecode Crawl4AI at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Fixed in: 0.9.5

Strip check_cache_freshness from incoming crawler_config request bodies at your reverse proxy. Restrict the container's outbound network access via egress firewall rules and remove routes to metadata services. Enable API authentication and restrict token distribution.

Technical details

The CacheValidator component in crawl4ai/cache_validator.py builds an HTTP client without proxy enforcement and with redirect following enabled. When a cached page exists and the client sets check_cache_freshness=true, the validator sends HEAD/GET requests directly to the target, bypassing the egress proxy that protects the Docker server. An attacker first caches a URL they control, then triggers a freshness check; the attacker's server responds with a 302 redirect to an internal address (169.254.169.254, 127.0.0.1, or private ranges), and the validator follows it without validation. DNS rebinding is also possible since the client re-resolves hostnames on redirect.

Affected products

  • unclecode Crawl4AI before 0.9.5

Timeline

  • 2026-10-15: disclosed: GitHub Security Advisory published
  • 2026-10-29: advisory: NVD advisory published
  • 2026-10-15: patched: Version 0.9.5 released

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.