Paquets npm malveillants livrent un malware infostealer aux développeurs

La société de sécurité Socket a découvert dix paquets malveillants dans le dépôt npm qui ciblent les développeurs sur les systèmes Windows, macOS et Linux. Ces paquets, disponibles depuis juillet, utilisent le typosquatting et une obfuscation sophistiquée pour installer un malware infostealer. Le malware vole les identifiants des navigateurs, les clés SSH et les fichiers de configuration avant d'exfiltrer les données vers les attaquants.

Depuis le début de juillet, dix paquets npm malveillants circulent dans le gestionnaire de paquets JavaScript, accumulant 9 900 téléchargements avant leur suppression vers fin octobre. Découverts par Socket, une entreprise spécialisée dans la sécurité de la chaîne d'approvisionnement logicielle, les paquets utilisent des tactiques de typosquatting avec des noms imitant les légitimes, tels que typescriptjs (au lieu de TypeScript), deezcord.js, dizcordjs, dezcord.js, etherdjs, ethesjs, ethetsjs, nodemonjs, react-router-dom.js et zustand.js.

L'infection commence lors de l'installation via un script postinstall dans le fichier package.json. Ce script ouvre une fenêtre de terminal cachée spécifique au système d'exploitation et exécute un fichier app.js. Le app.js contient une obfuscation multicouche, incluant le codage URL et des instructions switch avec des calculs hexadécimaux et octaux, pour masquer ses routines malveillantes. Pour maintenir une apparence de légitimité, il affiche un faux CAPTCHA rendu en art ASCII, nécessitant une entrée utilisateur qui ne sert qu'à distraire.

Lors de l'activation, le malware envoie l'adresse IP de la cible vers un serveur de l'attaquant et télécharge un binaire spécifique à la plateforme. Il passe ensuite à l'exécution Python via PyInstaller, lançant une application non obfuscée nommée data_extracter. Cet outil fouille les répertoires système à la recherche de données sensibles, y compris les profils des navigateurs Firefox et Chromium, les clés SSH, les identifiants AWS dans ~/.aws/credentials, les bases de données SQLite, les fichiers de configuration JSON, les cookies de navigateur, les trousseaux de clés et les jetons d'authentification. Les informations volées sont compressées en fichier ZIP et transmises aux attaquants.

Bien que les paquets ne soient plus disponibles sur npm depuis fin octobre, leur disponibilité pendant trois mois et leur obfuscation avancée soulèvent des préoccupations quant à des variantes non détectées. Cet incident met en lumière les vulnérabilités persistantes de npm aux attaques de chaîne d'approvisionnement, incitant les développeurs à vérifier les paquets et à surveiller étroitement les installations.

Ce site utilise des cookies

Nous utilisons des cookies pour l'analyse afin d'améliorer notre site. Lisez notre politique de confidentialité pour plus d'informations.
Refuser