GitHub renforce la sécurité de npm avec l’authentification à deux facteurs obligatoire

GitHub

Suite à une attaque sophistiquée sur l’écosystème npm, GitHub impose désormais l’authentification à deux facteurs pour les publications locales. Les jetons classiques sont également progressivement supprimés et l’utilisation de la ‘publication de confiance’ est encouragée.

GitHub met en place des mesures plus strictes pour la publication de paquets sur la plateforme npm. Cette décision fait suite à la récente attaque Shai-Hulud, où des attaquants ont diffusé des logiciels malveillants via des paquets npm connus en utilisant des comptes compromis.

Cette situation est dangereuse car les paquets npm sont conçus pour être facilement installés depuis un registre avec une seule commande. Quiconque y injecte des logiciels malveillants peut les propager rapidement à grande échelle.

L’attaque du 14 septembre 2025 utilisait un ver capable de s’auto-répliquer et de voler des informations sensibles, y compris des jetons npm. GitHub a supprimé plus de 500 paquets du registre et a bloqué la propagation des modèles malveillants connus.

Contrôle renforcé

Selon GitHub, cet incident démontre que des contrôles d’authentification et de publication plus stricts sont cruciaux pour protéger la chaîne d’approvisionnement logicielle. Pour éviter que cela ne se reproduise, GitHub rend obligatoire l’utilisation de l’authentification à deux facteurs (2FA) pour la publication locale de paquets.

Outre la 2FA obligatoire, la prise en charge des jetons classiques est progressivement abandonnée. Ils seront remplacés par des jetons granulaires aux droits limités et d’une durée de validité maximale de sept jours. La 2FA basée sur TOTP est également abandonnée au profit de l’authentification FIDO basée sur WebAuthn.

De plus, GitHub désactive la possibilité de contourner la 2FA pour les publications locales. L’accès aux publications via jetons est désactivé par défaut, dans le but d’encourager les administrateurs à adopter la publication de confiance ou à rendre la 2FA obligatoire pour les actions d’écriture. GitHub promet un déploiement progressif avec support et documentation de migration pour limiter l’impact sur les flux de travail existants.

La publication de confiance – qui élimine le besoin de jetons dans les systèmes de build – est désormais disponible pour plusieurs gestionnaires de paquets, notamment PyPI, RubyGems et crates.io. GitHub souhaite accélérer son adoption au sein de npm.

Avec ces mesures, GitHub vise à restaurer la confiance dans l’écosystème npm et à prévenir les futures attaques. Il est conseillé aux développeurs de renforcer leurs paramètres de sécurité dès que possible et d’adopter la 2FA et la publication de confiance.