bee-js 13.3.0 sur npm : un code malveillant visait les clés de wallets
La version 13.3.0 de la bibliothèque Swarm @ethersphere/bee-js est sortie par le circuit de publication officiel et cherchait à voler des clés de portefeuilles dès l'installation.

Si vous avez installé @ethersphere/bee-js 13.3.0 depuis npm, le mal a peut-être été fait avant même le lancement de votre application. La société CodeScoring classe cette version de la bibliothèque JavaScript du stockage distribué Swarm comme malveillante depuis le 9 novembre. Elle tentait de voler les clés de portefeuilles crypto.
La manière dont elle a été diffusée est ce qu'il y a de plus gênant. Elle est passée par le processus de publication habituel du projet. Un commit a été poussé directement dans le dépôt officiel sous le compte de release bee-worker, puis une version a été créée, ce qui a déclenché le workflow GitHub Actions existant. Selon Socket, les informations de build sur npm renvoyaient au dépôt officiel et au processus de publication normal. Le code malveillant était déjà dans les sources.
Les attaquants ont fait en sorte qu'un script s'exécute automatiquement à l'installation. Dans les commentaires du code, l'appel à leur serveur était présenté comme l'envoi de statistiques. En réalité, le script récupérait du JavaScript et l'exécutait aussitôt, avec les droits de la personne qui installait le paquet.
Que faisait le code malveillant de bee-js ?
La charge utile cherchait dans les données de Swarm Desktop une clé de portefeuille chiffrée et un fichier de configuration. Si la configuration contenait le mot de passe de la clé, ces deux fichiers suffisaient à prendre le contrôle du portefeuille. Le code tentait aussi de s'installer durablement pour survivre à la fin de l'installation.
Sous Linux et macOS, l'attaque se poursuivait avec une porte dérobée permettant d'exécuter des commandes à distance. Elle lisait l'adresse de son serveur de commande dans un contrat intelligent Ethereum. L'opérateur pouvait donc la changer d'une seule transaction, sans publier de nouvelle version.
Comment savoir si l'on est concerné ?
La version pouvait arriver de façon indirecte. Les plages de dépendances de plusieurs outils Swarm autorisaient la 13.3.0 : chercher la dépendance directe dans le manifeste ne suffit pas. Il faut vérifier la version réellement résolue dans le fichier de verrouillage.
Les équipes doivent examiner leurs fichiers de verrouillage, caches de paquets et journaux d'installation en CI à la recherche de la 13.3.0. Si elle a été installée avec les scripts autorisés, ou si Swarm Desktop 0.56.2 a été lancé, la machine ou le runner de CI doit être examiné. Pour un runner, cela concerne aussi les jetons de publication de paquets et l'accès au code source.
Des apps à découvrir
Touche les bonnes cases, additionne, atteins l'objectif. Facile à apprendre, difficile à maîtriser. Gratuit, pour tous les âges.
Discutez avec un partenaire IA ; chaque phrase revient corrigée et expliquée dans votre langue. 9 langues, de A1 à C2.
Ouvrez des messages EDIFACT et X12, chaque segment expliqué, conversion JSON/XML, export PDF et Excel. Fonctionne en local, sans envoi.
Choisissez pour qui, l'occasion et la personnalité. Le moteur lit les descriptions de produits de boutiques locales et classe ce qui convient. Gratuit, sans inscription.
Plus d'actus de ce jour
Tout voir →
UTM lance une base de jeux compatibles et un agent IA qui écrit les patchs

Roskomnadzor : un filtre IA contre les VPN à 2,27 milliards de roubles

Amazon publie un outil entièrement codé par des agents IA

