Le logiciel malveillant GlassWorm touche plus de 400 dépôts de code sur GitHub, npm, VSCode, OpenVSX

Le logiciel malveillant GlassWorm touche plus de 400 dépôts de code sur GitHub, npm, VSCode, OpenVSX

La campagne de GlassWorm a été relancée avec une attaque coordonnée touchant de nombreux paquets, dossiers et extensions sur GitHub, npm et les extensions de VSCode et OpenVSX.

Des chercheurs des institutions Aikido, Socket, Step Security et de la communauté OpenSourceMalware ont identifié 433 composants compromis au cours de ce mois, tous attribués à GlassWorm.

Les indices suggèrent qu’un acteur unique gère les campagnes GlassWorm à travers plusieurs dépôts open source, en utilisant la même adresse de la blockchain Solana pour les activités de commandement et de contrôle, avec des charges utiles identiques ou fonctionnellement similaires et une infrastructure partagée.

Apparue pour la première fois en octobre dernier, la méthode employée par GlassWorm consiste à dissimuler du code malveillant à l’aide de caractères Unicode « invisibles », permettant de collecter des données de portefeuilles de crypto-monnaies et d’identifiants de développeurs.

Depuis, la campagne s’est intensifiée, touchant le marketplace officiel de Visual Studio Code et le registre OpenVSX, comme l’a rapporté le chercheur John Tuckner de Secure Annex.

Les systèmes macOS ont également été ciblés, avec l’introduction de clients trojanisés pour Trezor et Ledger, avant que les développeurs ne soient pris pour cibles par le biais d’extensions compromises sur OpenVSX.

La dernière vague d’attaques GlassWorm est beaucoup plus vaste et concerne :

  • 200 dépôts Python sur GitHub
  • 151 dépôts JS/TS sur GitHub
  • 72 extensions VSCode/OpenVSX
  • 10 paquets sur npm

La compromission initiale débute sur GitHub, où des comptes sont compromis pour forcer la publication de commits malveillants.

Par la suite, des paquets et des extensions malveillants sont mis en ligne sur npm et VSCode/OpenVSX, contenant du code obfusqué (caractères Unicode invisibles) pour échapper à la détection.

Malicious package on OpenVSX
Paquet malveillant sur OpenVSX
Source: Aikido

Sur toutes les plateformes, la blockchain Solana est interrogée toutes les cinq secondes pour de nouvelles instructions. D’après Step Security, entre le 27 novembre 2025 et le 13 mars 2026, 50 nouvelles transactions ont été enregistrées, la plupart servant à actualiser l’URL des charges utiles.

Les instructions se trouvaient intégrées en tant que mémos dans ces transactions, ce qui a permis de télécharger le runtime Node.js et d’exécuter un logiciel de vol d’informations basé sur JavaScript.

GlassWorm attack chain
Chaîne d’attaque GlassWorm
Source: Step Security

Ce logiciel malveillant vise les données de portefeuilles de crypto-monnaies, les identifiants d’accès, les jetons d’accès, ainsi que les clés SSH et les données d’environnement de développeur.

Les analyses des commentaires de code indiquent que GlassWorm est orchestré par des acteurs menaçants de langue russe. De plus, le logiciel malveillant évite l’exécution si une configuration locale russe est détectée, mais cela ne permet pas une attribution certaine.

Step Security recommande aux développeurs utilisant des paquets Python directement depuis GitHub ou exécutant des dépôts clonés de vérifier leur code pour des signes de compromission, notamment en recherchant la variable marqueur “lzcdrtfxyqiplpd,” un indicateur de l’infection par GlassWorm.

Malicious GitHub files
Fichiers malveillants sur GitHub
Source: Step Security

Il est également conseillé d’examiner les systèmes à la recherche du fichier ~/init.json, utilisé pour la persistance, ainsi que des installations inattendues de Node.js dans le répertoire utilisateur (par exemple, ~/node-v22*).

De plus, les développeurs devraient rechercher des fichiers suspects i.js dans les projets récemment clonés et passer en revue les historiques de commits Git pour déceler des anomalies, comme des commits dont la date du committer est nettement plus récente que celle de l’auteur initial.