En bref
Que s'est-il passé ?
Le 8 septembre 2025, plus de 20 paquets npm très populaires (chalk, debug, strip-ansi, color-convert, wrap-ansi…, cumulant des milliards de téléchargements/semaine) sont compromis après l'hameçonnage du mainteneur Josh Junon (Qix-).
Un e-mail de phishing très crédible imitant une réinitialisation 2FA (depuis support@npmjs.help) piège le mainteneur. Les attaquants ciblent sélectivement les paquets à fort volume et y injectent un voleur de cryptomonnaie.
Le malware détecte les portefeuilles Ethereum (window.ethereum), remplace les adresses crypto (BTC, ETH, Tron, LTC, BCH, Solana) et intercepte fetch dans le navigateur pour détourner les transactions.
MFA résistante au phishing (clés FIDO2), vigilance sur les e-mails de réinitialisation, vérification du domaine expéditeur, et épinglage et revue des mises à jour de dépendances à fort impact.
Chronologie de l'attaque
Le mainteneur Qix- est piégé par un faux e-mail de reset 2FA (support@npmjs.help) ; plus de 20 paquets à fort volume reçoivent un voleur de cryptomonnaie.
Comment l'attaquant a procédé
Cet incident met en jeu les vecteurs d'attaque suivants du catalogue SOCLE ; chacun renvoie à sa fiche, où l'on trouve les exigences qui le neutralisent :
La leçon à en tirer
2FA et trusted publishing sur les comptes de publication ; détection de republication anormale.
Les exigences SOCLE qui auraient limité cet incident
Cet incident se rattache à 2 exigences du référentiel, par domaine. Les satisfaire n'aurait pas forcément tout empêché, mais aurait réduit la probabilité de l'attaque, limité son impact ou accéléré sa détection :