Vulnerability · Published Nov 2, 2026 · Assigned by VulnCheck
CVE-2026-120492Chainlit 2.12.0 SSRF via Semicolon Path Segment in MCP allowed_urls
Medium 5.4
In plain English
A medium-severity server-side request forgery in Chainlit from Chainlit. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 13% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Chainlit 2.12.0 contains a server-side request forgery vulnerability that allows unauthenticated attackers to bypass path-scoped MCP allowed_urls entries because validate_mcp_url does not reject the semicolon character. Attackers can submit MCP URLs with '..;' segments to the /mcp endpoint, causing requests to paths outside the operator's grant on origins that strip semicolon path parameters.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | chainlit | 2.12.0 | GHSA-hvfh-5mj3-5f3j |
| PyPI | chainlit | 2.12.0 | PYSEC-2026-3811 |
Affected products (as reported)
Weakness: CWE-918 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N
References
- GitHub Security Advisory (GHSA-hvfh-5mj3-5f3j) vendor-advisory
- https://github.com/Chainlit/chainlit/blob/2.12.0/backend/chainlit/mcp.py#L90-L177 technical-description
- https://github.com/Chainlit/chainlit/blob/2.12.0/backend/chainlit/mcp.py#L199-L208 technical-description
- VulnCheck Advisory: Chainlit 2.12.0 SSRF via Semicolon Path Segment in MCP allowed_urls third-party-advisory