Deux packages malveillants découverts dans le référentiel de packages npm se sont avérés dissimuler un malware voleur d’informations open source appelé TurkoRat.
Les packages – nommés nodejs-encrypt-agent et nodejs-cookie-proxy-agent – ont été collectivement téléchargés environ 1 200 fois et sont restés disponibles pendant plus de deux mois avant d’être identifiés et retirés.
ReversingLabs, qui a détaillé les détails de la campagne, a décrit TurkoRat comme un voleur d’informations capable de récolter des informations sensibles telles que les identifiants de connexion, les cookies de sites Web et les données des portefeuilles de crypto-monnaie.
Alors que nodejs-encrypt-agent était équipé du logiciel malveillant à l’intérieur, nodejs-cookie-proxy-agent s’est avéré déguiser le cheval de Troie en dépendance sous le nom axios-proxy.
nodejs-encrypt-agent a également été conçu pour se faire passer pour un autre module npm légitime connu sous le nom base d’agentsqui a été téléchargé plus de 25 millions de fois à ce jour.
La liste des packages malveillants et leurs versions associées sont répertoriées ci-dessous –
- nodejs-encrypt-agent (versions 6.0.2, 6.0.3, 6.0.4 et 6.0.5)
- nodejs-cookie-proxy-agent (versions 1.1.0, 1.2.0, 1.2.1, 1.2.2, 1.2.3 et 1.2.4) et
- axios-proxy (versions 1.7.3, 1.7.4, 1.7.7, 1.7.9, 1.8.9 et 1.9.9)
« TurkoRat n’est qu’une des nombreuses familles de logiciels malveillants open source proposés à des fins de » test « , mais qui peuvent également être facilement téléchargés et modifiés à des fins malveillantes », a déclaré Lucija Valentić, chercheuse sur les menaces chez ReversingLabs. a dit.
Les conclusions soulignent une fois de plus risque permanent des acteurs de la menace orchestrent les attaques de la chaîne d’approvisionnement via des packages open source et incitent les développeurs à télécharger du code potentiellement non fiable.
« Les organisations de développement doivent examiner les fonctionnalités et les comportements du code open source, tiers et commercial sur lequel elles s’appuient afin de suivre les dépendances et de détecter les charges utiles malveillantes potentielles qu’elles contiennent », a déclaré Valentić.
L’utilisation croissante de packages npm malveillants s’inscrit dans un schéma plus large d’intérêt croissant des attaquants pour les chaînes d’approvisionnement de logiciels open source, sans parler de la sophistication croissante des acteurs de la menace.
Plus inquiétant encore, les chercheurs de Checkmarx ont publié ce mois-ci de nouvelles recherches qui ont montré comment les acteurs de la menace pouvaient se faire passer pour des packages npm authentiques en « utilisant des lettres minuscules pour imiter les lettres majuscules dans les noms de packages d’origine » (par exemple, memoryStorageDriver vs memorystoragedriver).
« Cette usurpation d’identité de paquet malveillant amène la méthode d’attaque traditionnelle » Typosquatting « à un nouveau niveau, où les attaquants enregistrent des noms de paquets qui se composent exactement des mêmes lettres que les lettres légitimes, la seule différence étant la capitalisation », ont déclaré les chercheurs Teach Zornstein et Yehuda Gelb. a dit.
« Cela rend encore plus difficile pour les utilisateurs de détecter la tromperie car il peut être facile d’ignorer les différences subtiles de capitalisation. »
La société de sécurité de la chaîne d’approvisionnement a découvert que 1 900 des 3 815 packages avec des lettres majuscules dans leurs titres auraient pu être à risque d’attaques de copie sans un correctif poussé par les responsables du npm pour résoudre le problème, qui, a déclaré Checkmarx, a existait depuis décembre 2017.
La divulgation fait également suite à un autre avis de Check Point, qui identifié trois extensions malveillantes hébergées sur le marché des extensions VS Code. Ils ont été purgés à compter du 14 mai 2023.
Les modules complémentaires, nommés le plus joli java, Darcula Dark et python-vscode, ont été téléchargés plus de 46 000 fois et intègrent des fonctionnalités permettant aux acteurs de la menace de voler des informations d’identification, des informations système et d’établir un shell distant sur la machine de la victime.
Zero Trust + Deception : apprenez à déjouer les attaquants !
Découvrez comment Deception peut détecter les menaces avancées, arrêter les mouvements latéraux et améliorer votre stratégie Zero Trust. Rejoignez notre webinaire perspicace !
Il ne s’agit pas seulement de npm et du marché VS Code, car un ensemble similaire de bibliothèques malveillantes a également été découvert dans le référentiel de logiciels Python Package Index (PyPI).
Certains de ces packages ont été conçus pour distribuer un logiciel malveillant de clipper de crypto-monnaie appelé KEKWtandis que d’autres versions typosquattées du cadre de flask populaire incluaient fonctions de porte dérobée pour recevoir des commandes d’un serveur distant.
Un autre paquet Python découvert par la société israélienne Phylum cette semaine s’est avéré contenir une dépendance malveillante qui abritait une charge utile cryptée pour saisir les jetons Discord et voler le contenu du presse-papiers afin de détourner les transactions de crypto-monnaie.
Le package, appelé chatgpt-api par son développeur Patrick Pogoda et accessible via GitHub, a fourni la fonctionnalité annoncée (c’est-à-dire l’interaction avec l’outil ChatGPT d’OpenAI) dans le but de compléter la ruse. Le référentiel est toujours disponible au moment de la rédaction.
« Pour l’instant, cet acteur semble profiter de la récente montée explosive de la popularité de [Large Language Models] avec ce package chatgpt-api », a déclaré Phylum, ajoutant que l’acteur de la menace dispose probablement d’un mécanisme automatisé pour télécharger de nouvelles itérations de la dépendance malveillante à chaque fois qu’elle est supprimée et « maintenir une infection persistante ».