Cybersécurité
Attaque de la chaîne d'approvisionnement NPM : ce qui s'est passé et comment y remédier
Securities.io applique des normes éditoriales rigoureuses et peut percevoir une rémunération pour les liens vérifiés. Nous ne sommes pas un conseiller en investissement agréé et ceci ne constitue pas un conseil en investissement. Veuillez consulter notre divulgation de l'affiliation.

L'industrie des cryptomonnaies et le monde en général ont récemment connu une crise de panique lorsque des experts en sécurité ont identifié une attaque de la chaîne d'approvisionnement ciblant l'écosystème Node.js qui avait déjà compromis jusqu'à 18 packages npm.
C’est parce que ces quelques packages voient des milliards de téléchargements par semaine.
Progiciels sont utilisés Pour distribuer des logiciels tiers. Souvent extraits d'une source externe via un gestionnaire de paquets, ils incluent généralement le code source, les bibliothèques, la documentation et les autres fichiers nécessaires à la création et à l'exécution du logiciel.
Désormais, un package contenant un logiciel malveillant se fait passer pour un logiciel légitime, alors qu'il s'agit en réalité d'un logiciel malveillant destiné à infecter un logiciel. En pénétrant dans un système, le logiciel malveillant contenu dans le package peut modifier des fichiers. voler des données, et même prendre le contrôle d'un système entier pour faire ce que souhaite l'attaquant.
Alors que d’autres écosystèmes open source majeurs comme Python et .NET sont tout aussi vulnérables aux attaques, l’utilisation généralisée de JavaScript le rend particulièrement exposé aux cybercriminels.
Node.js est un environnement d'exécution open source construit sur JavaScript qui permet aux développeurs d'exécuter leur code en dehors du navigateur Web.
Traditionnellement, le langage de programmation interprété principalement connu pour aider à rendre les pages Web interactives a été principalement utilisé pour le développement Web côté client dans les navigateurs, mais Node.js a étendu l'utilisation de JavaScript aux applications côté serveur et autres.
Avec Node.js, les développeurs peuvent créer des applications rapides et évolutives telles que des serveurs Web, des API, des outils, etc.
Il bénéficie d'un vaste écosystème de bibliothèques et d'outils open source disponibles via npm, ce qui simplifie le développement et fournit des solutions pour diverses fonctionnalités.
Node Package Manager, ou npm, est un outil clé dans le développement JavaScript, qui est utilisé Pour trouver, créer et gérer des packages de code. Il facilite la gestion des dépendances, favorise la collaboration et simplifie les flux de travail.
Ce registre de logiciels le plus grand au monde contient plus de 3 millions de packages de codes et son utilisation est entièrement gratuite.
N'importe qui peut télécharger tous les logiciels publics de npm sans inscription. Les développeurs open source utilisent npm pour partager et emprunter des logiciels, tandis que de nombreuses organisations l'utilisent pour gérer le développement privé.
Afin d'installer npm sur votre ordinateur, vous devez d'abord installer Node.js.
Le gestionnaire de paquets pour JavaScript est maintenu par npm, Inc., une filiale de GitHub, la première plateforme de développement logiciel au monde, qui appartient à Microsoft depuis 2018, lorsque le géant de la technologie l'a acquis pour 7.5 milliards de dollars pour donner du pouvoir aux développeurs.
La semaine dernière, l'outil utilisé par plus de 17 millions de développeurs dans le monde a été compromis, créant une panique sur Internet, mais seulement pour un court instant. Les experts l'ont détecté très tôt et les attaquants n'ont pas pu voler plus de 50 dollars. Voici ce qui s'est passé !
Que s'est-il passé lors de l'attaque de la chaîne d'approvisionnement NPM (septembre 2025)
Lors de l'attaque massive de la chaîne d'approvisionnement qui a touché l'écosystème JavaScript, des pirates ont compromis une série de packages npm avec des logiciels malveillants. L'objectif de cette attaque était de voler des actifs numériques à des utilisateurs peu méfiants.
En particulier, le compte npm du développeur « qix » a été piraté.
Qix est un compte de maintenance open source qui a été compromis par une attaque de phishing. Ce a permis à des attaquants d'infecter 18 packages npm populaires avec du code malveillant. Au total, ces packages sont téléchargés des centaines de millions de fois chaque semaine. sont intégrés dans les frameworks, les outils de développement et les services de production.
Les packages concernés incluent chalk, debug, color-name, wrap-ansi et ansi-styles, qui sont parmi les plus populaires, les packages npm moins populaires étant backslash, chalk-template et has-ansi.
Glissez pour faire défiler →
| Forfait | Version(s) compromise(s) | Action |
|---|---|---|
| déboguer | 4.4.2 | Épingler sur la version antérieure à 4.4.2 ; réinstaller ; analyser les journaux de construction |
| craie | 5.6.1 | Épingler sur la version antérieure à 5.6.1 ; redéployer la version propre |
| styles ansi | 6.2.2 | Épingler à la version antérieure à 6.2.2 ; auditer les départements en aval |
| expression régulière ansi | 6.2.1 | Épingler sur la version antérieure à 6.2.1 |
| bande-ansi | 7.1.1 | Épingler sur la version antérieure à 7.1.1 |
| envelopper-ansi | 9.0.1 | Épingler sur la version antérieure à 9.0.1 |
| couleur, conversion de couleur, chaîne de couleur, nom de couleur | 5.0.1 / 3.1.1 / 2.1.1 / 2.0.1 | Épinglez les versions pré-listées ; reverrouillez et reconstruisez |
| has-ansi, prend en charge la couleur, slice-ansi | 6.0.1 / 10.2.1 / 7.1.1 | Épingler sur les versions pré-listées |
| barre oblique inverse, is-arrayish, error-ex, simple-swizzle, chalk-template, prend en charge les hyperliens | 0.2.1 / 0.3.3 / 1.3.3 / 0.2.3 / 1.1.1 / 4.1.1 | Épingler sur les versions pré-listées |
| duckdb, @duckdb/node-api, @duckdb/node-bindings, @duckdb/duckdb-wasm | 1.3.3 / 1.3.3 / 1.3.3 / 1.29.2 | Évitez les versions répertoriées ; attendez les mises à jour du fournisseur |
Tous les colis concernés ont depuis été supprimé par le registre npm. En compromettant un mainteneur open source de grande valeur, l'attaque a militarisé la confiance dans l'écosystème des logiciels open source (OSS), car les développeurs n'auditent pas toutes les dépendances. ils utilisent. Ce qu'ils font, c'est compter sur leur utilisation et leur réputation, ainsi que la sécurité des registres.

