Vulnerabilidad en LiteLLM permite ejecución remota de código no autenticada

Publicado el

Introducción

La CISA (Agencia de Ciberseguridad e Infraestructura de EE. UU.) ha incluido una grave vulnerabilidad en el paquete LiteLLM en su catálogo de Vulnerabilidades Conocidas (KEV). La vulnerabilidad, identificada como CVE-2026-42271, presenta un CVSS de 8.7 y se trata de una vulnerabilidad de inyección de comandos que podría permitir a un usuario autenticado ejecutar comandos arbitrarios en el sistema afectado.

Detalles de la vulnerabilidad

LiteLLM, un paquete de Python utilizado en inteligencia artificial, se ve afectado en las versiones >= 1.74.2 y < 1.83.7. Según la descripción proporcionada por BerriAI, dos endpoints para previsualizar un servidor MCP antes de su guardado aceptaban configuraciones completas del servidor en el cuerpo de la solicitud, incluyendo comandos, argumentos y campos de entorno. Esto permitió que, al ser llamados con una configuración de stdio, los endpoints intentaran conectarse y ejecutaran el comando proporcionado como un subproceso en el host proxy con los privilegios del proceso proxy.

Los mantenedores de LiteLLM han señalado que estos endpoints estaban asegurados únicamente mediante una clave de API proxy válida, lo que permitió que cualquier usuario autenticado, incluidos aquellos con claves internas privilegiadas, pudiera ejecutar comandos arbitrarios en sistemas vulnerables. Con la actualización a la versión 1.83.7, ambos endpoints ahora requieren el rol PROXY_ADMIN, alineándose con las medidas de seguridad del endpoint de guardado.

Cadena de vulnerabilidades

La semana pasada, Horizon3.ai informó que CVE-2026-42271 se ha combinado con otra vulnerabilidad, CVE-2026-48710 (CVSS 6.5), que se trata de un bypass de validación de cabecera de host en Starlette, un marco de trabajo ligero para ASGI. Esta combinación permite eludir completamente la autenticación y lograr la ejecución remota de código en las implementaciones vulnerables de LiteLLM.

Horizon3.ai indicó que CVE-2026-48710 puede ser utilizado para eludir el mecanismo de autenticación en implementaciones de LiteLLM que dependan de versiones de Starlette ≤ 1.0.0. Esto transforma la vulnerabilidad en una ejecución remota de código no autenticada, sin necesidad de credenciales.

La explotación exitosa de esta cadena de vulnerabilidades podría permitir a los atacantes ejecutar comandos arbitrarios en el host de LiteLLM, acceder a credenciales del proveedor del modelo, extraer claves API y secretos almacenados por el proxy, y comprometer sistemas conectados a la infraestructura de inteligencia artificial.

Recomendaciones

Horizon3.ai ha calificado esta cadena de vulnerabilidades con un CVSS combinado de 10.0, considerándola crítica. Actualmente, no se dispone de información sobre la naturaleza de los ataques, la identidad de los actores de amenazas o el alcance de estas actividades. No se ha confirmado si los ataques observados están utilizando esta cadena de explotación.

Se recomienda a los usuarios actualizar LiteLLM a la versión 1.83.7 o posterior y Starlette a la versión 1.0.1 o posterior. Si la aplicación inmediata de parches no es posible, se sugieren las siguientes mitigaciones: - Bloquear POST /mcp-rest/test/connection y POST /mcp-rest/test/tools/list en el proxy inverso o en la puerta de enlace API. - Restringir el acceso a la red a segmentos de confianza. - Rotar las credenciales almacenadas por el proxy. - Revisar los registros en busca de actividad inusual en la cabecera de Host y eventos de ejecución de subprocesos.

Esta situación ocurre poco más de un mes después de que una grave vulnerabilidad de inyección SQL en LiteLLM (CVE-2026-42208, CVSS 9.3) fuera objeto de explotación activa a las 36 horas de hacerse pública.

Fuente

Ver noticia original