ZeroHour

CVE-2026-86099

niche

Unauthenticated Path Traversal Directory Deletion in Chainlit ≤ 2.12.0

CVSS 4.0
8.8 high
EPSS
<1%p33
Published
()
Modified
AI analysis

Chainlit through version 2.12.0 fails to validate the client-supplied socket.io sessionId parameter, allowing unauthenticated attackers to inject absolute paths or relative path sequences such as '../' into network requests. Because this unsanitized value drives filesystem operations without being confined to the upload directory, a crafted sessionId lets the attacker traverse outside the intended path. The impact is a recursive deletion of arbitrary directories accessible to the service process, producing data loss and downtime — reflected in the CVSS 4.0 vector's high availability impact, low integrity impact, and no confidentiality impact. Any deployment of Chainlit up to and including 2.12.0 whose socket.io interface is reachable by untrusted clients is affected. As of this analysis there is no known public proof-of-concept, no CISA KEV listing, and no confirmed in-the-wild exploitation.

What to do: Upgrade Chainlit to the latest patched release beyond 2.12.0 as soon as one is published, and check your current version (e.g., via pip show chainlit). Until patched, mitigate by validating or constraining the socket.io sessionId parameter at an ingress proxy and running the Chainlit service under an account with minimal filesystem write permissions so deletions cannot reach critical directories. Also verify that no unexpected directory deletions have already occurred and limit unauthenticated internet exposure of Chainlit instances.

Affected
Chainlit (open-source chat/LLM application framework)all versions through and including 2.12.0
Estimated exposure
nichelikely hundreds to low thousands of self-hosted instances (no public install counts available) — Chainlit is a developer-oriented open-source framework typically deployed as internal or application-embedded chat UIs rather than mass-market products, so plausibly affected installations are limited to the deployed base of teams building…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Chainlit through 2.12.0 fails to validate the client-supplied socket.io sessionId parameter, allowing unauthenticated attackers to traverse filesystem paths by injecting absolute or relative path sequences. Attackers can craft malicious sessionId values that escape the upload directory and recursively delete arbitrary directories accessible to the service process.

Weakness
CWE-22
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.