Malware IronWorm basé sur Rust infiltre la chaîne d'approvisionnement npm et cible les identifiants des développeurs
Une attaque sophistiquée de la chaîne d'approvisionnement a compromis 36 packages sur l'index **Node Package Manager (npm)**. Baptisé **IronWorm**, ce voleur d'informations basé sur **Rust** cible un large éventail d'identifiants et de fichiers de configuration sensibles des développeurs, représentant une menace importante pour l'intégrité de la chaîne d'approvisionnement logicielle. La détection précoce par les chercheurs en sécurité a permis d'atténuer sa propagation.

### Le voleur d'informations IronWorm frappe les packages npm
Une nouvelle attaque sophistiquée de la chaîne d'approvisionnement a été détectée, compromettant 36 packages sur l'index **Node Package Manager (npm)**. Le malware, identifié comme **IronWorm**, est un voleur d'informations basé sur **Rust** conçu pour dérober des identifiants critiques et des fichiers de configuration sensibles des développeurs.
### Plongée dans les capacités d'IronWorm
Selon les chercheurs de **JFrog**, société spécialisée dans la chaîne d'approvisionnement et le DevOps, **IronWorm** est particulièrement insidieux. Il cible une liste exhaustive de 86 variables d'environnement et 20 fichiers d'identification spécifiques. Ceux-ci incluent des données hautement sensibles telles que les identifiants **OpenAI**, **AWS**, **Anthropic** et **npm**, des fichiers de configuration de coffre-fort, des clés **SSH**, et des fichiers de portefeuille de cryptomonnaies **Exodus**.
Le malware utilise des techniques de furtivité avancées, notamment en se cachant derrière un **rootkit noyau eBPF** et en communiquant avec ses opérateurs via le **réseau Tor**.
### Auto-propagation et risque pour la chaîne d'approvisionnement
Une caractéristique clé d'**IronWorm** est sa nature auto-propagatrice. Une fois qu'il compromet un environnement de développeur ou de CI, il utilise les identifiants volés – y compris ceux associés au flux de publication de confiance (**Trusted Publishing**) de **npm** – pour publier des versions troyennes de packages appartenant à la victime. Cela permet au malware de se propager de manière autonome, infectant d'autres développeurs et systèmes de CI plus loin dans la chaîne d'approvisionnement.
Ce comportement rappelle celui du malware **Shai Hulud** identifié précédemment, les chercheurs notant des noms de commit identiques dans les deux campagnes, suggérant une évolution possible ou une origine commune.
### Vecteur d'attaque et tactiques d'évasion
La dernière campagne **IronWorm** proviendrait d'un compte compromis nommé ‘asteroiddao’. Des commits malveillants, poussant un binaire **Rust ELF** exécuté via un script ‘preinstall’, ont été observés. Pour échapper à la détection et à l'analyse forensique, les attaquants ont manipulé les horodatages des commits, les faisant apparaître plusieurs années plus anciennes, dans certains cas jusqu'à 13 ans avant leur date de publication réelle.
### Mécanisme d'exfiltration sophistiqué (non utilisé)
L'analyse de **JFrog** a également révélé un mécanisme d'exfiltration sophistiqué, bien qu'inutilisé dans cette attaque spécifique, exploitant **GitHub Actions**. Cette méthode consiste à sérialiser les secrets volés en une seule valeur, à l'écrire dans un fichier d'apparence inoffensive (imitant la sortie d'un linter ou d'un formateur), puis à la télécharger comme artefact de build. Cette technique permettrait aux acteurs de la menace de récupérer des secrets sans avoir besoin d'un serveur de commande et de contrôle (C2) externe, rendant la détection encore plus difficile.
De manière intrigante, les chercheurs ont également découvert que l'opérateur avait codé en dur sa propre phrase de récupération de portefeuille de cryptomonnaies, probablement à des fins de test pour éviter l'auto-infestation pendant le développement.
### Détection précoce et atténuation
Heureusement, l'attaque **IronWorm** a été détectée précocement par la société de sécurité applicative **Ox Security**, empêchant sa propagation à des packages **npm** plus largement utilisés. **Ox Security** a fourni une liste de tous les noms de packages et versions impactés. Ils conseillent vivement aux développeurs de passer aux versions corrigées, de faire pivoter rapidement toutes leurs clés, et d'activer l'authentification à deux facteurs (**2FA**) pour tous les comptes afin de renforcer leurs défenses.
### Des menaces parallèles émergent
Parallèlement, les sociétés de sécurité **Endor Labs** et **StepSecurity** ont identifié une attaque distincte mais similaire en cours. Cette campagne implique un malware basé sur **JavaScript** nommé **binding.gyp**, qui effectue un empoisonnement de registre et une infection de **GitHub Actions**, soulignant une tendance plus large d'attaques sophistiquées de la chaîne d'approvisionnement ciblant les écosystèmes de développeurs.