Description
Crawl4AI is an open-source LLM-friendly web crawler and scraper. Prior to 0.9.0, the Docker API server applied its SSRF destination check on the non-streaming /crawl path but not on the streaming path. handle_stream_crawl_request passed seed URLs straight to the crawler with no destination validation, allowing a remote unauthenticated client to call POST /crawl/stream or POST /crawl with crawler_config.stream=true with a URL pointing at an internal, private, or link-local address; the server fetched it and streamed the response body back. This issue is fixed in version 0.9.0.
Published: 2026-07-06
Score: 8.6 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Crawl4AI’s Docker API server did not validate the destination URL when the streaming path was invoked, allowing an unauthenticated attacker to send POST requests to /crawl/stream or to /crawl with crawler_config.stream=true and supply a URL that resolves to an internal, private, or link‑local address. The server resolved and fetched that URL, streaming the response back to the attacker. The flaw is a server‑side request forgery (CWE‑918) that grants remote callers the ability to read internal resources, files, or services that would normally be unreachable from outside the host. The CVSS score of 8.6 indicates high severity for unauthenticated remote attackers, and the EPSS score of < 1 % suggests limited current exploitation activity, although the vulnerability remains theoretically exploitable.

Affected Systems

Any installation of the open‑source Crawl4AI web crawler produced by unclecode with a version earlier than 0.9.0 is affected by the streaming endpoint SSRF flaw. This includes releases 0.8.x and earlier. Version 0.9.0 introduces destination validation for both streaming and non‑streaming paths, mitigating the vulnerability.

Risk and Exploitability

The high CVSS score reflects serious potential impact: an attacker can obtain the contents of internal services, files, or databases reachable only within the host’s network. Exploitation requires no credentials and only a reachable POST request to a documented API endpoint, making it trivially usable by any external actor who can reach the server. The flaw remains theoretically exploitable today—though the low EPSS score suggests it has not yet been widely abused, and it is not listed in the CISA KEV catalog. The principal risk is the uncontrolled internal network exposure, which could enable attackers to pivot, exfiltrate data, or disrupt services. Organizations should treat this as a critical server‑side request forgery that must be mitigated promptly.

Generated by OpenCVE AI on July 26, 2026 at 20:07 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Crawl4AI to version 0.9.0 or newer, which includes SSRF validation for both streaming and non‑streaming endpoints.
  • If an upgrade is not immediately possible, protect the POST /crawl/stream (and POST /crawl when crawler_config.stream=true) endpoint with authentication or limit its exposure to trusted internal networks.
  • Enforce network segmentation or firewall rules that block the crawler process from reaching internal, private, or link‑local IP ranges, reducing the impact of any remaining SSRF capability.

Generated by OpenCVE AI on July 26, 2026 at 20:07 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 07 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 06 Jul 2026 23:45:00 +0000

Type Values Removed Values Added
First Time appeared Unclecode
Unclecode crawl4ai
Vendors & Products Unclecode
Unclecode crawl4ai

Mon, 06 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Description Crawl4AI is an open-source LLM-friendly web crawler and scraper. Prior to 0.9.0, the Docker API server applied its SSRF destination check on the non-streaming /crawl path but not on the streaming path. handle_stream_crawl_request passed seed URLs straight to the crawler with no destination validation, allowing a remote unauthenticated client to call POST /crawl/stream or POST /crawl with crawler_config.stream=true with a URL pointing at an internal, private, or link-local address; the server fetched it and streamed the response body back. This issue is fixed in version 0.9.0.
Title Crawl4AI unauthenticated SSRF in Docker streaming crawl endpoint
Weaknesses CWE-918
References
Metrics cvssV3_1

{'score': 8.6, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N'}


Subscriptions

Unclecode Crawl4ai
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-07T14:16:25.619Z

Reserved: 2026-06-24T18:49:56.207Z

Link: CVE-2026-57573

cve-icon Vulnrichment

Updated: 2026-07-07T14:16:21.863Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-26T20:15:04Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)