El gusano de la cadena de suministro Shai-Hulud npm afecta a cientos de proyectos

Actualización definitiva: 09/18/2025
  • La campaña autopropagadora "Shai-Hulud" comprometió al menos 187 paquetes npm y aún está bajo investigación.
  • Los atacantes abusaron de cuentas de editores confiables, inyectaron una carga útil bundle.js y usaron TruffleHog para recopilar secretos.
  • Los scripts maliciosos posteriores a la instalación tenían como objetivo CI/CD para exfiltrar variables de entorno, credenciales de la nube y tokens.
  • ReversingLabs vincula el brote a una versión maliciosa de rxnt-authentication del 14 de septiembre de 2025; npm y los proveedores están eliminando los paquetes contaminados.

Ataque a la cadena de suministro de NPM Shai-Hulud

En medio de un mayor escrutinio sobre el riesgo del código abierto, un ataque a gran escala ataque a la cadena de suministro de npm denominado "Shai-Hulud" está sacudiendo el ecosistema de JavaScript, con Cientos de paquetes implicados y limpieza activa en marchaLos investigadores dicen que la operación combina el compromiso de cuentas, la publicación automatizada y el robo de secretos de maneras que la hacen inusualmente difícil de contener.

Los primeros análisis apuntan a que los atacantes abusan de las cuentas de editores confiables para enviar actualizaciones con trampas, mientras que La automatización propagó rápidamente versiones maliciosas a proyectos popularesDebido a que los paquetes npm se reutilizan ampliamente, el impacto en cascada a través de los árboles de dependencia es particularmente preocupante para los equipos que dependen de pipelines de CI/CD.

Cómo se detectó la campaña

Los investigadores de seguridad notaron por primera vez una actividad sospechosa vinculada a proyectos que hacían referencia a paquetes relacionados con CrowdStrike, lo que provocó un barrido más amplio del registro en busca de anomalías y cargas no autorizadas desde cuentas que parecen legítimasVarios objetivos parecen ser comunes en entornos empresariales, lo que aumenta el radio de explosión.

El desarrollador Daniel Pereira advirtió públicamente sobre un ataque a gran escala a la cadena de suministro después de tener dificultades para acceder a los canales de seguridad privados, instando a los desarrolladores a evitar los lanzamientos recientes de @ctrl/tinycolor, un paquete con millones de descargas semanalesSu alerta provocó una investigación coordinada por múltiples equipos de seguridad.

Lo que el malware intenta robar

Una vez instalados, los paquetes contaminados pueden ejecutar scripts posteriores a la instalación diseñados para Exfiltrar variables de entorno, tokens y otros secretosEsto pone en riesgo los servidores de compilación y las estaciones de trabajo de los desarrolladores si se extraen versiones maliciosas durante la instalación o las ejecuciones de CI.

Al apuntar específicamente a los sistemas CI/CD, los operadores buscaron capturar material de autenticación como Claves de proveedor de nube, tokens de acceso privado y credenciales de servicioCon esos datos en la mano, los adversarios podrían moverse lateralmente, reingresar a las redes y potencialmente alterar tuberías o aplicaciones sensibles.

Cómo se propaga el gusano entre paquetes

Las investigaciones indican que la campaña incluye un componente autopropagador que descargó cada paquete propiedad de un mantenedor comprometido y alteró su package.json, inyectó un paquete.js carga útil, la volví a empaquetar y la volví a publicar, automatizando así la troyanización de versiones posteriores.

El malware también abusó de la herramienta legítima de escaneo de secretos. Trufa de cerdo para buscar credenciales expuestas y archivos de configuración referenciados denominados shai-hulud.yaml—un guiño a los gusanos de arena de Dune que inspiraron el nombre de la operación. Esta combinación de reutilización y automatización ayudó a que la amenaza se moviera con rapidez.

Alcance y paquetes afectados hasta el momento

Los investigadores de Socket y Aikido han identificado al menos 187 paquetes npm comprometidos Hasta la fecha, se espera que la cifra aumente a medida que continúen las revisiones. Dado que incluso una sola dependencia contaminada puede propagarse a varios proyectos, la exposición efectiva podría ser considerable.

Entre los afectados se encontraban paquetes asociados con CrowdStrike, como crowdstrike-sdk, crowdstrike-client y crowdstrike-api—junto con otros módulos populares. El énfasis en las bibliotecas referenciadas por la empresa sugiere que los operadores buscaban el máximo aprovechamiento operativo.

Pistas sobre el origen y la cronología

ReversingLabs informa que es probable que el brote se remonte a una liberación maliciosa de autenticación rxnt Publicado el 14 de septiembre de 2025, con la cuenta npm soporte técnico rxnt Se postula como posible paciente cero. La forma en que se vulneró esa cuenta sigue siendo incierta, con hipótesis que van desde el phishing hasta el abuso de una acción vulnerable de GitHub.

Varias empresas describen a Shai-Hulud como un proyecto sin precedentes, Gusano autorreplicante de paquetes npm que también roba tokens de la nubeSi bien la atribución está en curso, el perfil técnico destaca cómo la automatización controlada por el atacante puede convertir a los administradores de paquetes en poderosos canales de distribución.

Respuesta y limpieza de la industria

Los socios de registro y seguridad de npm se trasladaron a eliminar paquetes maliciosos, notificar a los editores y emitir orientación Para auditar dependencias. Se insta a los desarrolladores a revisar los archivos de bloqueo y el historial de versiones, especialmente en las versiones de mediados de septiembre de 2025.

CrowdStrike declaró que eliminó rápidamente los paquetes no autorizados del npm público, rotó claves de manera proactiva y confirmó que Su sensor Falcon no utiliza esos módulos y las protecciones del cliente siguen vigentesLa empresa está colaborando con npm y realizando una revisión exhaustiva.

Pasos prácticos para equipos

Las organizaciones deben auditar inmediatamente los proyectos en busca de indicadores conocidos, priorizando listas de dependencias, archivos de bloqueo y registros de compilación de CIRote todos los tokens y credenciales potencialmente expuestos, incluidos tokens npm, PAT de GitHub y claves en la nube.

  • Eliminar o fijar los paquetes afectados y volver a versiones seguras; reconstruir desde entornos limpios.
  • Habilite la 2FA obligatoria para las cuentas de editores de npm y aplique tokens con privilegios mínimos en CI/CD.
  • Escanee continuamente dependencias y artefactos para detectar alteraciones; monitoree si hay comportamiento anómalo posterior a la instalación.
  • Configure alertas para publicaciones inesperadas de su organización y verifique la integridad del paquete antes de la promoción.

Para reducir la exposición futura, introduzca controles automáticos que bloqueen scripts sospechosos durante la instalación y Verificar la procedencia de las dependencias nuevas o actualizadas antes de que lleguen a producciónRevisar el acceso del mantenedor, las protecciones del repositorio y las políticas de firma pueden fortalecer aún más la cadena.

La campaña Shai-Hulud ha dejado al descubierto la rapidez con la que un actor determinado puede convertir la confianza en los registros populares en un arma, utilizando Cuentas comprometidas, propagación similar a un gusano y recolección de secretos Para amplificar el impacto, la vigilancia, la remediación rápida y los controles más estrictos de los editores son ahora prioridades inmediatas para los equipos de todo el ecosistema.

ataque generalizado de la cadena de suministro de NPM
Artículo relacionado:
Un ataque generalizado a la cadena de suministro de NPM sacude el ecosistema de JavaScript
Artículos Relacionados: