Investigadores identificaron campaña contra cadena de suministro que afectó 32 paquetes npm vinculados a Red Hat. Los paquetes modificados incluían código malicioso diseñado para obtener credenciales de desarrolladores, tokens de acceso y configuraciones sensibles, con capacidad de propagarse a otros proyectos mediante repositorios comprometidos.
Diversas firmas de ciberseguridad informaron sobre una campaña de malware contra la cadena de suministro denominada Miasma, también descrita por algunos investigadores como una variante relacionada con la campaña Mini Shai-Hulud, que comprometió decenas de paquetes publicados bajo el ecosistema npm asociado a Red Hat. El incidente afectó específicamente 32 paquetes utilizados en servicios cloud de la compañía, los cuales fueron modificados para incorporar código malicioso destinado a recolectar información sensible de los entornos de desarrollo donde fueran instalados.
Según los análisis publicados por firmas de seguridad como ReversingLabs, Socket, Aikido, Wiz y OX Security, los paquetes comprometidos contenían funcionalidades orientadas al robo de credenciales almacenadas localmente, incluyendo tokens de npm, configuraciones de Git, credenciales de servicios en la nube y otros secretos utilizados durante procesos de desarrollo y despliegue. La actividad fue detectada poco después de la publicación de versiones alteradas en el registro npm.
La investigación de ReversingLabs destacó la rapidez con la que se produjo el compromiso. Los investigadores señalaron que “Las versiones maliciosas abarcan desde las 10:54:09 hasta las 10:55:21 UTC, es decir, 72 segundos entre la primera y la última publicación”, reflejando la velocidad con la que los atacantes modificaron y republicaron componentes legítimos dentro del ecosistema afectado.
Además, agregaron que “No se trata de una persona escribiendo en una terminal; es una publicación automatizada mediante un script. El atacante preparó los 31 archivos infectados con antelación y ejecutó una única operación de envío por lotes”.
Los análisis técnicos coinciden en que el malware buscaba credenciales presentes en múltiples ubicaciones del sistema y posteriormente intentaba exfiltrar la información obtenida hacia infraestructura controlada por los atacantes. Además, la carga maliciosa incorporaba mecanismos para modificar proyectos donde era ejecutada, agregando código adicional destinado a facilitar nuevas infecciones. Esta característica permitió a varios investigadores describir el comportamiento observado como similar al de un gusano dentro de entornos de desarrollo.
De acuerdo con el informe de Aikido Security, el código malicioso estaba diseñado para robar credenciales y propagarse a otros repositorios. Los investigadores indicaron que el objetivo principal parecía centrarse en desarrolladores y organizaciones que consumían los paquetes comprometidos durante procesos de construcción o despliegue de software. Lo especialistas indicaron que “En total, 96 versiones de 32 paquetes se vieron comprometidas, con un total acumulado de 116.991 descargas semanales” y añadieron que “el malware parece similar al Mini Shai-Hulud, cuyo código fuente fue publicado recientemente por TeamPCP”.
Las investigaciones también identificaron que el incidente se originó a partir del compromiso de cuentas con permisos de publicación sobre paquetes legítimos. Una vez obtenido el acceso, los atacantes distribuyeron versiones alteradas que mantenían la funcionalidad original de los componentes, dificultando la detección inmediata por parte de los usuarios. Diversos reportes señalaron que las versiones comprometidas fueron retiradas posteriormente y reemplazadas por ediciones limpias.
Wiz describió la operación como una campaña de cadena de suministro con capacidad de expansión hacia nuevos proyectos mediante la reutilización de credenciales obtenidas. En paralelo, OX Security indicó que la actividad evidenció nuevamente los riesgos asociados a dependencias ampliamente utilizadas dentro del ecosistema JavaScript y npm.
Tras la detección, Red Hat inició acciones para eliminar las versiones afectadas, revocar credenciales comprometidas y publicar paquetes corregidos. Los investigadores recomendaron revisar registros de instalación, rotar credenciales potencialmente expuestas y verificar la integridad de los proyectos que hayan utilizado versiones comprometidas de los paquetes afectados durante el período de exposición.
