Wiz affirme qu'une attaque contre la chaîne d'approvisionnement, qui a infecté arrayref, un package Rust présent dans environ les trois quarts des environnements Rust, a suscité des comparaisons avec des opérations nord-coréennes récentes.
La mise à jour malveillante dissimulait une porte dérobée volant des identifiants dans du code destiné à s'exécuter automatiquement lors de la compilation des projets par les utilisateurs. Ainsi, toute personne ayant compilé un projet jeudi aurait pu compromettre son ordinateur et ses secrets.
Pourquoi la Corée du Nord est-elle accusée du piratage d'ArrayRef ?
Les chercheurs de Wiz, Rami McCarthy et Benjamin Enj, ont publié un rapport notant que la charge utile d'arrayref redirigeait les signaux vers un canal de commandement et de contrôle (/49890878) également présent dans la campagne Mastra.
Microsoft associe la campagne Mastra à un groupe de pirates nord-coréens qu'elle appelle Sapphire Sleet.
L'adresse Internet (IP) utilisée dans l'attaque arrayref possède le même certificat de sécurité qu'une autre adresse utilisée dans Mastra. De plus, une victime ayant signalé une activité suspecte a noté une adresse IP que Google Cloud a détectée dans une attaque contre le package npm axios.
L'entreprise Mandiant affirme que l'attaque a été perpétrée par un groupe nord-coréen appelé UNC1069. Les deux attaques utilisaient le même hébergeur, Hostwinds.
L'attaque était difficile à repérer car elle ne changeait pratiquement rien. Ilya Makari, chercheur en sécurité chez Aikido, a découvert que le code à l'intérieur des trois packages Rust – arrayref, internment et append-only-vec – n'avait pas été modifié. Le seul changement était l'ajout d'une nouvelle dépendance dans la liste de chaque package, nommée proc-macro1.
Ce nom est une faute d'orthographe du crate populaire proc-macro2, qui a été téléchargé plus de 154 millions de fois. Le crate contrefait inclut même le vrai code de proc-macro2, de sorte que le logiciel se compile toujours et passe tous les tests.
La partie malveillante était cachée dans le script de compilation.
L'équipe de réponse aux menaces de sécurité de Rust a expliqué que la simple compilation d'un projet utilisant la version compromise était suffisante pour déclencher l'attaque.
Une fois exécuté, la deuxième phase de l'attaque volait les mots de passe enregistrés depuis les navigateurs Chrome, Brave et Edge et s'installait de manière à persister après le redémarrage des ordinateurs fonctionnant sous Windows, Mac et Linux.
Le plus grand cas de compromission de Rust en nombre de téléchargements
Aikido a déclaré que cette attaque était le plus grand piratage de crate Rust auquel elle ait été confrontée en termes de téléchargements : arrayref, utilisé dans des outils pour Solana et Ethereum, a été téléchargé environ 244 millions de fois. La vulnérabilité aurait persisté pendant 86 minutes avant d'être supprimée.
L'équipe a signalé que le rapport initial provenait de la société Triton Systems. Après avoir découvert l'attaque, l'équipe a supprimé les versions propres et bloqué le compte du développeur.
L'équipe de maintenance de Rust a déclaré ne pas considérer les actions de l'auteur comme malveillantes, estimant que son ordinateur ou ses identifiants avaient été compromis.
Il est à noter qu'Amazon a signalé un lien entre une série de piratages de bibliothèques npm et un seul acteur associé à la RPDC. TRM Labs a également rapporté que les groupes nord-coréens étaient responsables d'environ 76 % de tous les fonds volés lors de piratages de cryptomonnaies entre avril 2026 (environ 577 millions de dollars).
Le chercheur de Black Hat, Vangelis Stykas, a déclaré traquer les pirates nord-coréens ayant infiltré 1640 entreprises dans 57 pays. Il a découvert qu'ils attiraient souvent les développeurs avec de fausses offres d'emploi qui installaient des logiciels malveillants, comme la dépendance empoisonnée dans ce cas.





