Des acteurs malveillants injectent désormais des codes malveillants dans des projets légitimes afin de voler les actifs numériques d'utilisateurs non avertis. Selon des rapports, des chercheurs en cybersécurité ont mis au jour une campagne de logiciels malveillants sophistiquée ciblant les utilisateurs de cryptomonnaies via des paquets npm compromis.
D'après le rapport, l'attaque cible spécifiquement les utilisateurs des portefeuilles Atomic et Exodus. L'attaquant détourne les transactions en injectant des codes malveillants qui redirigent les fonds vers son propre portefeuille. Cette campagne s'inscrit dans la continuité des attaques menées contre les utilisateurs de cryptomonnaies via des failles de sécurité au sein de la chaîne d'approvisionnement logicielle.
L'attaque provient généralement des développeurs, la plupart installant sans le savoir des paquets npm compromis dans leurs projets. L'un de ces paquets,dentdans cette campagne, est « pdf-to-office ». D'apparence normale et légitime, il contient en réalité du code malveillant dissimulé. Une fois installé, ce paquet analyse l'appareil de l'utilisateur à la recherche de portefeuilles de cryptomonnaies et y injecte un code malveillant capable d'intercepter et de rediriger les transactions à l'insu de l'utilisateur.
Des chercheurs en cybersécurité signalent des codes malveillants ciblant les portefeuilles de cryptomonnaies
L'impact de cette attaque est catastrophique pour les victimes, les codes malveillants étant capables de rediriger discrètement les transactions de cryptomonnaies vers les portefeuilles contrôlés par l'attaquant. Ces attaques ciblent plusieurs actifs numériques, notamment Ethereum, Solana, XRPet l'USDT basé sur Tron. Le logiciel malveillant exécute l'attaque en remplaçant l'adresse du portefeuille légitime par celle contrôlée par l'attaquant au moment précis où l'utilisateur souhaite envoyer des fonds.
La campagne malveillante a été découverte par de ReversingLabs grâce à l'analyse de paquets npm suspects. Ces derniers ont relevé de nombreux signes révélateurs de comportements malveillants, notamment des connexions URL suspectes et des schémas de code similaires à ceux de paquets malveillants déjà identifiés. Ils ont également constaté que plusieurs campagnes ont tenté d'exploiter ce code malveillant cette semaine. Selon eux, les attaquants utilisent cette technique pour assurer leur persistance et échapper à la détection.
« Plus récemment, une campagne lancée le 1er avril a publié sur le gestionnaire de paquets npm un paquet nommé pdf-to-office, se faisant passer pour une bibliothèque de conversion de fichiers PDF en documents Microsoft Office. À son exécution, ce paquet injectait du code malveillant dans les logiciels de portefeuilles crypto légitimes Atomic Wallet et Exodus, installés localement, et écrasait ainsi des fichiers non malveillants existants », a indiqué ReversingLabs.
Mécanisme d'infection et injection de code
D'après l'analyse technique, l'attaque se déroule en plusieurs étapes et débute dès l'installation du logiciel malveillant par l'utilisateur. Elle se poursuit pardentdu portefeuille, l'tracde fichiers, l'injection de code malveillant et, finalement, le détournement de transactions. Les attaquants utilisent également des techniques d'obfuscation pour dissimuler leurs intentions, ce qui complique la détection par les outils traditionnels et fait qu'il est souvent trop tard pour l'utilisateur lorsqu'il s'en aperçoit.
Après l'installation, l'infection débute lorsque le package malveillant exécute son code malveillant ciblant le logiciel de portefeuille installé. Le codedentl'emplacement des fichiers de l'application du portefeuille avant de cibler le format de package ASAR utilisé par les applications basées surtron. Le code recherche spécifiquement les fichiers dans des chemins tels que « AppData/Local/Programs/atomic/resources/app.asar ». Une fois le fichier localisé, le malwaretracl'archive de l'application, y injecte son code malveillant, puis reconstruit l'archive.
Les injections ciblent spécifiquement les fichiers JavaScript présents dans le logiciel du portefeuille, notamment les fichiers fournisseurs comme « vendors.64b69c3b00e2a7914733.js ». Le logiciel malveillant modifie ensuite le code de gestion des transactions afin de remplacer les adresses de portefeuille réelles par celles de l'attaquant, en utilisant l'encodage base64. Par exemple, lorsqu'un utilisateur tente d'envoyer Ethereum, le code remplace l'adresse du destinataire par une version décodée de cette adresse.
Une fois l'infection terminée, le logiciel malveillant communique via un serveur de commande et de contrôle, envoyant des informations sur l'état de l'installation, notamment le chemin du répertoire personnel de l'utilisateur. Cela permet à l' attaquant de trac les infections réussies et potentiellement de recueillir des informations sur les systèmes compromis. Selon ReversingLabs, le vecteur malveillant a également montré des signes de persistance : le portefeuille Web3 est toujours présent sur les systèmes infectés même après la suppression du logiciel malveillant.

