CVE-2026-56266

Crawl4AI Docker API Multiple Critical Vulnerabilities (File Write, SSRF, Auth Bypass, XSS, JS Execution)

Detects exploitation of CVE-2026-56266 affecting Crawl4AI <= 0.8.6 Docker API. The vulnerability bundle includes unauthenticated access (CWE-306), path traversal file write (CWE-22), server-side request forgery (CWE-918), stored/reflected XSS (CWE-79), JavaScript injection/execution (CWE-94), and hardcoded credentials (CWE-798). A public PoC is available. Successful exploitation allows full container compromise, internal network pivoting, and arbitrary file write to the host.

Vulnerability Intelligence

Public PoC

Affected Software

Vendor
pip
Product
crawl4ai
Versions
<= 0.8.6

Timeline

Disclosed
June 16, 2026

CVSS

9.8
Critical (9.0–10)
Read the write-up →

What is CVE-2026-56266 Crawl4AI Docker API Multiple Critical Vulnerabilities (File Write, SSRF, Auth Bypass, XSS, JS Execution)?

Crawl4AI Docker API Multiple Critical Vulnerabilities (File Write, SSRF, Auth Bypass, XSS, JS Execution) (CVE-2026-56266) maps to the Initial Access and Execution and Credential Access and Discovery and Lateral Movement and Collection tactics — the adversary is trying to get into your network in MITRE ATT&CK.

This page provides production-ready detection logic for Crawl4AI Docker API Multiple Critical Vulnerabilities (File Write, SSRF, Auth Bypass, XSS, JS Execution), covering the data sources and telemetry it touches: CommonSecurityLog, AzureDiagnostics, W3CIISLog. The queries below are rated critical severity at high confidence, and ship for 7 SIEM platforms — KQL, SPL, Elastic, QRadar, Sumo, YARA-L, LogScale.

MITRE ATT&CK

Tactic
Initial Access Execution Credential Access Discovery Lateral Movement Collection
Microsoft Sentinel / Defender
kusto
let crawl4ai_ports = dynamic([11235, 8080, 8000]);
let ssrf_patterns = dynamic(['/crawl', '/screenshot', '/execute_js', '/extract']);
let traversal_patterns = dynamic(['../', '%2e%2e', '%252e%252e', '..%2f', '..%5c']);
union isfuzzy=true
(
    CommonSecurityLog
    | where TimeGenerated >= ago(24h)
    | where DeviceProduct has_any ('nginx', 'apache', 'haproxy') or ApplicationProtocol == 'HTTP'
    | where DestinationPort in (crawl4ai_ports)
    | where RequestURL has_any (ssrf_patterns)
    | extend ThreatIndicator = case(
        RequestURL has_any (traversal_patterns), 'PathTraversal',
        RequestURL contains 'file://', 'SSRF-FileScheme',
        RequestURL contains '169.254.169.254', 'SSRF-MetadataService',
        RequestURL contains '127.0.0.1', 'SSRF-Loopback',
        RequestURL contains '10.', 'SSRF-PrivateRange',
        RequestURL contains '192.168.', 'SSRF-PrivateRange',
        RequestURL contains 'execute_js', 'JSInjection',
        'SuspiciousRequest'
    )
    | project TimeGenerated, SourceIP, DestinationIP, DestinationPort, RequestURL, ThreatIndicator, RequestMethod
),
(
    AzureDiagnostics
    | where TimeGenerated >= ago(24h)
    | where ResourceType == 'APPLICATIONGATEWAYS'
    | where requestUri_s has_any (ssrf_patterns)
    | where requestUri_s has_any (traversal_patterns) or httpStatus_d in (200, 201) and requestUri_s has_any (ssrf_patterns)
    | extend ThreatIndicator = 'AppGW-Crawl4AI-Exploit'
    | project TimeGenerated, clientIP_s, requestUri_s, httpStatus_d, ThreatIndicator
)
| summarize EventCount = count(), FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated), UniqueURLs = dcount(RequestURL) by SourceIP, ThreatIndicator
| where EventCount >= 2
| extend RiskScore = case(ThreatIndicator in ('SSRF-MetadataService', 'SSRF-FileScheme', 'PathTraversal'), 95, ThreatIndicator == 'JSInjection', 85, 70)
| sort by RiskScore desc

Detects HTTP requests to Crawl4AI Docker API endpoints exhibiting path traversal, SSRF, or JS injection patterns on common Crawl4AI ports. Correlates multiple indicators to reduce noise.

critical severity high confidence

Data Sources

CommonSecurityLog AzureDiagnostics W3CIISLog

Required Tables

CommonSecurityLog AzureDiagnostics

False Positives

  • Legitimate web crawling services hitting internal Crawl4AI deployments with unusual URL patterns
  • Security scanners (Burp Suite, OWASP ZAP) running authorized assessments against Crawl4AI
  • Development/testing environments where developers test path-based features
  • Automated integration tests that exercise all Crawl4AI API endpoints including JS execution

Sigma rule & cross-platform mapping

The detection logic for Crawl4AI Docker API Multiple Critical Vulnerabilities (File Write, SSRF, Auth Bypass, XSS, JS Execution) (CVE-2026-56266) above is provided in a vendor-neutral form so you can deploy it on any SIEM. The same logic is shipped here as native KQL (Microsoft Sentinel / Defender), SPL (Splunk), Elastic (Elastic Security (EQL)), QRadar (IBM QRadar (AQL)), Sumo (Sumo Logic CSE), YARA-L (Google Chronicle / SecOps), LogScale (CrowdStrike LogScale (CQL)) queries. In Sigma terms, this detection targets the following logsource:

logsource:
  product: azure

Browse the community-maintained Sigma rules for this technique:


Testing Methodology

Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1Crawl4AI Unauthenticated API Access Test

    Expected signal: HTTP POST to port 11235 /crawl endpoint with 200 response and no Authorization header in request logs

  2. Test 2Crawl4AI SSRF via Cloud Metadata Endpoint

    Expected signal: Outbound HTTP connection from Crawl4AI container to 169.254.169.254:80; logged in container network flow data and potentially in WAF/proxy logs

  3. Test 3Crawl4AI Path Traversal File Read via Screenshot Endpoint

    Expected signal: HTTP POST to /screenshot or /crawl with file:// URL scheme in request body; response may contain file contents if vulnerable

  4. Test 4Crawl4AI JavaScript Code Injection via execute_js Endpoint

    Expected signal: HTTP POST to /execute_js with js_code parameter containing JavaScript; Crawl4AI process spawning Playwright browser subprocess

Unlock Pro Content

Get the full detection package for CVE-2026-56266 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections