IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Les paquets npm malveillants font partie d'un "déferlement" de logiciels malveillants qui frappent les référentiels,
La popularité des paquets en fait de parfaits vecteurs d'attaques

Le , par Bill Fassinou

90PARTAGES

9  0 
Les paquets npm continuent d'être détournés pour être utilisés comme des vecteurs de logiciels malveillants par les pirates informatiques. Après les paquets "ua-parser-js", "rc" et "coa", la société de sécurité JFrog a découvert 17 nouveaux paquets malveillants dans le dépôt npm (le gestionnaire de paquets Node.js). Ces paquets corrompus cherchent intentionnellement à attaquer et à voler les informations d'identification du site d'un utilisateur. Les chercheurs ont rapporté que la plupart des paquets signalés volaient des informations d'identification ou d'autres informations pour les serveurs Discord.

Le dépôt npm, où environ 11 millions de développeurs échangent plus d'un million de paquets entre eux, inquiète de plus en plus les utilisateurs. Le nombre de paquets qui ont été détournés pour être utilisés comme des logiciels malveillants a considérablement augmenté cette année. Les attaquants y insèrent généralement des mineurs de cryptomonnaies ou des chevaux de Troie. Cette fois, la plupart des 17 paquets malveillants semblent avoir été diffusés par différents acteurs de la menace qui ont utilisé divers techniques et efforts pour inciter les développeurs à télécharger des logiciels malveillants au lieu des logiciels bénins prévus.



Cette dernière découverte s'inscrit dans la continuité d'une tendance repérée il y a quelques années, selon laquelle des acteurs malveillants glissent en douce des voleurs d'informations, des enregistreurs de frappe ou d'autres types de logiciels malveillants dans des paquets disponibles dans npm, RubyGems, PyPi ou un autre référentiel. Dans de nombreux cas, le nom du paquet malveillant est différent d'une seule lettre de celui d'un paquet légitime. Souvent, le paquet malveillant comprend le même code et les mêmes fonctionnalités que le paquet dont il usurpe l'identité et ajoute du code caché qui exécute des actions néfastes supplémentaires.

« Nous assistons à un récent déferlement de logiciels malveillants hébergés et diffusés par le biais de dépôts de logiciels open source », ont expliqué dans un billet de blogue mercredi les chercheurs Andrey Polkovnychenko et Shachar Menashe de JFrog. « Les dépôts publics sont devenus un instrument pratique pour la distribution de logiciels malveillants : le serveur du dépôt est une ressource de confiance, et la communication avec lui n'éveille les soupçons d'aucun antivirus ou pare-feu. En outre, la facilité d'installation via des outils d'automatisation tels que le client npm, fournit un vecteur d'attaque mûr », ont-ils ajouté.

Ainsi, une grande partie des paquets signalés par l'équipe de recherche volaient des informations d'identification ou d'autres informations pour les serveurs Discord. Discord est devenu une plateforme populaire permettant aux gens de communiquer par texte, voix et vidéo. Il compte désormais maintenant plus de 350 millions d'utilisateurs enregistrés. Les serveurs compromis peuvent être utilisés comme canaux de commande et de contrôle pour les botnets ou comme proxy lors du téléchargement de données depuis un serveur piraté. Certains paquets ont volé des données de cartes de crédit associées à des comptes Discord piratés.

Deux paquets - discord-lofy et discord-selfbot-v14 - proviennent d'un auteur utilisant le nom de davisousa. Ils sont présentés comme des modifications de la bibliothèque légitime populaire discord.js, qui permet l'interaction avec l'API Discord. Selon les chercheurs, le logiciel malveillant intègre la bibliothèque originale discord.js comme base et injecte ensuite du code malveillant obfusqué dans l'un des fichiers du paquet. Ils ont ajouté que la version obfusquée du code est énorme : « plus de 4 000 lignes de code illisible et contenant toutes les méthodes d'obfuscation possibles ».

Ils citent, entre autres : noms de variables tronqués, chaînes chiffrées, aplatissement du code, etc. Grâce à une analyse manuelle et à l'utilisation de scripts, ils ont pu désobfusquer le paquet et, selon les chercheurs, sa charge utile finale est assez simple : la charge utile itère simplement sur les dossiers de stockage local des navigateurs connus (et les dossiers spécifiques à Discord), puis y recherche des chaînes ressemblant à un jeton Discord en utilisant une expression régulière. Par la suite, tout jeton trouvé est renvoyé via HTTP POST au serveur codé en dur "https://aba45cf.glitch.me/polarlindo".



« En raison de la popularité de cette charge utile d'attaque, de nombreux programmes d'acquisition de jetons Discord, accompagnés d'instructions de construction, ont été publiés sur GitHub. Un attaquant peut prendre l'un de ces modèles et développer un logiciel malveillant personnalisé sans avoir de grandes compétences en programmation - ce qui signifie que n'importe quel pirate novice peut le faire facilement en quelques minutes », expliquent les chercheurs. Un autre paquet nommé fix-error prétendait réparer des erreurs dans un "selfbot" de Discord.

Il contenait également un code malveillant qui avait été obfusqué, mais qui, dans ce cas, était beaucoup plus facile à désobfusquer pour les chercheurs. Les chercheurs ont rapidement déterminé que le code caché était une version volée de PirateStealer, une application qui vole les informations de carte de crédit, les identifiants de connexion et d'autres données privées stockées dans un client Discord. Elle fonctionne en injectant un code JavaScript malveillant dans le client Discord. Ce code "espionne" ensuite l'utilisateur et envoie les informations volées à une adresse codée en dur.

Un troisième exemple est prerequests-xcode, un paquet qui contient une fonctionnalité de cheval de Troie d'accès à distance. « En inspectant le code du paquet, nous avons identifié qu'il contient un port Node.JS de DiscordRAT (écrit à l'origine en Python) qui donne à l'attaquant un contrôle total sur la machine de la victime. Le logiciel malveillant est obfusqué par l'outil en ligne populaire obfuscator.io, mais dans ce cas, il suffit d'inspecter la liste des commandes disponibles pour comprendre la fonctionnalité du RAT (copié mot à mot) », ont expliqué les chercheurs.

Comme indiqué précédemment, npm n'est pas le seul dépôt de logiciels libres à être infiltré par des paquets malveillants. Le dépôt PyPi pour Python a vu sa part de paquets chargés de logiciels malveillants, tout comme RubyGems. Par ailleurs, les chercheurs mettent en garde que les personnes qui téléchargent des paquets open source doivent s'assurer que l'élément qu'elles téléchargent est légitime et qu'il ne s'agit pas d'un logiciel malveillant se faisant passer pour quelque chose de légitime. Les grandes organisations qui utilisent beaucoup de logiciels open source peuvent trouver utile d'acheter des services de gestion de paquets.

Source : JFrog

Et vous ?

Quel est votre avis sur le sujet ?
Que pensez-vous du détournement continu des paquets npm ?
Avez-vous déjà eu à faire l'un de ces paquets contenant des logiciels malveillants ? Si oui, partagez votre expérience.

Voir aussi

Des logiciels malveillants ont été découverts dans le très populaire paquet npm "ua-parser-js", notamment un mineur de cryptomonnaie et un cheval de Troie

Un package npm malveillant ouvre des portes dérobées sur les ordinateurs des programmeurs, le code JavaScript douteux se faisant passer pour une bibliothèque liée à la plateforme Twilio

La bibliothèque npm populaire "coa" est détournée pour voler les mots de passe des utilisateurs, le paquet npm "rc" serait également compromis

Quatre packages npm trouvés en train d'ouvrir des shells sur des systèmes Linux et Windows. Tout ordinateur avec l'un de ces packages installés « doit être considéré comme totalement compromis »

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de walfrat
Membre émérite https://www.developpez.com
Le 13/12/2021 à 12:31
J'ai une question : qu'en est-il de Maven au juste pour le monde Java ?

Dois-je m'inquiéter du fait qu'on en entend pas parler ?
0  0