Des malwares ont �t� d�couverts dans le tr�s populaire paquet npm "ua-parser-js"
notamment un mineur de cryptomonnaie et un cheval de Troie
Les paquets npm deviennent de plus en plus des vecteurs de logiciels malveillants. Les d�veloppeurs ont r�cemment d�couvert que plusieurs versions du paquet npm populaire "ua-parser-js", qui est t�l�charg� des millions de fois par semaine, contiennent du code malveillant. Des pirates auraient d�tourn� le paquet afin de s'en servir pour infecter des dispositifs Linux et Windows avec des logiciels de minage de cryptomonnaies et des chevaux de Troie qui volent des mots de passe dans le cadre d'une attaque de la cha�ne d'approvisionnement. Un pirate distant peut prendre le contr�le d'un appareil qui ex�cute une version infect�e du paquet.
ua-parser-js est d�tourn� pour extraire des cryptomonnaies
Le paquet ua-parser-js est utilis� pour analyser l'agent utilisateur d'un navigateur afin d'identifier le navigateur, le moteur, le syst�me d'exploitation, le processeur et le type/mod�le de p�riph�rique d'un visiteur. Il est tr�s populaire, avec des millions de t�l�chargements (environ 7 millions) par semaine et plus de 24 millions de t�l�chargements depuis le d�but de ce mois. En outre, le paquet est utilis� dans plus d'un millier d'autres projets, y compris ceux de Facebook, Microsoft, Amazon, Instagram, Google, Slack, Mozilla, Discord, Elastic, Intuit, Reddit, et de nombreuses autres entreprises bien connues.
Mais plusieurs versions du paquet ont �t� d�tourn�es pour un usage malveillant. Il semble en effet qu'un ATO (account takeover - prise de contr�le de compte) se soit produit, le compte de l'auteur ayant �t� d�tourn� en raison d'une fuite de mot de passe ou d'une tentative de force brute. � J�ai remarqu� quelque chose d�inhabituel quand mon adresse e-mail a �t� soudainement flood�e par des spams provenant de centaines de sites �, a d�clar� le d�veloppeur d�ua-parser-js, Faisal Salman, dans un rapport de bogue sur GitHub. Il s'est fait pirater et des versions malveillantes de son package avaient �t� publi�es par les attaquants.
Au total, trois nouvelles versions du paquet ont �t� publi�es dans le but d'inciter les utilisateurs � les t�l�charger. Alors que la version pr�c�dente (propre) �tait 0.7.28, l'attaquant a publi� des paquets identiques 0.7.29, 0.8.0 et 1.0.0, chacun contenant du code malveillant activ� � l'installation. L'auteur du paquet a rapidement r�agi en publiant les versions 0.7.30, 0.8.1 et 1.0.1 afin de minimiser le nombre de personnes installant par inadvertance un paquet malveillant. Cette capture d'�cran annot�e des informations du registre montre qu'il s'est �coul� environ 4 heures entre l'attaque et la solution de contournement :
Malheureusement, le code malveillant serait rest� t�l�chargeable environ 3 heures apr�s la correction. Selon des experts, la plupart des paquets malveillants t�l�charg�s quotidiennement sur npm tentent de voler des cl�s d'environnement de mani�re g�n�rique. Cependant, ces versions compromises ciblaient Windows et Linux + macOS d'une mani�re l�g�rement diff�rente. Alors que les versions du script t�l�chargeaient et ex�cutaient une application d'extraction de cryptomonnaies sur macOS et les syst�mes d'exploitation Linux, la version Windows comprenait �galement un cheval de Troie.
Toutefois, les analystes de BleepingComputer - qui ont eu acc�s au code malveillant - ont d�clar� que bien que l'application d'extraction de cryptomonnaies soit pass�e inaper�ue par la majorit� des logiciels antivirus Windows le cheval de Troie aurait �t� d�tect� et arr�t� par au moins une douzaine d'entre eux, dont les plus populaires comme Gdata et Symantec. Dans les cas de Linux et macOS, bien que l'on ne puisse pas �liminer pour le moment la probabilit� qu'il comprenne �galement le cheval de Troie int�gr� � l'outil de minage de cryptomonnaie, l'exp�rience ant�rieure avec ce code indique que ce n'est pas le cas.
Selon les analystes de BleepingComputer, lorsque les paquets compromis sont install�s sur l'appareil d'un utilisateur, un script "preinstall.js" v�rifie le type de syst�me d'exploitation utilis� sur l'appareil et lance soit un script shell Linux, soit un fichier batch Windows. Si le paquet se trouve sur un appareil Linux, un script "preinstall.sh" sera ex�cut� pour v�rifier si l'utilisateur se trouve en Russie, en Ukraine, au Belarus et au Kazakhstan. Si le p�riph�rique n'est pas situ� dans ces pays, le script t�l�chargera le programme "jsextension" depuis 159[.]148[.]186[.]228 et l'ex�cutera.
Le programm jsextension est un mineur de la cryptomonnaie Monero XMRig, qui n'utilisera que 50 % du processeur de l'appareil pour �viter d'�tre facilement d�tect�. Pour les appareils Windows, le fichier batch t�l�charge �galement le mineur de XMRig Monero, l'enregistre sous le nom de "jsextension .exe" [VirusTotal] et l'ex�cute. En outre, le fichier batch t�l�chargera un fichier sdd.dll et l'enregistrera sous le nom de create.dll. La DLL t�l�charg�e est un cheval de Troie voleur de mots de passe (probablement DanaBot) qui tentera de voler les mots de passe stock�s sur l'appareil.
Lorsque la DLL est charg�e � l'aide de la commande regsvr32.exe -s create.dll, elle tente de voler les mots de passe d'une grande vari�t� de programmes, notamment les clients FTP, VNC, les logiciels de messagerie, les clients de messagerie �lectronique et les navigateurs.
Alors, que doivent faire les utilisateurs de ua-parser-js ?
En plus de voler les mots de passe des programmes ci-dessus, la DLL ex�cutera un script PowerShell pour voler les mots de passe du gestionnaire d'identifiants de Windows. Cette attaque semble avoir �t� men�e par le m�me acteur de la menace qui se cache derri�re d'autres paquets npm malveillants d�couverts cette semaine. Les chercheurs de la soci�t� de s�curit� open source Sonatype ont d�couvert trois paquets npm malveillants utilis�s pour d�ployer des applications de minage de cryptomonnaies sur des appareils Linux et Windows d'une mani�re presque identique.
En raison de l'impact g�n�ralis� de cette attaque de la cha�ne d'approvisionnement, il est fortement conseill� � tous les utilisateurs du ua-parser-js de v�rifier l'absence de logiciels malveillants dans leurs projets. Cela implique de v�rifier l'existence de jsextension.exe (Windows) ou de jsextension (Linux) et de les supprimer s'ils sont trouv�s. Pour les utilisateurs de Windows, vous devez analyser votre appareil � la recherche d'un fichier create.dll et le supprimer imm�diatement. Seul Windows a �t� infect� par le cheval de Troie voleur de mots de passe.
Mais il est sage pour les utilisateurs de Linux de supposer que leur appareil a �t� enti�rement compromis. Par ailleurs, WhiteSource - une soci�t� qui analyse les composants open source � la recherche de vuln�rabilit� - estime que vous �tes responsable de votre cha�ne d'approvisionnement en logiciels libres. Selon lui, cet incident n'est que la partie �merg�e de l'iceberg des incidents qui se produisent dans l'�cosyst�me npm.
WhiteSource dit avoir identifi� et signal� au cours du mois dernier plus de 350 paquets npm uniques comportant une ou plusieurs versions malveillantes, soit prises en charge via des ATO, soit cr��es dans le seul but de causer divers types de dommages aux utilisateurs finaux. Ainsi, pour pr�venir les attaques de la cha�ne d'approvisionnement, il vous recommande de ne jamais utiliser le m�me mot de passe pour plusieurs sites Web et de toujours activer le 2FA (l'authentification � double facteur) si vous �tes un responsable de paquets.
Source : Rapport de bogue pour ua-parser-js
Et vous ?
Quel est votre avis sur le sujet ?
Avez-vous �t� infect� par les versions malveillantes du paquet ua-parser-js ? Si oui, quels ont �t� les impacts ?
Que pensez-vous du d�tournement r�p�t� des paquets npm populaires au cours des derniers mois ? L'�cosyst�me est-il toujours s�r ?
Voir aussi
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 �
Un projet Node.js sur deux audit� par les outils de npm aurait au moins une vuln�rabilit�, une sur dix d'entre elles est critique
Des hackers ont gliss� une porte d�rob�e dans une biblioth�que open source largement utilis�e pour voler des bitcoins
Plus de 75% des vuln�rabilit�s dans les projets open source r�sident dans des d�pendances indirectes, plut�t que dans les composants directement charg�s
Partager