Una nueva campaña de ataque a la cadena de suministro Mini Shai-Hulud, con nombre en código Miasmaha comprometido paquetes de @redhat-cloud-services para robar credenciales y secretos de las máquinas de los desarrolladores y entregar un gusano autopropagante.
«Esta es efectivamente una campaña Mini Shai-Hulud: utiliza las mismas tácticas centrales de ejecución en el momento de la instalación, recolección de credenciales, segmentación de CI/CD, exfiltración cifrada y posible propagación descendente», dijo Socket.
Actualmente se desconoce exactamente quién está detrás de la actividad de ataque, dado que TeamPCP, un infame grupo de cibercrimen, ha abierto las herramientas de ataque vinculadas al gusano Shai-Hulud, abriendo la puerta para que otros actores de amenazas realicen ataques similares y dificultando la atribución definitiva.
Los nombres de algunos de los paquetes afectados se enumeran a continuación:
- @redhat-cloud-services/vulnerabilidades-cliente
- @redhat-cloud-services/tsc-transform-importaciones
- @redhat-cloud-services/cliente-de-inventario-topológico
- @redhat-cloud-services/fuentes-cliente
- @redhat-cloud-services/rule-components
- @redhat-cloud-services/cliente-de-remediaciones
- @redhat-cloud-services/rbac-client
Según los análisis de Aikido Security, JFrog, Microsoft, OX Security, SafeDep, StepSecurity y Wiz, los paquetes npm contienen un gancho de preinstalación ofuscado que está diseñado para recopilar secretos de GitHub Actions, tokens npm, credenciales de nube, material de Kubernetes y Vault, claves SSH, credenciales de Git y otros archivos confidenciales.
Como se observó en oleadas anteriores de Mini Shai-Hulud, el malware también contiene una lógica de exfiltración cifrada que transmite los datos a «api.anthropic(.)com:443/v1/api» y utiliza GitHub como mecanismo alternativo. Esto indica intentos realizados por el atacante de robar credenciales y utilizarlas como arma para envenenar aún más la cadena de suministro de software.
«Confirma el sobre de resultados cifrado a través de la API de GitHub», dijo Socket. «El mensaje de confirmación puede incluir: IfYouInvalidateThisTokenItWillNukeTheComputerOfTheOwner:

Otro paso notable que lleva a cabo el malware es evitar la ejecución en sistemas en idioma ruso, un patrón que también se observa en las campañas de la cadena de suministro de GlassWorm.
«Para npm, la carga útil llama al intercambio de tokens OIDC y a los puntos finales whoami, vuelve a empaquetar un tarball (updateTarball, package-updated.tgz) y firma el artefacto a través de Sigstore», dijo SafeDep. «Las credenciales robadas se filtran a repositorios públicos de GitHub creados por atacantes, cada uno con la descripción Miasma: The Spreading Blight».
La primera confirmación que contiene la cadena «Miasma: The Spreading Blight» apareció el 29 de mayo de 2026, señaló OX Security, lo que indica que esta variante estaba activa desde entonces o que el actor de amenazas comenzó a realizar pruebas en ese momento.

En cuanto a GitHub, el malware enumera los repositorios en los que el token puede escribir, lee action.yml/action.yaml a través de GraphQL y confirma un flujo de trabajo a través de la mutación createCommitOnBranch para que la confirmación aparezca como un cambio firmado y verificado. Otras acciones llevadas a cabo por el malware se enumeran a continuación:
- Intente escalar privilegios lanzando un contenedor que monte de forma vinculante el host /etc/sudoers.d y otorgue al corredor de CI sudo sin contraseña
- Verifique la protección de endpoints de CrowdStrike, SentinelOne, Carbon Black y StepSecurity Harden-Runner antes de comenzar las acciones maliciosas.
- Establezca persistencia inyectando un gancho SessionStart en Anthropic Claude Code y un task.json con «runOn»: «folderOpen» para proyectos de Microsoft Visual Studio Code para que el malware se inicie automáticamente durante cada sesión.
«Uno de los principales cambios en esta nueva variante es la incorporación de nuevos recolectores de datos centrados en identidades en la nube», dijeron los investigadores de Wiz. «Específicamente, se agregaron recopiladores de identidades de GCP y Azure que recopilan todas las identidades a las que tiene acceso la máquina infectada. Mientras que las versiones anteriores del malware se centraban principalmente en extraer secretos de estos entornos, esta variante sugiere un mayor enfoque del atacante en obtener y aprovechar el acceso a la propia nube.
A diferencia de las versiones anteriores, también se ha descubierto que el malware genera una carga útil cifrada de forma única para cada infección, lo que hace que la detección y el seguimiento de versiones sean significativamente más difíciles.
La evidencia sugiere que el compromiso de la cuenta de GitHub de un empleado de Red Hat fue el paciente cero que se utilizó para inyectar la carga útil en estos paquetes. Se dice que la cuenta comprometida envió confirmaciones huérfanas maliciosas a dos repositorios de RedHatInsights, evitando la revisión del código.
Se recomienda aislar los hosts que han instalado las versiones afectadas, eliminar las versiones maliciosas, rotar las credenciales expuestas, revisar si hay signos de actividad sospechosa de GitHub o npm, auditar el entorno en busca de artefactos de persistencia que involucren cambios en los archivos de configuración (~/.claude/settings.json, .vscode/tasks.json, .github/workflows/codeql.yml, .github/setup.js) y aplicar controles de acceso estrictos.
«Debido a que el malware incluye ejecución en segundo plano y posibles mecanismos de persistencia de herramientas de desarrollador, desinstalar el paquete npm o eliminar node_modules no debe considerarse una limpieza suficiente», explicó Socket.
«Para los sistemas CI/CD, suspenda las ejecuciones de flujo de trabajo afectadas, invalide los artefactos de compilación producidos durante la ventana de exposición y revise si se creó alguna versión, imagen de contenedor, paquete npm o artefacto de implementación después de instalar el paquete malicioso».