Description
Chainlit versions prior to 2.9.4 contain an arbitrary file read vulnerability in the /project/element update flow. An authenticated client can send a custom Element with a user-controlled path value, causing the server to copy the referenced file into the attacker’s session. The resulting element identifier (chainlitKey) can then be used to retrieve the file contents via /project/file/<chainlitKey>, allowing disclosure of any file readable by the Chainlit service.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Chainlit | Chainlit | < 2.9.4 | 2.9.4 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | chainlit | < 2.9.4 | 2.9.4 | PYSEC-2026-598 |
References
- Chainlit 2.9.4 Release Notes release-notes patch
- https://www.zafran.io/resources/chainleak-critical-ai-framework-vulnerabilities-expose-data-enable-cloud-takeover technical-description exploit
- https://www.vulncheck.com/advisories/chainlit-arbitrary-file-read-via-project-element third-party-advisory