if ( !emtpy($headline_subheadline ) ) : ?>
Un package npm malveillant a atteint plus de 2 millions de téléchargements hebdomadaires en cachant sa charge utile dans une fonction de bibliothèque de routine plutôt que dans un script d’installation.
endif; ?>
Le blocage des scripts d’installation suspects pourrait ne plus suffire à atténuer les menaces provenant des dépendances JavaScript malveillantes utilisées dans les attaques de la chaîne d’approvisionnement logicielle.
Les chercheurs en sécurité de Checkmarx mettent en garde contre les attaquants qui utilisent un package malveillant appelé « indexed-btree » pour usurper l’identité de la bibliothèque triée-btree légitime, afin de propager des logiciels malveillants cachés dans le code d’exécution normal du package.
La campagne abandonne les scripts de préinstallation et de postinstallation courants dans les attaques récentes, utilisant plutôt une fonction de package de base pour fournir sa charge utile. Checkmarx a déclaré que le package malveillant était téléchargé près de 2 millions de fois par semaine avant d’être signalé et supprimé du registre le 3 septembre 2026. C’était environ 11 semaines après la mise en ligne de la première version malveillante, selon une analyse indépendante de l’auteur de Blogspan Alexander Baumgärtner.
Cette découverte intervient après que npm ait introduit des contrôles plus stricts autour des scripts de cycle de vie en juin.
Blockchain C2 combinée au vol de données Slack/Telegram
Le script malveillant a été intégré directement dans une méthode d’exécution « BTree.prototype.set », au lieu d’un hook d’installation dans le package.json du package. Lorsque la méthode reçoit une valeur de clé particulière, le code lance un chargeur de premier étage obscurci en tant que processus Node.js détaché.
Une fois lancé, le chargeur prend les empreintes digitales de l’hôte, collectant des informations telles que l’architecture du système d’exploitation, le nom d’hôte, le processeur, la mémoire et la disponibilité. Les données sont ensuite exfiltrées à l’aide du canal Slack codé en dur et des discussions Telegram.
Les attaquants ont caché l’adresse du serveur de commande et de contrôle (C2) dans un contrat intelligent sur la blockchain testnet Sepolia Ethereum.
« Le contrat expose les fonctions getter et setter que le malware interroge au lieu de demander un domaine simple », ont déclaré les chercheurs de Checkmarx. « Cette technique est plus résistante au retrait de domaine/IP que les approches C2 traditionnelles, car elle utilise le contrat intelligent comme pointeur vers une nouvelle adresse chaque fois que l’ancienne est supprimée.
Plus loin dans la chaîne, le malware crée des clés cryptographiques pour établir un secret partagé avec une clé publique récupérée de la blockchain. Ce secret est finalement utilisé pour déverrouiller une charge utile de deuxième étape à partir de deux morceaux cryptés du contrat intelligent.
Checkmarx n’a pas précisé ce que faisait le chargeur de deuxième étape, mais a souligné que le malware se nettoie après lui-même. Il contient « une fonctionnalité permettant de supprimer les fichiers malveillants et de supprimer le code de déclenchement de la fonction principale du prototype », ont noté les chercheurs.
Neuf packages supplémentaires élargissent la campagne
Checkmarx a également identifié neuf autres packages npm liés à la campagne, qui ont ensuite été supprimés du registre. Ceux-ci comprenaient l’index kv ordonné, le classement btree, la file d’attente d’emplacement prioritaire, le magasin btree-range, le btree-core, l’index btree-time, le cache btree-lru, la carte de clé voisine et la fenêtre de score coulissante.
Plusieurs de ces packages ont enregistré des centaines de milliers de téléchargements, tandis que btree-core a enregistré plus de 1,9 million de téléchargements.
Les opérateurs ont essayé de rendre l’écosystème de packages légitime, a noté Checkmarx, en maintenant un référentiel GitHub avec de nombreux commits tout en gardant le code malveillant lui-même hors du référentiel. Le compte GitHub associé utilisait également une image de profil générée par l’IA.
Checkmarx a déclaré que la campagne était en cours et que ses conclusions pourraient changer à mesure que l’enquête se développe. Il a partagé une liste d’indicateurs de compromission (IOC) que les équipes de sécurité peuvent utiliser pour la détection et la surveillance.
InfoMonde



