Hades: el gusano que envenena tus configuraciones de IA
Hades es un gusano que roba credenciales y se autopropaga a través de paquetes de PyPI y npm. Lo que lo distingue: reescribe los archivos de configuración de los asistentes de IA para lograr persistencia - y planta inyecciones de prompt para engañar a las propias herramientas de IA que la gente usa para analizarlo.
Cómo se propaga Hades
Hades forma parte de la campaña de cadena de suministro Miasma, una oleada que envenenó aproximadamente 30 paquetes de PyPI (37 artefactos wheel maliciosos) en los ecosistemas de Python científico y bioinformática. Cada wheel malicioso incluye un archivo *-setup.pth que Python ejecuta en cada arranque del intérprete, el equivalente en Python al problema del hook de instalación de npm. No se necesita ningún import; el payload se ejecuta antes de que revises el código.
El hook .pth descarga un runtime Bun precompilado en /tmp/b/ y ejecuta un payload JavaScript ofuscado (_index.js), eludiendo los controles del gestor de paquetes y los registros del proxy de red. Los tokens de GitHub y de publicación robados le permiten después republicar más paquetes: autopropagación.
La parte que ataca a los agentes de IA
Hades instala una puerta trasera en los archivos de configuración y reglas de 14 asistentes de IA - Claude, Codex, Gemini, Copilot, Cline, Aider, Tabby, Amazon Q, Cody, Bolt, Continue y más. Planta instrucciones o hooks personalizados (p. ej. bun run bootstrap) en archivos como .cursorrules, .windsurfrules, .github/copilot-instructions.md, .aider.conf.yml y settings.json / mcp.json. La próxima vez que un desarrollador abra el workspace, tu propio agente ejecutará el gusano.
Esto es exactamente envenenamiento de memoria: una infección puntual se convierte en una instrucción permanente que el agente relee en cada ejecución.
¿Está infectado? Qué comprobar
- Archivos
*-setup.pthno reconocidos en tusite-packagesde Python. - Un marcador
/tmp/.bun_ran, un binario Bun en/tmp/b/, o/var/tmp/.gh_update_state. - Instrucciones extrañas en configuraciones de IA:
.cursorrules,.vscode/tasks.json,~/.claude/settings.json,mcp.json,.aider.conf.yml. - Persistencia:
~/.config/systemd/user/update-monitor.service(Linux) o~/Library/LaunchAgents/com.user.update-monitor.plist(macOS), más~/.local/share/updater/update.py.
Los nombres de paquetes reportados en esta oleada incluyen:
# Oleada Hades - no instalar; eliminar si esta presente: bramin cmd2func coolbox dynamo-release embiggen ensmallen executor-engine executor-http funcdesc gpsea magique magique-ai mflux-streamlit mrbios napari-ufish nhmpy nucbox okite pantheon-agents pantheon-toolsets ppkt2synergy pyphetools rlask rsquests spateo-release synago tlask ufish uprobe
Si le ha afectado: el orden importa
- 1. Aislar - desconecta la máquina de la red.
- 2. Eliminar la persistencia - borra el archivo
*-setup.pth, elimina las instrucciones inyectadas de tus configuraciones de IA y suprime cualquier servicio update-monitor o LaunchAgent. - 3. Eliminar el paquete - desinstala el paquete afectado con
pip uninstall/npm uninstall. - 4. Ahora rotar - solo ahora rota cada clave, token y credencial a los que la máquina pudiera acceder.
Cómo te protege PoisonZero aquí
PoisonZero vigila los archivos de configuración e instrucciones de tu asistente de IA y comprueba cada escritura antes de que surta efecto. El paso de persistencia de Hades (reescribir .cursorrules, settings.json, mcp.json y similares) es exactamente un cambio en un archivo protegido: una edición inofensiva pasa, esta reescritura peligrosa se revierte al último estado limpio con un rastro de auditoría completo, y una que no está clara se te presenta a ti para que decidas.
Para ser claros sobre el alcance: PoisonZero protege el vector de configuración del agente, el paso que convierte una infección puntual en persistencia duradera dentro de tus herramientas de IA. No elimina el paquete malicioso en sí; para eso, siga el orden de limpieza indicado arriba.
Mantén los gusanos fuera de las configuraciones de tu agente.
PoisonZero comprueba cada escritura en tus archivos de configuración y memoria de IA - fail-closed.
Sign me up