Selon Sonatype, une campagne de malware wormable baptisée Shai-Hulud a compromis plus de 180 paquets npm en abusant d’identifiants de mainteneurs volés. L’opération combine automatisation (IA), vol de credentials, exfiltration via GitHub et empoisonnement de packages pour une propagation rapide dans la chaîne d’approvisionnement logicielle.
Le fonctionnement est multi-étapes : collecte de credentials sur postes développeurs et environnements CI, exfiltration des données vers webhook.site/bb8ca5f6-4175-45d2-b042-fc9ebb8170b7
, création automatisée de dépôts GitHub nommés “Shai-Hulud” contenant les secrets dérobés, puis injection d’un workflow GitHub Actions (.github/workflows/shai-hulud-workflow.yml
) pour la persistance.
La propagation exploite des jetons npm dérobés pour publier des packages trojanisés. Le « ver » parcourt les dépôts accessibles, crée des branches shai-hulud
, pousse les workflows malveillants, puis ouvre des pull requests afin de favoriser l’adoption et la diffusion, enclenchant un cycle d’infection auto-renforcé à l’échelle de l’écosystème open source.
IoCs et artefacts clés 🧩
- URL d’exfiltration:
https://webhook.site/bb8ca5f6-4175-45d2-b042-fc9ebb8170b7
- Nom de dépôt:
Shai-Hulud
- Branche:
shai-hulud
- Fichier workflow:
.github/workflows/shai-hulud-workflow.yml
TTPs observées 🔍
- Vol d’identifiants (postes dev et CI)
- Exfiltration vers service externe (webhook.site)
- Abus de GitHub Actions (injection de workflow, persistance)
- Abus de jetons npm (publication de paquets trojanisés)
- Propagation par PRs et branches dédiées
- Automatisation avancée (IA) pour l’orchestration
Sonatype met également en avant des mesures de défense à adopter côté organisations (firewalls de dépôt, pinning des dépendances, surveillance continue). Article de type analyse de menace visant à documenter la campagne, ses mécanismes et ses risques pour la chaîne d’approvisionnement.
🧠 TTPs et IOCs détectés
TTPs
[‘Vol d’identifiants (postes dev et CI)’, ‘Exfiltration vers service externe (webhook.site)’, ‘Abus de GitHub Actions (injection de workflow, persistance)’, ‘Abus de jetons npm (publication de paquets trojanisés)’, ‘Propagation par PRs et branches dédiées’, ‘Automatisation avancée (IA) pour l’orchestration’]
IOCs
[‘URL d’exfiltration: https://webhook.site/bb8ca5f6-4175-45d2-b042-fc9ebb8170b7’, ‘Nom de dépôt: Shai-Hulud’, ‘Branche: shai-hulud’, ‘Fichier workflow: .github/workflows/shai-hulud-workflow.yml’]
🔗 Source originale : https://www.sonatype.com/blog/ongoing-npm-software-supply-chain-attack-exposes-new-risks