Skip to main content

Crawl4AI CVE-2026-109237

| EUVDEUVD-2026-97681 HIGH
Deserialization of Untrusted Data (CWE-502)
2026-10-12 VulnCheck GHSA-r6v9-2q53-jfjp
8.6
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as non-admin API client
  2. Delivery
    Wrap forbidden LLMConfig in dict wrapper
  3. Exploit
    POST laundered config to /config/dump
  4. Execution
    Leak SECRET_KEY and provider keys
  5. Impact
    Forge admin JWT for full control

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V1 - Encoding and Sanitization Safe deserialization, type allowlists
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a running Crawl4AI server (0.9.0-0.9.3) in API/server mode with the /config/dump endpoint reachable, and the attacker must already possess a valid non-admin API client credential (PR:L). The specific prerequisite is the ability to submit config objects through the API: the untrusted-config gate can be bypassed by wrapping a forbidden LLMConfig inside a dict-type wrapper, with api_token set to an environment reference. Limiting factors: exploitation is NOT possible unauthenticated - a provisioned non-admin token is required - and depends on the deployment exposing the configuration endpoint; pure library/embedded usage without the hosted API server is not affected. Impact is maximized where SECRET_KEY and provider keys are present in the server environment, enabling admin JWT forgery.

Impact

This is a credible high-priority issue for anyone running Crawl4AI's server/API mode, though the signals are mixed. The input CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H) indicates low-complexity network exploitation requiring only low privileges (a non-admin API client), with high confidentiality and integrity impact - consistent with the description's account of secret leakage leading to admin JWT forgery. The dangerous element is the clear privilege-escalation chain: low-privileged access converts into full administrative control, which is worse than the raw 8.6 score suggests in isolation. However, exploitation is NOT unauthenticated: PR:L confirms the attacker must already hold a valid non-admin API credential, which bounds the exposure to environments that provision such accounts. No EPSS score, KEV listing, SSVC decision data, or POC availability was provided in the input, so exploitation likelihood cannot be quantified from these sources - the assessment rests on the CVSS vector and the detailed, mechanism-specific description from VulnCheck/GHSA. There is no conflict between the CVSS vector and the description; both agree on authenticated remote access with high C/I impact. Treat as a genuine priority for exposed Crawl4AI API deployments, but note that absent EPSS/KEV data, widespread opportunistic exploitation cannot be confirmed.

Exploit ScenarioDerived

An attacker holding a low-privilege (non-admin) Crawl4AI API token submits a configuration object with a forbidden LLMConfig laundered inside a dict-type wrapper, bypassing the untrusted-config gate. By setting api_token to an environment reference and posting it to /config/dump, the attacker reads SECRET_KEY and provider keys, then forges an admin JWT to gain full administrative control. No public exploit code was identified in the provided data, but the description details the exact bypass mechanism.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 12, 2026

Configuration-gate bypass in Crawl4AI 0.9.0 through 0.9.3 lets an authenticated but non-admin API client submit a laundered LLMConfig object through the server's configuration endpoint and read back environment-resolved secrets, including SECRET_KEY and provider API keys, which can then be used to forge admin JWTs. Exploitation requires Crawl4AI to be running in server/API mode with the /config/dump endpoint reachable and the attacker to already hold a provisioned non-admin API token (CVSS 4.0 base 8.6, vector PR:L), so pure library or embedded deployments are not affected; impact is highest where SECRET_KEY and provider keys are present in the server environment. Independent assessment flags this as a credible high-priority issue for hosted Crawl4AI deployments, with no public exploit identified at time of analysis and no CISA KEV listing.

RemediationAI

Upgrade to Crawl4AI 0.9.4 or later, which is the first release outside the 0.9.0-before-0.9.4 affected range and is the fix identified by the vendor advisory GHSA-5w5p-vcv6-mm3f; after upgrading, rotate every secret that a leaked configuration dump could have exposed, including SECRET_KEY (which invalidates existing signed JWTs and forces re-authentication of all clients, including administrators) and all LLM/provider API keys placed in the server environment. Where an immediate upgrade is not possible, restrict the configuration surface: block or filter access to the /config/dump endpoint at the reverse proxy or gateway and allow it only from trusted administrative networks or loopback, accepting that this breaks legitimate client-side config inspection tooling; do not issue non-admin API tokens to untrusted or low-trust clients, since the bypass requires an already-provisioned credential; and run the server with a least-privilege environment in which SECRET_KEY and provider keys are provided only to processes that genuinely need them (for example via a dedicated secret store scoped to the admin service), understanding that this reduces but does not eliminate the JWT-forgery impact because SECRET_KEY remains present in the main server process. Detection should focus on /config/dump requests carrying nested or wrapper-wrapped configuration objects with environment-reference tokens, since such requests are anomalous for normal clients.

Affected VersionsENISA

Crawl4AI 0.9.0 <0.9.4

Affected Packages