Afin de compromettre les paquets, le pirate a utilisé la méthode du phishing. L'attaquant a d'abord lancé une campagne de phishing pour détourner le compte d'un mainteneur de paquet npm, puis a injecté son code malveillant dans les paquets npm avant de télécharger ses versions compromises.
Le développeur Josh Junon a été victime d'un e-mail de phishing faisant partie d'une vaste campagne imitant npm. Les attaquants ont donc utilisé un site de phishing imitant la page de connexion de npm pour voler ses identifiants. Dès leur intrusion, ils ont bloqué l'accès à Junon en modifiant l'adresse e-mail enregistrée pour son compte npm.
« Salut, oui, je me suis fait avoir. Désolé tout le monde, c'est très gênant. » écrit Junon sur HackerNews, confirmant l'incident. Il a expliqué, avant de préciser, que seul npm était concerné :
« À première vue, ça avait l'air sérieux. Je ne cherchais pas d'excuses, j'avais juste eu une semaine chargée et une matinée stressante, et j'essayais juste de rayer quelque chose de ma liste de choses à faire. J'ai fait l'erreur de cliquer sur le lien au lieu d'aller directement sur le site. »
L'e-mail de phishing provenait de support [at] npmjs [dot] help et utilisait une tactique de peur pour inciter Junon à cliquer sur le lien, ce qui le redirigeait vers le site de phishing.
Se faisant passer pour npm, les attaquants lui ont demandé de mettre à jour ses identifiants 2FA, affirmant faire partie d'un « engagement continu envers la sécurité des comptes » et qu'ils demandaient la même chose à tous les utilisateurs.
« Nos dossiers indiquent que plus de 12 mois se sont écoulés depuis votre dernière mise à jour 2FA », indiquait l'e-mail de phishing, ajoutant que les personnes disposant d'« identifiants 2FA obsolètes seront temporairement verrouillés à partir du 10 septembre 2025, afin d'empêcher tout accès non autorisé ».
Le même e-mail a également été utilisé pour cibler d'autres mainteneurs et développeurs de packages.
Étant donné l'utilisation généralisée des packages concernés, cela aurait pu devenir un incident majeur si ça n'avait pas été traité si vite.
Comme Charlie Erickson d'Aikido Security noté dans un rapport, d'innombrables sites Web ont évité des dommages très graves suite à cette attaque, où les packages npm contenaient un morceau de code qui s'exécuterait sur le client d'un site Web.
« Ce malware est essentiellement un intercepteur basé sur un navigateur qui détourne le trafic réseau et les API des applications », a-t-il déclaré dans son analyse de l'attaque. « Sa dangerosité réside dans son action à plusieurs niveaux : il modifie le contenu affiché sur les sites web, falsifie les appels d'API et manipule ce que les applications des utilisateurs croient signer. Même si l'interface semble correcte, la transaction sous-jacente peut être erronée. être redirigé en arrière-plan.
Le code malveillant a été conçu voler des cryptomonnaies. L'attaquant analyse les chaînes de caractères à la recherche d'adresses de portefeuilles cryptographiques, mettant en danger ceux qui travaillent sur des applications liées à la cryptographie.
Le logiciel malveillant agissait discrètement dans le navigateur, à l'insu de l'utilisateur, en réécrivant les adresses de portefeuille et en redirigeant les fonds vers des comptes contrôlés par l'attaquant. Il détournait et manipulait directement les transactions Bitcoin. (BTC ), Etherum (ETH ), Solana (SOL ), Tron (TRX )Litecoin (LTC ), et Bitcoin Cash (BCH ) sur un système compromis.
Pour ce faire, le code malveillant surveillait les interfaces de programmation des applications du navigateur. comme interfaces de récupération et de portefeuille comme window.ethereum.
Le code malveillant « intercepte silencieusement l'activité crypto et Web3 dans le navigateur, manipule les interactions du portefeuille et réécrit les destinations de paiement afin que les fonds et les approbations sont redirigés « à des comptes contrôlés par des attaquants sans aucun signe évident pour l'utilisateur », a déclaré Erickson.
Une fois terminé, le logiciel malveillant couvre ses traces tout en restant en arrière-plan pour intercepter toutes les transactions futures sur le réseau de la victime sans méfiance.
Compte tenu de la gravité de l'attaque, Charles Guillemet, directeur technique du fournisseur de portefeuilles matériels Ledger, a mis en garde les utilisateurs de cryptomonnaies contre la prudence lors de la confirmation des transactions en chaîne. Les paquets concernés, selon lui noté dans le post, ont déjà été téléchargés plus d'un milliard de fois.
L'attaque à grande échelle de la chaîne d'approvisionnement, a-t-il partagé avec la communauté, est ciblant portefeuilles logiciels cryptographiques avec le charge utile malveillante « échangeant silencieusement des adresses cryptographiques à la volée pour voler des fonds ».
Si vous utilisez un portefeuille matériel, vérifiez chaque transaction avant de signer et vous serez en sécurité. Si vous n'utilisez pas de portefeuille matériel, abstenez-vous d'effectuer des transactions on-chain pour le moment.
– Guillemet
Pendant ce temps, 0xngmi, le fondateur pseudonyme de DefiLlama, une plateforme d'analyse cryptographique, s'est tourné vers X, pour share que « la zone d'impact effective est bien plus petite que « tous les sites Web », car seuls les projets qui pourraient être en danger ont été mis à jour après le paquet npm infecté par un logiciel malveillant a été publié. Cependant, « il est plus sûr d’éviter d’utiliser les sites Web de cryptographie jusqu’à ce que la situation se calme et qu’ils nettoient les mauvais packages », a-t-il ajouté.
Au final, les pirates n'ont pu voler que 50 dollars de cryptomonnaies lors d'une attaque aussi massive sur la chaîne d'approvisionnement. Ces 50 dollars concernent des Ethers et plusieurs cryptomonnaies mèmes comme Brett et Andy, entre autres.

