# CVE-2026-86099: Chainlit path traversal and directory deletion via sessionId

Source: https://junglewise.ai/threats/cve-2026-86099-chainlit-path-traversal-and-directory-deletion-via-sessionid  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-09. Updated: 2026-09-26  
License: CC BY 4.0 with a link back

CVE-2026-86099 · Severity: high · CVSS 8.2 · Published 2026-09-09

Chainlit is a framework for building conversational AI applications. An unauthenticated attacker can exploit improper validation of the socket.io sessionId parameter to manipulate file paths and delete arbitrary directories on the server, potentially causing service disruption or data loss.

Technologies: [Chainlit](https://junglewise.ai/threats/technologies/chainlit). Vendors: [Chainlit](https://junglewise.ai/threats/vendors/chainlit).

## Quick answers

**Is CVE-2026-86099 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-86099 being exploited in the wild.

**How severe is CVE-2026-86099?** High severity, with a CVSS score of 8.2, published 9 September 2026.

**Which products and versions are affected?** Chainlit through 2.12.0.

**Is there a fix for CVE-2026-86099?** No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.

**How is CVE-2026-86099 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-86099?** Check whether you run Chainlit 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.

## Technical details

The vulnerability is a path traversal flaw in Chainlit's socket.io session handling. The application fails to properly validate or sanitize the client-supplied sessionId parameter, allowing attackers to inject absolute or relative path sequences (e.g., "../" or "/etc/"). An unauthenticated attacker can craft malicious sessionId values that escape the intended upload directory and recursively delete arbitrary directories accessible to the service process. No authentication is required; the attack is network-accessible via the socket.io interface.

## Affected products

- Chainlit Chainlit through 2.12.0

## Timeline

- 2026-09-09: disclosed

## References

- [https://pypi.org/project/chainlit/](https://pypi.org/project/chainlit/)
- [https://github.com/Chainlit/chainlit](https://github.com/Chainlit/chainlit)

## Related threats

- [Chainlit MCP path validation bypass via semicolon](https://junglewise.ai/threats/cve-2026-120492-chainlit-2-12-0-contains-a-server-side-request-forgery)
- [Chainlit authorization bypass in feedback endpoints](https://junglewise.ai/threats/cve-2026-82290-chainlit-authorization-bypass-in-feedback-endpoints)
- [Chainlit server-side request forgery via MCP transports](https://junglewise.ai/threats/cve-2026-45019-chainlit-server-side-request-forgery-via-mcp-transports)
- [Chainlit command injection in MCP stdio transport](https://junglewise.ai/threats/cve-2026-45018-chainlit-command-injection-in-mcp-stdio-transport)
- [Chainlit session hijacking in WebSocket session restoration](https://junglewise.ai/threats/cve-2026-56104-chainlit-session-hijacking-in-websocket-session-restoration)
