Leaked LiteLLM Master Key Let Attackers Steal GitHub Tokens and Hijack Release Pipeline
LiteLLM reveló que una clave maestra de la plataforma de agentes fue publicada por accidente en un repositorio público, lo que eventualmente permitió a un atacante comprometer un paquete de Python popular. A pesar de que el error inicial fue detectado y el archivo modificado, la clave maestra no fue revocada adecuadamente. Meses más tarde, dicha clave fue utilizada para ingresar a la plataforma y extraer un token OAuth de la interfaz de línea de comandos de GitHub que poseía privilegios amplios a nivel de organización.
Con este acceso de nivel de propietario, el actor malicioso logró ejecutar diversas acciones que incluyeron la obtención de tokens adicionales pertenecientes a ingenieros mediante commits en ramas temporales. Posteriormente, el atacante logró alterar el proceso de publicación para distribuir una versión maliciosa del software en diferentes repositorios y registros públicos, la cual fue detectada y puesta en cuarentena poco después por investigadores y plataformas afectadas.
El análisis detallado de la firma de seguridad Socket reveló el uso de confirmaciones ocultas en ramas efímeras que ejecutaban flujos de trabajo diseñados para recolectar una gran cantidad de credenciales, claves de API, estados de sesión de navegador e información de bases de datos internas. Estos datos recopilados fueron exfiltrados a través de puntos de enlace externos, lo que demostró que el alcance del acceso obtenido por el atacante era sumamente amplio.
Por último, diversas investigaciones detallaron que la versión maliciosa del paquete incluía archivos configurados para ejecutarse automáticamente al iniciar Python, incluso si la aplicación no importaba el paquete directamente. Este componente incluía un módulo para robar credenciales en diversas herramientas y entornos, además de una puerta trasera orientada a sistemas Unix encargada de descargar y ejecutar código arbitrario de manera periódica.