El gusano Shai-Hulud, conocido por comprometer miles de paquetes en npm, vuelve a hacer acto de presencia meses después de que se pensara que había desaparecido. En mayo, un ataque masivo involucró la publicación de 639 versiones maliciosas del paquete @antv en un solo hora, pero fue detenido con rapidez.
A pesar de las medidas implementadas por npm, que desde entonces realiza escaneos de malware en el momento de la publicación, expertos de Aikido Security han detectado una nueva infiltración del gusano que logró pasar desapercibida a los sistemas automatizados que revisan cada paquete antes de que pueda ser instalado.
Charlie Eriksen, investigador de Aikido Security, señala que esta nueva amenaza tiene el mismo código malicioso («hash») que la oleada de mayo y que se filtró en cuatro paquetes distintos, publicados en una hora, tras 111 días sin incidentes detectados. Este caso evidencia una brecha alarmante entre la protección que npm anuncia y la realidad de detección frente a amenazas conocidas.
Los paquetes afectados fueron:
- feishu-docx-mcp@0.3.2
- bmc-i18n-extract-cli@1.1.1
- blueai-cli@0.7.0
- bmc-translate-utils@1.1.1
Estos paquetes contenían el mismo payload malicioso, identificado por el hash e37e3ddeeaaa9e0c4fdbcb829b4895a6521031c80053fc436625b61e6ee5b1a6, que ya había sido detectado meses atrás. Además, constaba de un archivo raíz index.js y un script de preinstalación que ejecutaba bun run index.js. Asimismo, se empleaban archivos de persistencia como .vscode/tasks.json y claude/settings.json para mantener la actividad maliciosa.
El modus operandi identificable consiste en llamadas de validación salientes hacia el propio registro de npm mediante tokens robados, descarga de paquetes tarball, inyección de código, actualizaciones de versión, republicación cíclica y la creación masiva de repositorios en GitHub con nombres relacionados con el tema de ‘Dune’ y descripciones que incluyen versiones invertidas del nombre «Shai-Hulud».
Eriksen critica que un malware con un hash público, bien documentado y con meses de seguimiento no debería escapar a la detección en una plataforma que presume de realizar escaneos exhaustivos con cada publicación. Resalta que la identificación mediante firma digital es la barrera más básica de la industria y señala que su fallo es una señal muy preocupante.
Este incidente subraya la complejidad creciente de la seguridad en la cadena de suministro de software y cómo algunos ataques pueden seguir vigentes a pesar de las mejoras en los sistemas de protección. El caso Shai-Hulud recuerda la importancia de mantener una vigilancia constante, compartir indicadores de compromiso y reforzar los procesos automáticos para evitar la propagación de código malicioso.
Por último, aunque se intentó obtener una respuesta oficial de npm, no se recibió ningún comentario antes de la publicación del informe.