Mini Shai-Hulud regresa, comprometiendo cientos de paquetes npm

Ha resurgido una campaña de malware autorreplicante conocida como Mini Shai-Hulud, esta vez incrustándose en cientos de paquetes npm. El actor de amenazas detrás de esto, identificado como TeamPCP, ha sido vinculado a oleadas anteriores de la misma campaña, siendo esta última variante más capaz que las oleadas anteriores.

Los investigadores que analizaron la carga útil encontraron un gusano que se propaga de forma autónoma, instala puertas traseras persistentes a nivel del sistema operativo y está diseñado específicamente para sobrevivir a la primera respuesta más común: eliminar el paquete.

Cómo funciona el ataque

El malware se ejecuta en el momento en que se instala un paquete de software afectado, ya sea en el entorno local de un desarrollador o dentro de una canalización de CI/CD. Un gancho se dispara antes de cualquier otro paso, dando a la carga útil acceso inmediato a la máquina.

Recopila tokens de GitHub, tokens npm, claves SSH, credenciales de proveedores de nube y cadenas de conexión de bases de datos. En entornos de compilación automatizados, utiliza la propia identidad confiable de la canalización para obtener credenciales de publicación, lo que le permite enviar versiones de paquetes envenenados al registro con el nombre de un mantenedor legítimo. Los datos robados se envían a repositorios de GitHub controlados por el atacante.

Después de robar un token de publicación, el malware verifica todos los paquetes a los que puede acceder el token, agrega su código a esos paquetes y publica nuevas versiones envenenadas utilizando la cuenta del mantenedor. Por lo tanto, un ejecutor de CI infectado (la máquina o servidor virtual que crea, prueba y publica automáticamente el código de un proyecto) puede contaminar todos los paquetes que el ejecutor puede publicar. También busca en la computadora de un desarrollador otros proyectos de Node.js y se copia en ellos, por lo que una sola instalación infectada puede comprometer una estación de trabajo completa.

«Si alguno de los paquetes afectados se ejecutó en su entorno, trate la máquina o el ejecutor como expuesto hasta que se roten los secretos, se eliminen los artefactos de persistencia y se haya revisado la actividad de publicación reciente». Investigadores de seguridad del Aikido escribió en una publicación de blog.

Quitar el paquete no es suficiente

Los investigadores descubrieron que una reversión de dependencia estándar deja intacto el acceso del atacante. El malware incorpora puertas traseras en la configuración de las herramientas de desarrollo, en particular .vscode/tasks.json y .claude/settings.json, que permanecen en el disco incluso después de que se elimina el paquete npm. Esos archivos deben ser auditados y limpiados para eliminar el punto de apoyo del atacante.

La carga útil también instala servicios en segundo plano a nivel del sistema operativo: un servicio de usuario systemd en Linux, un LaunchAgent en macOS. Ambos ejecutan una puerta trasera llamada kitty-monitor, que sondea la búsqueda de confirmación de GitHub cada hora en busca de comandos remotos firmados. Un segundo proceso, gh-token-monitor, verifica los tokens de GitHub robados cada 60 segundos, alertando al atacante en el momento en que uno es revocado. Un atacante puede mantener el acceso y monitorear la respuesta de la víctima casi en tiempo real, mucho después de que se haya descubierto la infección original.

Múltiple empresas de seguridad han señalado qué dependencias populares están siendo atacadas. En esta ola, se ha vuelto popular el software de visualización de datos, incluidos AntV y TallyUI de código abierto de Alibaba. La campaña también abordó utilidades ampliamente utilizadas como echarts-for-react (un contenedor de React para ECharts) y timeago.js (una pequeña biblioteca de JavaScript que permite a los desarrolladores formatear marcas de tiempo).

«Incluso si solo un subconjunto de esos paquetes recibió actualizaciones maliciosas, la popularidad del ecosistema de paquetes crea una exposición significativa para las organizaciones que automáticamente obtienen nuevas versiones de dependencia». escribieron los investigadores de Socket, una empresa de seguridad de aplicaciones.

La campaña sigue activa. Debido a que el gusano se propaga utilizando tokens robados de entornos infectados, se espera que aumente el número de paquetes afectados. Los investigadores han advertido que cualquier máquina o canalización que haya instalado una versión afectada debe tratarse como totalmente comprometida.

La semana pasada, TeamPCP apuntó a otras bibliotecas de software destacadas con el malware, incluidas TanStack, UiPath y MistralAI.

Esta es una historia en desarrollo y se actualizará a medida que haya información disponible.

Greg Otto

Escrito por Greg Otto

Greg Otto es el editor en jefe de CyberScoop y supervisa todo el contenido editorial del sitio web. Greg ha dirigido una cobertura de ciberseguridad que ha ganado varios premios, incluidos los de la Sociedad de Periodistas Profesionales y la Sociedad Estadounidense de Editores de Publicaciones Empresariales. Antes de unirse a Scoop News Group, Greg trabajó para Washington Business Journal, US News & World Report y WTOP Radio. Tiene una licenciatura en periodismo televisivo de la Universidad de Temple.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *