Face aux compromissions, GitHub durcit la sécurité de npm
Utilisateurs de npm, préparez-vous à des changements sur l’authentification et la publication.
GitHub vient de faire passer le message. Il entend réduire, « dans un avenir proche », la gamme d’options disponibles. Ne resteront plus que :
- La publication locale avec MFA obligatoire
- Les tokens granulaires avec durée de vie limitée à 7 jours
- Le trusted publishing
Dans ce cadre, les tokens “classiques” (legacy) seront supprimés. Il en ira de même pour le MFA à base de codes TOTP : il faudra utiliser des méthodes FIDO. Quant aux tokens granulaires, ils expireront plus vite s’ils incluent des permissions de publication.
GitHub compte aussi paramétrer la publication de sorte que les tokens ne seront pas autorisés par défaut. Objectif : encourager l’usage de la publication locale avec MFA… ou du trusted publishing. Cette fonctionnalité implémente un standard défini par l’OpenSSF. Elle utilise l’authentification OIDC pour créer une relation de confiance entre npm et les fournisseurs CI/CD (pour le moment, GitHub Actions et les pipelines GitLab, les exécuteurs autohébergés n’étant pas pris en charge). PyPi fut le premier gestionnaire de paquets à l’adopter, en 2023. RubyGems, crates.io et NuGet, entre autres, ont suivi.
npm récemment compromis par un ver
Sur npm, le trusted publishing est intégré depuis juillet 2025. Il était initialement question d’en laisser se développer l’usage sans incitation particulière. Mais le contexte actuel ne le permet pas, affirme GitHub.
Ce contexte, c’est celui d’une recrudescence des attaques sur les registres de paquets logiciels. Illustration avec celle dite Shai-Hulud (du nom d’un ver des sables dans Dune). Elle a ciblé l’écosystème npm.
À l’origine, il y a possiblement une campagne de phishing ayant ciblé les développeurs, invités à “mettre à jour” leurs options de connexion MFA.
Les comptes ainsi compromis ont servi à publier un package contenant un malware. Celui-ci détectait des authentifiants dans l’environnement compromis (tokens npm et GitHub, clés d’API AWS/Azure/GCP) et les exfiltrait… tout en les rendant publics sur le compte GitHub des victimes.
Les tokens npm ainsi dérobés ont permis d’enclencher un processus de propagation automatisée du malware, ainsi apparenté à un ver. Plus de 500 packages auraient été compromis.
À l’heure actuelle, il reste possible, sur npm, de ne pas exiger le MFA pour la publication des paquets et la modification de leurs paramètres. Pour qui l’active, reste la possibilité d’autoriser les tokens, granulaires ou legacy.
Les tokens legacy (aussi dits jetons d’automatisation) permettent de télécharger des paquets et d’en publier. Ils héritent des permissions dont bénéficie l’utilisateur qui les crée.
Les tokens granulaires ont une date d’expiration et peuvent être associés à des organisations. On peut aussi les limiter à certains paquets et à des plages d’adresses IP.
Illustration générée par IA
The post Face aux compromissions, GitHub durcit la sécurité de npm appeared first on Silicon.fr.