euvd crawl4ai fix: 0.9.4

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause maps to CWE-502 (Deserialization of Untrusted Data) in the sense that Crawl4AI's fetch/LLM configuration pipeline accepts structured objects supplied by API clients and materializes them into internal class instances that are expected to be gated by an 'untrusted config' check. In versions 0.9.0 to 0.9.3 that gate can be evaded by wrapping a forbidden object, specifically an LLMConfig, inside a dict-type wrapper so that the type inspection performed by the gate sees an innocuous mapping rather than the restricted class. Because LLMConfig supports an api_token field whose value can be an environment-variable reference, a wrapped and laundered config survives validation, then resolves the referenced variable on the server side when the configuration is dumped back to the caller via /config/dump. That resolution path discloses SECRET_KEY and provider API keys held in the server environment, and because SECRET_KEY underpins Crawl4AI's JWT signing, disclosure of it enables the attacker to mint a token with admin claims. Affected artifact per the CPE is cpe:2.3:a:unclecode:crawl4ai:*:*:*:*:*:*:*:* covering the 0.9.x line prior to 0.9.4; the underlying technology stack is the Python-based Crawl4AI crawling framework running in its hosted API/server mode, where request-supplied configuration objects cross a trust boundary that the untrusted-config gate is supposed to enforce.

Know when Crawl4ai gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 8.1 HIGH

Authenticated non-admin API access gives PR:L with low-complexity network exploitation; secret leakage yields C:H and admin JWT forgery yields I:H, with no availability impact (A:N).

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 12, 2026 - 18:03 EUVD
CVE Published
Oct 12, 2026 - 16:04 cve.org
HIGH 8.6

DescriptionCVE.org

Crawl4AI from 0.9.0 before 0.9.4 contains an untrusted-config gate bypass that allows non-admin API clients to construct forbidden config objects by wrapping them in dict-type wrappers. Attackers can send a laundered LLMConfig with api_token set to an env reference via /config/dump to read SECRET_KEY and provider keys, enabling admin JWT forgery.

Executive ViewAI

Why It Matters

Crawl4AI versions 0.9.0 through 0.9.3 running in server/API mode are vulnerable to a high-severity configuration bypass (CVE-2026-109237) that enables an authenticated non-admin API client to extract environment secrets and forge administrative tokens. This could lead to unauthorized administrative access and compromise of sensitive data and systems. Although no public exploit has been identified, organizations with exposed Crawl4AI API deployments should act promptly to mitigate risk, as no vendor patch is currently available.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations include restricting access to the /config/dump endpoint, rotating SECRET_KEY and provider API keys, auditing and minimizing non-admin API tokens, disabling server/API mode if not required, and monitoring for unusual config dump requests.

Threat Intelligence Overview

EPSS Score
0.3%
Top 76% exploitable
Prevalence
Medium
popular open-source AI crawler library, niche as exposed production API server
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

43
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Insecure deserialization occurs when an application converts serialized data (a stream of bytes representing an object's state) back into a living object without proper validation.

CVE-2026-26216 CRITICAL POC
10.0 Feb 12

Remote code execution in Crawl4AI Docker API before 0.8.0 via hooks parameter. The /crawl endpoint accepts Python code i

CVE-2026-56265 CRITICAL POC
9.3 Jun 21

Authentication bypass in Crawl4AI Docker API server (versions prior to 0.8.7) allows remote unauthenticated attackers to

CVE-2026-26217 CRITICAL POC
9.2 Feb 12

Arbitrary local file disclosure in Crawl4AI's Docker API (versions before 0.8.0) lets unauthenticated remote attackers r

CVE-2026-57572 CRITICAL
10.0 Jul 06

Remote code execution in Crawl4AI's Docker API server (versions prior to 0.9.0) lets unauthenticated attackers run arbit

CVE-2026-57571 CRITICAL
9.6 Jul 06

Arbitrary file write in Crawl4AI (the open-source LLM-friendly web crawler by unclecode) before version 0.9.0 lets a mal

CVE-2026-56258 CRITICAL
9.2 Jun 23

Arbitrary file write in Crawl4AI Docker API server before 0.8.8 lets unauthenticated remote attackers escape the ALLOWED

CVE-2026-56264 CRITICAL
9.2 Jun 30

Arbitrary JavaScript execution in Crawl4AI's Docker API server (versions before 0.8.7) lets remote attackers submit code

CVE-2026-56261 CRITICAL
9.2 Jul 10

Server-side request forgery in Crawl4AI's Docker API server (versions before 0.8.7) allows remote unauthenticated attack

CVE-2026-109238 CRITICAL
9.2 Oct 12

Server-side request forgery in Crawl4AI (unclecode) versions 0.7.0 through 0.9.3 lets unauthenticated, remote API client

CVE-2026-56266 CRITICAL
9.2 Jun 22

Server-side request forgery in Crawl4AI before 0.8.7 allows unauthenticated remote attackers to coerce the server into f

CVE-2025-28197 CRITICAL
9.1 Apr 18

Crawl4AI <=0.4.247 is vulnerable to SSRF in /crawl4ai/async_dispatcher.py. Rated critical severity (CVSS 9.1), this vuln

CVE-2026-56260 HIGH
8.8 Jul 12

Arbitrary file write in Crawl4AI's Docker API server (versions before 0.8.7) lets remote unauthenticated attackers overw

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy