Plutôt que de s’exécuter automatiquement lors de l’installation d’un package, le code malveillant est désormais dissimulé dans une fonction légitime du package et ne s’active que lorsque celui-ci est réellement utilisé.
Le cas étudié par les chercheurs de Checkmarx Zero concerne le package npm indexed-btree, qui a atteint près de 2 millions de téléchargements hebdomadaires. La campagne montre ainsi qu’un package peut contourner les mécanismes de détection fondés sur les scripts d’installation tout en conservant une capacité d’exécution malveillante lorsque la bibliothèque est utilisée.
La campagne se distingue également par son infrastructure de commande et contrôle (C2). Les attaquants utilisent un smart contract sur Ethereum, une blockchain publique et décentralisée, comme point de référence pour permettre au malware de retrouver son infrastructure C2. Concrètement, plutôt que d’intégrer directement dans le malware une adresse IP ou un nom de domaine facilement bloquable, les attaquants s’appuient sur la blockchain Ethereum pour transmettre cette information. Cela rend l’infrastructure plus difficile à neutraliser par les méthodes classiques de démantèlement de domaines ou de serveurs.
Les chercheurs ont également identifié des portefeuilles en cryptomonnaie utilisés par les attaquants, contenant au total environ 109 ETH au moment de l’analyse. L’ETH, ou Ether, est la cryptomonnaie native du réseau Ethereum. Ce montant correspond donc aux fonds en Ether observés sur les portefeuilles associés à l’opération. Il ne faut toutefois pas l’interpréter comme 109 ETH nécessairement générés par les téléchargements du package indexed-btree : il s’agit du montant identifié par les chercheurs sur les portefeuilles liés à cette infrastructure.
Darren Meyer, Research Advocate chez Checkmarx :
« Cette campagne montre clairement que le blocage des scripts d’installation n’était qu’une réponse partielle au problème. Les attaquants ont simplement changé de tactique, en déplaçant le code malveillant de l’installation vers le moment où la bibliothèque est réellement utilisée. L’absence de scripts preinstall ou postinstall suspects ne suffit donc plus à considérer un package comme sûr. »
Article complet : Checkmarx Zero – npm btree malware campaign
https://checkmarx.com/zero-post/npm-btree-malware-campaign-affects-millions-of-downloads-no-need-for-install-script/