Cependant, c'était plus une question de chance que de quoi que ce soit d'autre, car la plateforme de renseignement cryptographique Security Alliance noté sur X :
Cela aurait pu être bien pire. Une porte dérobée déployée furtivement ciblant les machines des développeurs et privilégiant la persistance aurait pu rester inaperçue pendant on ne sait combien de temps.
Depuis, de nombreuses applications cryptographiques comme Aave, Uniswap, Ledger, Jupiter, MetaMask, Phantom, Explosion, et d’autres ont informé leur public qu’ils étaient à l’abri de l’attaque npm.
Bien que l'attaque ait échoué, elle rappelle brutalement aux développeurs que, pour une sécurité optimale, ils doivent aller au-delà de leur propre code source. Même les dépendances logicielles fiables et largement utilisées peuvent également l'être. être compromis à tout moment.
Ici, les plateformes de codage comme GitHub et npm doivent également faire davantage pour garantir la sécurité des packages largement utilisés.
« Les colis les plus populaires devraient nécessiter une attestation attestant qu'ils proviennent d'une source fiable et non pas simplement d'un endroit aléatoire sur Internet. »
– Eriksen

Après tout, les compromissions du référentiel de code peuvent être extrêmement désastreuses pour les développeurs, qui peuvent finir par abandonner complètement leurs projets à la suite d'un tel incident.
Cet incident témoigne de l'interconnexion et de la vulnérabilité de l'écosystème logiciel actuel face aux attaques. Un seul compte compromis peut offrir aux attaquants une portée considérable, d'où l'importance cruciale de mettre en œuvre des mesures de sécurité renforcées pour la chaîne d'approvisionnement à chaque étape du processus de développement.
Protection contre la menace croissante des logiciels malveillants
Avec l'augmentation des menaces de logiciels malveillants et le les attaques devenant plus avancées et ciblées, il est important pour que les utilisateurs be éduqués et toujours être vigilant sur toutes les plateformes.
Les logiciels malveillants ou malwares sont en fait l’un des types de cyberattaques les plus courants. Ici, les attaquants développent un code logiciel ou un programme informatique dans le but d'accéder à l'ordinateur de la victime ou de causer des dommages à l'insu de la victime. été compromis.
Chaque année, des milliards d'attaques de logiciels malveillants se produisent dans le monde entier, sur tous types d'appareils et de systèmes d'exploitation. Grâce à ces logiciels malveillants, les cybercriminels prennent en otage non seulement les appareils, mais aussi des réseaux d'entreprise entiers.
En obtenant un accès non autorisé aux appareils de la victime, les attaquants volent des actifs numériques et des données sensibles, notamment des identifiants de connexion, des numéros de carte de crédit et d'autres informations précieuses. Les attaques de logiciels malveillants ciblent de plus en plus les entreprises, car celles-ci détiennent d’importantes quantités de données personnelles, que les pirates peuvent exploiter pour extorquer de grosses sommes d’argent.
Les données montrent que la majorité (59 %) des organisations ont été victimes d'une telle attaque En 2024, même les plus petites entreprises ne sont pas à l'abri : 47 % d'entre elles ont été touchées par un rançongiciel l'an dernier. Parallèlement, le montant moyen des rançons a bondi de 500 % pour atteindre 2 millions de dollars durant cette période.
Le coût moyen de récupération après une attaque de logiciel malveillant a également grimpé jusqu’à 2.73 millions de dollars. L’une des plus grandes menaces auxquelles Internet est actuellement confronté est le malware, qui peut prendre différentes formes. formulaires ayant pour seul but de nuire aux systèmes informatiques et à leurs utilisateurs.
Les virus, les rançongiciels, les chevaux de Troie, les vers, les logiciels espions, les logiciels publicitaires et le cryptojacking sont tous des types de logiciels malveillants. sont conçus pour obtenir un accès non autorisé à un réseau ou endommager des systèmes informatiques.
En ce qui concerne les causes profondes des attaques, le plus grand 32 % des attaques concernent des attaquants exploitant des vulnérabilités, suivies par des informations d'identification compromises (29 %) puis des e-mails malveillants (23 %).
Maintenant, juste Comment peut-on se protéger de cette menace omniprésente ? La première étape, et la plus simple, consiste à toujours maintenir votre ordinateur et vos logiciels à jour. Aussi, les il est essentiel que vous ne le fassiez pas Cliquez sur presque tout sur Internet. En tant qu'utilisateur de cryptomonnaies, il faut se méfier des liens et ne surtout pas télécharger quoi que ce soit dont on doute.
Il en va de même pour les pièces jointes. Méfiez-vous des e-mails suspects et limitez le partage de fichiers au minimum. Il est prudent d’avoir un logiciel antivirus installé sur votre appareil.
Bien que cela soit inévitable, les organisations peuvent également se préparer aux attaques de logiciels malveillants en renforçant leurs défenses. Les moyens les plus simples d’y parvenir sont d’utiliser des mots de passe forts, une authentification multifacteur et des VPN, que les individus peuvent également utiliser pour se protéger plus efficacement..
Les organisations doivent surveiller en permanence les appareils pour détecter toute activité suspecte, évaluer les vulnérabilités et effectuer des tests d'intrusion. Parallèlement, les sauvegardes de données sensibles sur des disques déconnectés du réseau faciliteront la reprise après les attaques de logiciels malveillants.
Les employés doivent être formé à place de telles attaques mieux et réagissez rapidement en ayant des plans de réponse aux incidents et en sachant qui contacter sur suspectant une menace de logiciel malveillant.
En utilisant l'architecture réseau Zero Trust, les entreprises peuvent garantir que personne n'accède à des données ou des ressources qu'il ne devrait pas. Avec Zero Trust, les utilisateurs ne sont jamais dignes de confiance et sont toujours vérifiés.
Dans l'hyper-numérique d'aujourd'hui life, ces pratiques peuvent aider UN sauvegarder soi-même contre les périls d’un monde de plus en plus interconnecté.
Lorsqu'il s'agit de se protéger contre les packages malveillants, les recommandations générales de sécurité contre les logiciels malveillants s'appliquent également aux attaques npm, mais de Bien sûr, il existe des précautions supplémentaires et spécifiques à prendre, car l'écosystème est particulièrement vulnérable en raison de sa nature ouverte, de la réutilisation intensive de petits paquets et de grands arbres de dépendances.
Pour vous protéger de cette menace sérieuse, vous devez toujours vérifier la fiabilité du paquet avant de l'installer. Vérifier l'intégrité du paquet garantit que votre arborescence de dépendances n'a pas été altérée.
Lorsque vous recherchez des signes d'illégitimité, outre la source et la propriété du colis, examinez toutes les modifications apportées aux mainteneurs. Vous Au cours de cette réunion, Matthew a obtenu de précieux conseils et Linda lui a demandé de la tenir au courant de ses progrès. aussi voulez examinez ce que font les packages et leur nécessité.
Utilisez des outils de sécurité qui surveillent en permanence les nouvelles menaces et fournissent des conseils pratiques pour atténuer la situation. les contrôles d'audit npm peuvent être exécutés pour détecter les vulnérabilités connues dans les dépendances du projet. La mise en œuvre d'analyses de sécurité automatisées avant le déploiement garantira que seul le code vérifié et approuvé entre en production.
Désormais, pour vous protéger contre la dernière attaque de malware, vous devez épingler les packages concernés sur leurs versions les plus sûres avant la compromission via la fonctionnalité de remplacement dans package.json.
Exécutez un audit npm ou utilisez des outils d'analyse de composition logicielle (SCA) pour identifier les versions affectées dans votre arborescence de dépendances. Surveillez les indicateurs de compromission (IoC) en vérifiant vos journaux de build, vos environnements de développement et votre trafic sortant pour détecter toute activité suspecte.
Réflexions finales : Renforcer les dépendances open source
Les menaces sur Internet augmentent constamment et deviennent de plus en plus sophistiquées.
Avec attaquants tournant à de nouveaux vecteurs d'attaque et ciblage projets sous-financés, il devient crucial pour les développeurs, les entreprises et les utilisateurs de ne pas attendre que la menace se manifeste. apparaître avant intérim, mais à commencer mesures proactives parce qu'un maillon faible peut abattre un système entier.
C'est en restant informé des menaces émergentes et en auditant en permanence les chaînes d'approvisionnement en logiciels et En surveillant les menaces, nous pouvons véritablement nous protéger contre les cyber-risques en constante évolution.










