TL; DR — Un “gusano” npm autorreplicante llamado Shai Hulud Envenenaron paquetes populares, robaron secretos de desarrolladores/CI y luego los usaron para publicar versiones más maliciosas, convirtiendo a las víctimas en nuevos puntos de propagación. A las pocas horas de las revelaciones, Scribe realizó verificaciones de toda la cartera en los SBOM y las atestaciones de compilación de nuestros clientes, y confirmó que sus pipelines estaban... No Retirando cualquier versión comprometida. También contamos con una política de protección para bloquear cualquier variante que llegue tarde.
Que pasó
Del 15 al 17 de septiembre, los investigadores informaron sobre un compromiso a gran escala de la cadena de suministro en el npm Ecosistema. La campaña utilizó como arma nuevas versiones de paquetes legítimos y lanzó una carga útil de varias etapas que:
- Secretos exfiltrados (tokens npm/GitHub, credenciales en la nube, claves API), a veces invocando herramientas populares de escaneo de secretos;
- Autopropagado abusando de los derechos de publicación robados para impulsar nuevas versiones maliciosas de los mantenedores afectados.
- En muchos casos, datos robados publicados a GitHub (por ejemplo, repositorios llamados “Shai-Hulud” y “Migración Shai-Hulud”) e incluso hizo públicos algunos repositorios privados.
Los primeros recuentos oscilaron entre 150–200+ paquetes y cientos de versiones maliciosas, con varios mantenedores afectados, incluyendo algunos paquetes bajo espacios de nombres de proveedores conocidos. Cabe destacar que la ola afectó a ecosistemas utilizados por Angular desarrolladores (por ejemplo, ngx-bootstrap, carga de archivos ng2) y el popular @ctrl/tinycolor biblioteca.
¿Por qué este ataque es diferente?
- Debe ser parecido a un gusano:una vez que un desarrollador o CI extrae una versión infectada, la carga útil intenta recolectar credenciales y publicar más paquetes infectados, radio de explosión de bola de nieve sin dirección humana constante.
- El objetivo no es solo la ejecución del código, es Compromiso sostenido del editor y propagación a nivel de ecosistema, lo que hace que la limpieza “en un momento dado” sea insuficiente.
Posibles consecuencias
- Exposición de credenciales y movimiento lateral. Los tokens exfiltrados pueden permitir la publicación de puertas traseras, la manipulación de repositorios y la persistencia de CI/CD incluso después de que se hayan extraído los paquetes.
- Envenenamiento por dependencia silenciosa. Los paquetes populares se actualizan con frecuencia; un solo npm instalar o la compilación CI puede importar scripts posteriores a la instalación maliciosos a escala.
- Fuga pública de IP privada. Algunas víctimas vieron Repos privados forzados a públicos durante la propagación, ampliando el riesgo legal y reputacional.
Cómo Scribe ayudó a los clientes a responder de inmediato
A las pocas horas de recibir los primeros informes fiables, Scribe inició una Manual de verificación y contención de doble vía en todos los entornos de los clientes:
- SBOM y barrido de gráficos de dependencia
- Se consultaron continuamente SBOM y archivos de bloqueo generados en repositorios, imágenes y funciones para Localizar cualquier nombre o versión de paquete malicioso a la que se haga referencia vinculado a las revelaciones de Shai-Hulud (por ejemplo, @ctrl/tinycolor variantes; paquetes Angular afectados).
- Resultado: para nuestras carteras gestionadas, No había tuberías activas ni artefactos que consumieran versiones marcadas;los clientes fueron notificados la misma noche con pruebas.
- Barandillas y controles de política como código
- Temporalmente clavado paquetes críticos, actualizaciones bloqueadas no firmadas o no verificadas y aplicadas puertas que alertan cuando las detecciones coinciden con los IoC (nombres/versiones, ventanas de publicación, indicadores de los equipos de investigación).
- Para los equipos que utilizan nuestros flujos de trabajo de agentes, remediación automática Se propusieron versiones limpias y se crearon PR con pruebas de procedencia adjuntas para revisión con un solo clic.
¿Por qué funcionó esto?
- La evidencia continua supera a las auditorías periódicas. Debido a que Scribe recopila continuamente SBOM, resultados de escáner y compilaciones atestaciones, podríamos responder “¿Fuimos expuestos?" con hechos inmediatos y de toda la cartera, no con conjeturas hechas al máximo.
- Las barandillas detienen la propagación. Incluso si un desarrollador ejecutara actualización de NPM localmente, Scribe's puertas de preproducción puede evitar que los artefactos contaminados pasen a la integración, la preparación o la producción.
- La respuesta del agente cierra el MTTR. Nuestros agentes de remediación redactan solicitudes de acceso (fijar, revertir o actualizar), rotan secretos de CI cuando es necesario y documentan la cadena de custodia, convirtiendo un lío en una lista de verificación.
Si estás evaluando tu exposición hoy
- Primero el inventario. Busque en SBOMs/archivos de bloqueo y manifiestos de artefactos los nombres y versiones de los paquetes afectados publicados en la ventana de incidentes. (Varios proveedores tienen registros e informes de cumplimiento actualizados).
- Rotar tokens emitidos desde cualquier máquina o corredor Que ejecutó un paquete infectado. Se asume movimiento lateral; reconstrucción a partir de compiladores confiables.
- Revisar los registros de auditoría de GitHub para repositorios nombrados “Shai-Hulud” o “Migración Shai-Hulud”, sucursales eliminadas o migraciones públicas forzadas.
- Fortalezca su canalización: hacer cumplir la verificación de firma/procedencia, fijar bibliotecas críticas y controlar errores de políticas (por ejemplo, editor no firmado/desconocido, scripts post-instalación anómalos).
El cuadro más grande
Shai-Hulud es un anticipo de hacia dónde se dirigen las amenazas a la cadena de suministro: malware que roba credenciales y se autopropaga que convierte al propio ecosistema de desarrolladores en un arma. La respuesta no es una respuesta heroica a incidentes; es aseguramiento continuo—evidencia firmada, procedencia verificable, política como código y remediación automatizada y agente que se ejecuta a la velocidad del desarrollador.
Si desea ayuda para validar la exposición o ponerse de pie barandillas y portones que habría bloqueado esta clase de ataque, estaremos encantados de guiar a su equipo a través de una evaluación personalizada utilizando sus propios pipelines y SBOM.
Para más detalles, contáctenos
Este contenido es presentado por Scribe Security, un proveedor líder de soluciones de seguridad de la cadena de suministro de software de extremo a extremo, que ofrece seguridad de última generación para artefactos de código y procesos de desarrollo y entrega de código en todas las cadenas de suministro de software. Más información.