Verificador de exposición a LiteLLM / TeamPCP
Un script de Python local de un solo archivo que comprueba si un host muestra indicadores del ataque de marzo de 2026 a la cadena de suministro de LiteLLM (versiones 1.82.7 y 1.82.8).
Abrir la herramienta →La herramienta interactiva se abre en inglés.
En marzo de 2026, las versiones con puerta trasera 1.82.7 y 1.82.8 de LiteLLM estuvieron en PyPI unos 40 minutos, tiempo suficiente para comprometer miles de pipelines de CI/CD. Esta herramienta es un único archivo de Python que comprueba si un host muestra los indicadores conocidos: la versión de litellm instalada, los lockfiles y archivos de requisitos que fijan una versión mala, el archivo litellm_init.pth que deja la wheel con puerta trasera, la unidad de persistencia sysmon.service en Linux, los pods node-setup-* en kube-system y las entradas estáticas de /etc/hosts que apuntan a los dominios de C2 conocidos. Es de solo lectura (nunca modifica, borra ni «limpia» nada) y 100 % local: cero llamadas de red, sin telemetría y sin consultas DNS en directo, a propósito, porque un script de comprobación de seguridad que llama a un servidor es un script en el que no deberías confiar. Lee el código antes de ejecutarlo. Es un análisis de mejor esfuerzo, no un veredicto: un resultado limpio solo significa que no se ven los indicadores conocidos desde ese host. Es una herramienta Pro: con una cuenta gratuita tienes 3 usos y después necesitas Pro.
- Descarga el script de Python de un solo archivo y lee el código antes de ejecutarlo.
- Ejecútalo en el host y, opcionalmente, apúntalo a un directorio para revisar lockfiles y archivos de requisitos.
- Revisa los hallazgos: versión instalada, lockfiles, litellm_init.pth, sysmon.service, pods node-setup-* y entradas de /etc/hosts.
- Si sabes que ejecutaste la 1.82.7 o la 1.82.8 en marzo de 2026, rota las credenciales informe lo que informe el script.
Preguntas frecuentes
¿Qué comprueba el script?
Seis cosas: la versión de litellm instalada (mediante importlib.metadata, con pip show como alternativa), marcando la 1.82.7 o la 1.82.8; los archivos requirements.txt, poetry.lock, Pipfile.lock, uv.lock y pyproject.toml de un directorio que le indiques que fijen una versión mala; el archivo litellm_init.pth en site-packages, que es el que deja al instalarse la wheel con puerta trasera; una unidad sysmon.service registrada, el mecanismo de persistencia descrito, en hosts Linux; si kubectl está disponible, pods node-setup-* en kube-system que coincidan con el patrón de movimiento lateral descrito; y entradas estáticas en /etc/hosts que apunten a los dominios de C2 conocidos.
¿Modifica algo o se conecta a internet?
No. Es de solo lectura: nunca modifica, borra ni «limpia» nada de tu sistema. Y es 100 % local: cero llamadas de red, sin telemetría, sin llamadas a casa y sin consultas DNS en directo. Es deliberado: un script de comprobación de seguridad que llama a un servidor es un script en el que no deberías confiar. Léelo antes de ejecutarlo.
¿Un resultado limpio significa que estoy a salvo?
No. Es un análisis de mejor esfuerzo, no un veredicto. Un resultado limpio significa que no se ve ninguno de los indicadores conocidos desde este host; no demuestra que tus secretos nunca se exfiltraran. Si sabes que ejecutaste la 1.82.7 o la 1.82.8 en marzo de 2026, rota las credenciales informe lo que informe el script.
¿Qué pasó con LiteLLM?
En marzo de 2026, las versiones con puerta trasera 1.82.7 y 1.82.8 de LiteLLM estuvieron en PyPI unos 40 minutos, tiempo suficiente para comprometer miles de pipelines de CI/CD. El artículo completo explica cómo funcionó el ataque y qué hacer si encuentras algo.
¿Es gratis?
No, es una herramienta Pro. Con una cuenta gratuita tienes 3 usos de prueba; después necesitas Pro.