Descripción general

LiteLLM es un servidor proxy, también conocido como AI Gateway, diseñado para invocar APIs de LLM en formato OpenAI o nativo. En versiones anteriores a la 1.83.0, se ha identificado una vulnerabilidad crítica de control de acceso en el endpoint /config/update que permite a cualquier usuario autenticado en la plataforma realizar acciones reservadas exclusivamente a administradores.

Naturaleza de la vulnerabilidad

El endpoint /config/update no aplica verificación del rol de administrador antes de procesar las solicitudes. Esto significa que cualquier usuario que haya completado el proceso de autenticación estándar puede interactuar con dicho endpoint y modificar la configuración interna del proxy, incluyendo variables de entorno del servidor.

Esta ausencia de control de autorización basado en roles constituye una falla de diseño de seguridad grave, ya que rompe el principio de mínimo privilegio y expone superficies de ataque de alto impacto a actores no autorizados dentro del sistema.

Vector de ataque y mecanismo de explotación

Un usuario autenticado con privilegios estándar puede aprovechar esta vulnerabilidad de las siguientes formas:

Ejecución remota de código (RCE): El atacante puede registrar manejadores de endpoints de paso a través (pass-through) personalizados que apunten a código Python bajo su control. Al invocar dichos endpoints, el servidor ejecuta el código arbitrario del atacante en el contexto del proceso del proxy.

Lectura arbitraria de archivos del servidor: Mediante la modificación de la variable de entorno UI_LOGO_PATH, el atacante puede apuntar a cualquier archivo del sistema de archivos del servidor. Posteriormente, realizando una solicitud al endpoint /get_image, puede recuperar el contenido de dicho archivo, exponiendo información sensible como credenciales, claves privadas o configuraciones internas.

Toma de control de cuentas privilegiadas: El atacante puede sobrescribir las variables de entorno UI_USERNAME y UI_PASSWORD, reemplazando las credenciales de acceso a la interfaz de usuario por valores bajo su control. Esto le permite acceder a la plataforma con privilegios de administrador y desplazar a los usuarios legítimos.

Impacto

El impacto combinado de estas capacidades de explotación es extremadamente severo. Un actor malicioso con acceso autenticado básico puede comprometer completamente la confidencialidad, integridad y disponibilidad del sistema:

  • Confidencialidad: lectura de archivos arbitrarios del servidor, incluyendo secretos y configuraciones sensibles.
  • Integridad: modificación de la configuración del proxy y registro de handlers maliciosos.
  • Disponibilidad: posibilidad de interrumpir el servicio o alterar su comportamiento mediante configuración arbitraria.
  • Control total: toma de control de cuentas administrativas mediante sobreescritura de credenciales.

Versiones afectadas

Todas las versiones de LiteLLM anteriores a la 1.83.0 están afectadas por esta vulnerabilidad.

Solución

El problema ha sido corregido en la versión 1.83.0 de LiteLLM. Se recomienda actualizar de forma inmediata a esta versión o a cualquier versión posterior que incorpore la corrección. Los equipos que operen instancias de LiteLLM en entornos productivos deben priorizar esta actualización dado el potencial de explotación por parte de usuarios internos autenticados con intenciones maliciosas.