spot_img

Paquetes npm relacionados con SAP comprometidos en un ataque a la cadena de suministro con robo de credenciales

Los investigadores de ciberseguridad están haciendo sonar la alarma sobre una nueva campaña de ataque a la cadena de suministro dirigida a paquetes npm relacionados con SAP con malware de robo de credenciales.

Según informes de Aikido Security, SafeDep, Socket, StepSecurity y Wiz, propiedad de Google, la campaña, que se autodenomina mini Shai-Hulud – ha afectado los siguientes paquetes asociados con el ecosistema de desarrollo de aplicaciones en la nube y JavaScript de SAP:

  • mbt@1.2.48
  • @cap-js/db-servicio@2.10.1
  • @cap-js/postgres@2.2.2
  • @cap-js/sqlite@2.2.2

«Las versiones afectadas introdujeron un nuevo comportamiento en el momento de la instalación que anteriormente no formaba parte de la funcionalidad esperada de estos paquetes», dijo Socket. «Las versiones comprometidas agregaron un script de preinstalación que actúa como un programa previo en tiempo de ejecución, descargando un ZIP Bun específico de la plataforma de las versiones de GitHub, extrayéndolo y ejecutando inmediatamente el binario Bun extraído».

«La implementación también sigue redirecciones HTTP sin validar el destino y utiliza PowerShell con -ExecutionPolicy Bypass en Windows, lo que aumenta el riesgo para los entornos de desarrollador y CI/CD afectados».

Wiz señaló que los paquetes maliciosos coinciden con varias características presentes en operaciones anteriores de TeamPCP, lo que indica que es probable que el mismo actor de amenazas esté detrás de la última campaña.

Las versiones sospechosas se publicaron el 29 de abril de 2026, entre las 09:55 UTC y las 12:14 UTC. Los paquetes envenenados introducen un nuevo gancho de preinstalación de package.json que ejecuta un archivo llamado «setup.mjs», que actúa como un cargador para el tiempo de ejecución de Bun JavaScript para ejecutar el ladrón de credenciales y el marco de propagación («execution.js»).

LEER  TrueConf Zero-Day explotado en ataques a redes gubernamentales del sudeste asiático

Según Aikido, el malware está diseñado para recopilar credenciales de desarrolladores locales, tokens de GitHub y npm, secretos de GitHub Actions y secretos de la nube de AWS, Azure, GCP y Kubernetes. Los datos robados se cifran y se filtran a repositorios públicos de GitHub creados en la propia cuenta de la víctima con la descripción «Ha aparecido un Mini Shai-Hulud». Al momento de escribir este artículo, hay más de 1100 repositorios con descripciones.

Además, la carga útil de 11,6 MB viene con capacidades para autopropagarse a través de los flujos de trabajo de desarrollador y lanzamiento, específicamente usando los tokens GitHub y npm para inyectar un flujo de trabajo de GitHub Actions malicioso en los repositorios de la víctima para robar secretos del repositorio y publicar versiones envenenadas de los paquetes npm en el registro.

Sin embargo, el último incidente presenta diferencias significativas con las oleadas anteriores de Shai-Hulud:

  • Todos los datos exfiltrados se cifran con AES-256-GCM y encapsulan la clave usando RSA-4096 con una clave pública integrada en la carga útil, lo que efectivamente la hace descifrable solo para el atacante.
  • Existe en sistemas locales rusos.
  • La carga útil se compromete en cada repositorio de GitHub accesible inyectando un archivo «.claude/settings.json» que abusa del gancho SessionStart de Claude Code y un archivo «.vscode/tasks.json» con la configuración «runOn»: «folderOpen» de modo que cualquier intento de abrir el repositorio infectado en Microsoft Visual Studio Code (VS Code) o Claude Code provoque la ejecución del malware.

«Este es uno de los primeros ataques a la cadena de suministro que tiene como objetivo las configuraciones de agentes de codificación de IA como un vector de persistencia y propagación», dijo StepSecurity.

LEER  Cisco parchea cuatro servicios de identidad críticos y fallas de Webex que permiten la ejecución de código

Un análisis más profundo de la causa raíz ha revelado que los atacantes comprometieron la cuenta de RoshniNaveenaS para los tres paquetes «@cap-js», seguido de enviar un flujo de trabajo modificado a una rama no principal y utilizar el token npm OIDC extraído para publicar los paquetes maliciosos sin procedencia. En cuanto a MBT, se sospecha que involucra el compromiso del token npm estático «cloudmtabot» a través de un canal aún indeterminado.

«El equipo de cds-dbs migró a la publicación confiable npm OIDC en noviembre de 2025», dijo SafeDep. «Bajo esta configuración, GitHub Actions puede solicitar un token npm de corta duración sin almacenar ningún secreto de larga duración en el repositorio. El atacante reprodujo este intercambio manualmente en un paso de CI e imprimió el token resultante».

«La brecha de configuración crítica: la configuración del editor confiable OIDC de npm para @cap-js/sqlite confiaba en cualquier flujo de trabajo en cap-js/cds-dbs, no solo en el canónico release-please.yml en main. Una rama push podría intercambiar un token OIDC en nombre del paquete si el flujo de trabajo tuviera id-token: permiso de escritura y el entorno: referencia de npm».

En respuesta al incidente, los mantenedores de los paquetes han lanzado nuevas versiones seguras que reemplazan las versiones comprometidas.

spot_img