CVE-2026-120492 SSRF en Chainlit vía segmento de ruta con punto y coma en allowed_urls de MCP
Chainlit 2.12.0 contiene una vulnerabilidad de falsificación de petición del lado del servidor (SSRF) que permite a atacantes no autenticados eludir entradas allowed_urls de MCP con alcance de ruta porque validate_mcp_url no rechaza el carácter punto y coma. Un atacante puede enviar URLs de MCP con segmentos '..;' al endpoint /mcp, provocando peticiones a rutas fuera del permiso del operador en orígenes que eliminan parámetros de ruta con punto y coma.
CVSS 3.1
- CVSS 4.06.3 · media
- Probabilidad de explotación · EPSS del 09/110,2 % · percentil 12
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
Chainlit
2.12.0
Qué hacer
- Verificá si usás Chainlit y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 3.1 · 5.4 MEDIA
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N
- Vector de ataqueRed
- Complejidad del ataqueAlta
- Privilegios requeridosNinguno
- Interacción del usuarioNinguna
- AlcanceCambiado
- ConfidencialidadBaja
- IntegridadBaja
- DisponibilidadNinguna
CVSS 4.0 · 6.3 MEDIA
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
- Vector de ataqueRed
- Complejidad del ataqueBaja
- Requisitos del ataquePresentes
- Privilegios requeridosNinguno
- Interacción del usuarioNinguna
- Confidencialidad (sistema vulnerable)Ninguna
- Integridad (sistema vulnerable)Ninguna
- Disponibilidad (sistema vulnerable)Ninguna
- Confidencialidad (sistemas posteriores)Baja
- Integridad (sistemas posteriores)Baja
- Disponibilidad (sistemas posteriores)Ninguna
Descripción original
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.
Referencias (4)
- github.com/Chainlit/chainlit/security/advisories/GHSA-hvfh-5mj3-5f3j
- github.com/Chainlit/chainlit/blob/2.12.0/backend/chainlit/mcp.py#L90-L177
- github.com/Chainlit/chainlit/blob/2.12.0/backend/chainlit/mcp.py#L199-L208
- www.vulncheck.com/advisories/chainlit-2.12.0-ssrf-via-semicolon-path-segment-in-mcp-allow…
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.