CVE-2026-45019: Chainlist has SSRF via MCP SSE and streamable-http transports that allows unauthenticated internal network access
When MCP is enabled (features.mcp.enabled = true), the POST /mcp endpoint for sse and streamable-http transports accepts a user-controlled url and optional headers dictionary without any validation. An unauthenticated attacker can force the Chainlit server to make outbound HTTP requests to arbitrary URLs — including internal network services and cloud metadata endpoints — with attacker-controlled HTTP headers such as Authorization and Cookie.
References
- github.com/Chainlit/chainlit/blob/2.12.0/docs/security-advisory-2026-mcp.md
- github.com/Chainlit/chainlit/commit/0565fd0eccb915fce159929598b053ed79f6e0c9
- github.com/Chainlit/chainlit/releases/tag/2.12.0
- github.com/Chainlit/chainlit/security/advisories/GHSA-hvfh-5mj3-5f3j
- github.com/advisories/GHSA-hvfh-5mj3-5f3j
- nvd.nist.gov/vuln/detail/CVE-2026-45019
Code Behaviors & Features
Detect and mitigate CVE-2026-45019 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →