Descripción de la vulnerabilidad
LiteLLM es un servidor proxy (AI Gateway) diseñado para invocar APIs de modelos de lenguaje grande (LLM) en formato OpenAI o nativo. En versiones anteriores a la 1.83.0, existe una vulnerabilidad de suplantación de identidad derivada de una implementación deficiente de la clave de caché en el flujo de autenticación JWT con OIDC.
Mecanismo técnico
Cuando la autenticación JWT está habilitada mediante la opción de configuración enable_jwt_auth: true, el sistema almacena en caché la información de usuario obtenida del endpoint OIDC userinfo. El problema reside en que la clave utilizada para indexar dicha caché se construye tomando únicamente los primeros 20 caracteres del token JWT (token[:20]).
Los encabezados JWT generados por el mismo algoritmo de firma producen secuencias iniciales idénticas o predecibles. Esto significa que dos tokens distintos, firmados con el mismo algoritmo, pueden compartir los mismos primeros 20 caracteres, provocando una colisión de clave de caché.
Vector de ataque
Un atacante no autenticado puede construir artesanalmente un token cuya subcadena inicial de 20 caracteres coincida con la de un token legítimo previamente cacheado. Cuando se produce un acierto de caché (cache hit), el sistema devuelve la identidad y los permisos del usuario legítimo al atacante, sin que este haya superado ningún proceso de autenticación real.
En la práctica, el atacante hereda la sesión del usuario legítimo, incluyendo sus roles y privilegios dentro del gateway, lo que puede derivar en acceso no autorizado a APIs de LLM, exfiltración de datos o abuso de recursos.
Alcance y condiciones de explotación
Esta opción de configuración no está habilitada por defecto. La mayoría de las instancias de LiteLLM no se ven afectadas. La vulnerabilidad impacta exclusivamente a los despliegues que tengan activa la autenticación JWT/OIDC mediante el parámetro enable_jwt_auth: true.
Solución
El problema fue corregido en la versión 1.83.0 de LiteLLM. Se recomienda actualizar a esta versión o superior de forma inmediata en todos los entornos que utilicen autenticación JWT/OIDC.
