Le nouveau malware NPM trouve un moyen de contourner les défenses des scripts d’installation

Lucas Morel

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.

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.

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

Logiciel malveillantCybercriminalitéSécuritéSécurité des codesBibliothèques et frameworksDéveloppement de logiciels