Mise à jour de novembre 2025 : Plus loin dans l’article, une explication de la deuxième attaque (« Shai‑Hulud 2.0 »)
Une cyberattaque de grande envergure visant l’écosystème NPM a débuté le 16 septembre 2025.
L’attaque a été surnommée « Shai-Hulud ».
L’attaque, qui est une évolution d’un incident précédent datant d’environ une semaine,
se propage comme un ver (worm) auto-réplicable,
et infecte des paquets populaires, y compris ceux de Nx et CrowdStrike.

Les principaux risques incluent le vol d’identifiants cloud (cloud credentials) et de clés de plateformes majeures,
l’auto-propagation via des comptes de développeur NPM (NPM developer accounts) compromis,
et la fuite de plus de 700 dépôts GitHub (GitHub repositories) publics.
Quelles sont les implications ? Et quelles actions entreprendre ?
Notez que les machines infectées sont considérées comme entièrement compromises (fully compromised) !
Il est recommandé de prendre des mesures immédiates, telles que l’analyse des paquets open source à l’aide d’outils SCA,
la suppression ou le verrouillage (pinning) des paquets à des versions sûres,
la réactualisation des autorisations d’accès aux dépôts externes,
et d’envisager la réinstallation des systèmes affectés.
À plus long terme, il est recommandé de prendre des mesures préventives supplémentaires, telles que l’utilisation d’outils de gestion des secrets (Secrets management),
l’activation d’alertes pour les paquets infectés, le durcissement des images (hardening), et plus encore.
Cette alerte souligne que la sécurité de la chaîne d’approvisionnement (supply chain security) s’étend désormais au-delà des CVE traditionnels et inclut également les informations d’identification,
les autorisations et les vulnérabilités CI/CD, ce qui nécessite une consultation urgente avec les équipes de sécurité.
Si vous avez besoin d’une aide immédiate pour résoudre ce problème, grâce à nos connaissances pratiques combinant DevSecOps / DevOps
et la protection du code et des applications, contactez-nous :
appsec@almtoolbox.com ou par téléphone : 072-240-5222
Écoutez ici une brève explication sur le sujet (2 minutes) :
Une explication plus approfondie sur le sujet (19 minutes) :
Les explications enregistrées ci-dessus concernent la première vague de l’attaque (septembre 2025)
Mise à jour importante : Shai‑Hulud 2.0 – Une nouvelle vague d’attaques depuis le 24/11/2025
Fin novembre 2025, une nouvelle vague améliorée de l’attaque a été identifiée, connue dans la communauté sous le nom de Shai‑Hulud 2.0 ou
« Sha1‑Hulud: The Second Coming », au cours de laquelle de nouvelles versions malveillantes ont été implantées dans des centaines de paquets NPM supplémentaires, avec des centaines de nouvelles versions utilisées par des dizaines de milliers de projets.
Cette vague est considérée comme une continuation directe de la campagne de septembre, mais avec des capacités de propagation, d’automatisation et de destruction plus avancées, et elle est toujours considérée comme un événement actif et en cours.
Quoi de neuf dans la deuxième vague ?
Dans la version 2.0, l’attaque utilise des scripts d’installation (install / preinstall lifecycle scripts) et de nouveaux fichiers de charge utile (payload) comme setup_bun.js et bun_environment.js, qui permettent d’exécuter du code malveillant dès la phase d’installation et sans interaction supplémentaire de la part du développeur. La charge utile pénètre beaucoup plus profondément dans l’environnement CI/CD : elle crée des fichiers tels que cloud.json, environment.json, truffleSecrets.json et tente même d’injecter un fichier de workflow pour obtenir un point d’ancrage persistant dans GitHub Actions.
De plus, la nouvelle attaque enregistre les machines infectées en tant que runners GitHub auto-hébergés (self-hosted GitHub runners) sous le nom de SHA1HULUD, ce qui permet à l’attaquant d’exécuter du code à sa guise au sein de l’infrastructure CI/CD de l’organisation sur la durée et de manière relativement discrète. Dans certains cas, une capacité de suppression et de perturbation des dépôts et des pipelines a également été documentée, de sorte qu’une tentative pour « éteindre » l’attaque pourrait entraîner de graves dommages au code et à l’infrastructure.
Étendue actualisée de l’impact
Comparée à la première vague, la seconde a considérablement élargi la portée de l’infection, avec des centaines de paquets NPM uniques infectés (en fait, près de 800), totalisant plus de 20 millions de téléchargements hebdomadaires,
et plus de 25 000 à 28 000 dépôts GitHub exposés à des secrets divulgués.
Plusieurs organisations connues, y compris de grandes entreprises SaaS et des projets open source populaires,
ont signalé rétrospectivement avoir été touchées et ont dû procéder à une rotation massive de leurs secrets et à une restauration complète de leur environnement CI/CD.
Le nouveau ver n’est plus limité à NPM : des rapports font état de tentatives de propagation à d’autres écosystèmes comme Maven, en utilisant les mêmes techniques de vol de secrets, d’enregistrement de runners malveillants et de publication de dépôts dédiés sur GitHub pour la collecte d’informations. Tout cela renforce la compréhension qu’il s’agit d’une campagne d’attaque de la chaîne d’approvisionnement large et continue, et non d’un événement isolé ou ponctuel.
Mise à jour de la liste des risques
En plus des risques déjà décrits dans l’article original (vol d’identifiants cloud, fuite de dépôts GitHub, etc.), la vague actuelle ajoute plusieurs points importants :
- Transformation de l’environnement CI/CD lui-même en un point de contrôle persistant pour l’attaquant, y compris des runners malveillants et des workflows dérobés (backdoored).
- Automatisation étendue du « worming » – une tentative systématique d’infecter davantage de paquets, de dépôts et d’organisations en utilisant des identifiants volés précédemment.
- Capacités d’escalade de privilèges (Privilege Escalation) dans les environnements Docker et exécution dans les environnements Linux, Windows et macOS, tout en tentant de s’échapper des conteneurs vers le système d’exploitation hôte.
Par conséquent, une machine ou un pipeline exposé à Shai‑Hulud 2.0 est considéré non seulement comme « entièrement compromis », mais aussi comme une base potentielle pour une propagation ultérieure à l’intérieur et à l’extérieur de l’organisation !
Recommandations d’action mises à jour :
En plus des recommandations existantes ci-dessus (analyse SCA, épinglage à des versions sûres, actualisation des autorisations, réinstallations, etc.), il est recommandé d’ajouter les actions suivantes :
- Effectuer une rotation agressive de tous les secrets stockés dans les environnements CI/CD, GitHub/GitLab, les clouds AWS/Azure/GCP et les registres de paquets – même en l’absence d’indication certaine d’une compromission.
- Effectuer un examen complet des pipelines CI de GitHub Actions / GitLab, y compris la détection de workflows inconnus (par exemple, ceux liés à des événements de discussion ou à de nouveaux runners), et leur suppression immédiate.
- Durcir la gestion des runners : limiter les runners auto-hébergés, surveiller les noms/étiquettes suspects (par exemple SHA1HULUD) et appliquer le principe de moindre privilège sur chaque runner.
- Utiliser des outils de SCA et de Secrets Scanning dédiés, capables de détecter également les schémas de vers et les comportements suspects (scripts au moment de l’installation, déclencheurs inhabituels dans les pipelines, etc.), et pas seulement les CVE standards.
- Envisager sérieusement d’utiliser des registres privés / proxys internes avec une liste blanche (allowlist), agissant comme un pare-feu,
afin de réduire la dépendance directe à l’égard du registre NPM public et d’empêcher le téléchargement de versions infectées en temps réel.
Liens utiles :
- Enregistrement du webinaire de formation : Présentation de SonarQube et des nouveautés du produit (notamment SCA et SBOM)
- Notre offre de solutions pour la protection du code et des applications, le développement sécurisé et le DevSecOps
- À vérifier : Les changements dans le catalogue Bitnami pourraient affecter votre CI/CD
- Explication de l’attaque de la chaîne d’approvisionnement NPM du 08/09/2025
- Enregistrement du webinaire de formation sur le durcissement des conteneurs avec Docker
Vous avez d’autres questions ?
Contactez-nous pour toute question, y compris les tarifs, les devis et plus encore : devops.fr@almtoolbox.com ou appelez-nous : +33 1 84 17 53 28 , 866-503-1471 (États-Unis / Canada) ou +31 85 064 4633 (International)
L’article a été publié pour la première fois en septembre 2025. Dernière mise à jour : décembre 2025.
L’image ci-dessus a été initialement mise en ligne sur YouTube sous une licence CC BY.
