Varios proveedores de seguridad están alertando sobre una segunda ola de
ataques dirigidos al registro NPM, similares al ataque
Shai-Hulud
de septimebre pasado.
La nueva campaña de la cadena de suministro, denominada Sha1-Hulud, ha
comprometido cientos de paquetes NPM, según informes de
Aikido,
HelixGuard,
Koi Security, Socket, y
Wiz. Los paquetes troyanizados se subieron a NPM entre el 21 y el 23 de
noviembre de 2025. Aikido también publicó la
lista de paquetes comprometidos
(+26.000 hasta ahora).
«La campaña introduce una nueva variante que ejecuta código malicioso
durante la fase de preinstalación, lo que aumenta significativamente la
exposición potencial en entornos de compilación y ejecución», afirmaron los investigadores de Wiz Hila Ramati, Merav Bar, Gal Benmocha y
Gili Tikochinski.
Al igual que el ataque Shai-Hulud que salió a la luz en septiembre de 2025, la
actividad más reciente también publica secretos robados en GitHub, esta vez
con la descripción del repositorio: «Sha1-Hulud: The Second Coming».
La ola anterior se caracterizó por la vulneración de paquetes legítimos para
distribuir código malicioso diseñado para buscar secretos en las máquinas de
los desarrolladores mediante el escáner de credenciales de
TruffleHog
y transmitirlos a un servidor externo controlado por el atacante. Las
variantes infectadas también tenían la capacidad de propagarse de forma
autorreplicante, republicándose en otros paquetes npm propiedad del mantenedor
comprometido.
En el último conjunto de ataques, se descubrió que los atacantes añadieron un
script de preinstalación («setup_bun.js») al archivo
package.json, configurado para instalar o localizar sigilosamente el
entorno de ejecución de Bun y ejecutar un script malicioso incluido
(«bun_environment.js»).
La carga maliciosa ejecuta la siguiente secuencia de acciones a través de dos
flujos de trabajo diferentes:
-
Registra la máquina infectada como un ejecutor autoalojado llamado
«SHA1HULUD» y agrega un flujo de trabajo llamado
.github/workflows/discussion.yaml que contiene una vulnerabilidad de
inyección y se ejecuta específicamente en ejecutores autoalojados, lo que
permite al atacante ejecutar comandos arbitrarios en las máquinas infectadas
abriendo discusiones en el repositorio de GitHub. -
Exfiltra secretos definidos en la sección de secretos de GitHub y los sube
como un artefacto, tras lo cual se descarga y elimina el flujo de trabajo
para ocultar la actividad.
«Tras la ejecución, el malware descarga y ejecuta TruffleHog para escanear
la máquina local, robando información confidencial como tokens NPM,
credenciales de AWS/GCP/Azure y variables de entorno», señaló Helixuard.
Wiz afirmó haber detectado más de 26.000 repositorios afectados en unos 350
usuarios únicos, con la adición constante de 1.000 nuevos repositorios cada 30
minutos en las últimas dos horas.
«Esta campaña continúa la tendencia de comprometer la cadena de suministro
de npm haciendo referencia a la nomenclatura y el manejo de la marca
Shai-Hulud, aunque podría involucrar a diferentes actores», declaró Wiz.
«La amenaza aprovecha las cuentas de mantenimiento comprometidas para
publicar versiones troyanizadas de paquetes npm legítimos que ejecutan
código de robo de credenciales y exfiltración durante la instalación».
Koi Security calificó la segunda ola como mucho más agresiva, y añadió que el
malware intenta destruir todo el directorio personal de la víctima si no logra
autenticarse o establecer persistencia. Esto incluye todos los archivos
editables que pertenecen al usuario actual en su carpeta personal. Sin
embargo, esta funcionalidad similar a un borrado solo se activa cuando se
cumplen las siguientes condiciones:
- No puede autenticarse en GitHub
- No puede crear un repositorio de GitHub
- No puede obtener un token de GitHub
- No puede encontrar un token npm
«En otras palabras, si Sha1-Hulud no puede robar credenciales, obtener
tokens ni asegurar ningún canal de exfiltración, recurre a una destrucción
catastrófica de datos», afirmaron los investigadores de seguridad Yuval Ronen e Idan Dardikman.
«Esto marca una escalada significativa con respecto a la primera ola,
cambiando las tácticas del actor del robo de datos al sabotaje punitivo».
Para mitigar el riesgo que representa la amenaza, se insta a las
organizaciones a escanear todos los endpoints para detectar la presencia de
paquetes afectados,
eliminar las versiones comprometidas con efecto inmediato, rotar todas las
credenciales y auditar los repositorios en busca de mecanismos de persistencia
revisando .github/workflows/ en busca de archivos sospechosos como
shai-hulud-workflow.yml o ramas inesperadas.
Fuente:
THN

