Sonatype Research Labs a publié les résultats d'une étude montrant que six paquets npm obtenaient les adresses de leurs serveurs de commande et de contrôle à partir du portefeuille Ethereum d'un attaquant.
Trois de ces six paquets npm étaient des bibliothèques bien connues que des attaquants ont subtilement compromises. Toute personne ayant installé les versions affectées doit les supprimer et vérifier la présence de code subséquent qui aurait pu être exécuté.
Les attaquants ont compromis trois bibliothèques authentiques
Le chercheur de Sonatype, Adam Reynolds, explique que ces six paquets peuvent être divisés en deux catégories.
Il semble que les comptes de véritables bibliothèques s'occupant de la publication aient été compromis pour permettre la diffusion d'une version falsifiée.
Il s'agit de @kolbo/mcp@1.57.1, agentgui@1.0.1127 et godot-kit@1.0.1786316795. Ils ont placé un chargeur à la fin d'un fichier déjà inclus dans le paquet, préservant ainsi la fonctionnalité d'origine.
Les trois autres étaient des paquets spécialement conçus pour distribuer des logiciels malveillants. Il s'agit de envpack-conf@1.0.1, postcss-initial-provider@3.0.4 et tailwindcss-motion-advanced@1.0.1.
Le premier paquet contient des utilitaires de configuration, le second est un plugin PostCSS fonctionnel, et le dernier paquet place le chargeur dans un fichier utilitaire minifié.
Sonatype a confirmé que les six blocs de code utilisent la même charge utile et le même portefeuille Ethereum.
Lorsque la victime exécute le code, le chargeur interroge Ethereum pour obtenir les informations sur la dernière transaction sortante du portefeuille et extrait les octets du champ destinataire de cette transaction.
Ces octets sont convertis en deux adresses IPv4. Elles servent de serveurs de commande et de contrôle primaire et de secours pour le logiciel malveillant. Le transfert de données sert uniquement à stocker les instructions indiquant où le logiciel malveillant doit se connecter.
Les chercheurs de Sonatype ont déclaré que le chargeur contacte simultanément plusieurs nœuds Ethereum en concurrence les uns avec les autres. Il regroupe ensuite ses requêtes JSON-RPC et passe à l'API Blockscout si les requêtes directes échouent.
Après avoir découvert le serveur, il effectue deux tentatives supplémentaires sur les points de terminaison `/0x/cls` et `/0x/ls`, en revenant à l'en-tête de réponse `X-Payload-B64` si une simple requête GET ne donne aucun résultat.
Le résultat est un contenu décodé en Base64 et XOR, qui est ensuite exécuté dans le processus Node.js actuel via la fonction `eval()` ou lancé en tant que processus enfant séparé.
NullReceiver est une version plus compacte d'EtherHiding
Ce schéma de récupération de données à partir de la blockchain a été découvert par OpenSourceMalware dans deux clones chevaux de Troie de Tailwind CSS, bianira-ui et fluid-type-ui, et a été nommé NullReceiver.
L'entreprise associe cette activité à la campagne "Contagious Interview", liée à la RPDC et au groupe Lazarus. Sonatype a confirmé la correspondance des données du portefeuille.
NullReceiver élimine une vulnérabilité dans EtherHiding — une méthode que, selon Google Threat Intelligence, une entité liée à la RPDC a développée en octobre 2025.
EtherHiding cache un secret dans le champ de données de la transaction et envoie toujours les données vers une adresse publique de combustion (burn address) Ethereum, offrant aux défenseurs un point de référence fixe pour la surveillance.
NullReceiver n'envoie aucune donnée et ne réutilise pas la destination. Dans un fragment de code déconstruit par OpenSourceMalware, l'octet du destinataire était défini sur la valeur 166.88.134.62, et les octets finaux formaient la chaîne "helloipbot!!", qui est une empreinte de l'attaquant.
En septembre 2025, Cryptopolitan a rapporté que ReversingLabs avait découvert des chargeurs npm colortoolv2 et mimelib2 qui cachaient les URL de logiciels malveillants à l'intérieur de contrats intelligents Ethereum et étaient liés au Ghost Network de Stargazer.
Sonatype a déclaré qu'elle continuait d'enquêter sur l'activité liée à npm. Les développeurs affectés doivent supprimer les paquets npm marqués. Ils doivent également être attentifs aux signes d'exécution de la charge utile au deuxième stade.
end-content




