
Pour rappel, une blockchain (ou chaîne de blocs) est un registre distribué contenant des listes croissantes d'enregistrements (blocs) qui sont reliés entre eux de manière sécurisée via des hachages cryptographiques. Chaque bloc contient un hachage cryptographique du bloc précédent, un horodatage et des données de transaction (généralement représentées sous la forme d'un arbre de Merkle). Comme chaque bloc contient des informations sur le bloc précédent, ils forment effectivement une chaîne, chaque bloc supplémentaire étant lié à ceux qui le précèdent. Par conséquent, les transactions blockchain sont théoriquement protégés contre la falsification ou la modification car, une fois enregistrées, les données d'un bloc donné ne peuvent être modifiées rétroactivement sans modifier tous les blocs suivants et obtenir le consensus du réseau pour accepter ces modifications.
Le GTIG a récemment révélé que l'acteur malveillant nord-coréen (RPDC) UNC5342 utilisait « EtherHiding » pour diffuser des logiciels malveillants (malwares) à partir de blockchains, facilitant ainsi le vol de cryptomonnaies. Selon l'équipe de Google, il s'agit de la première fois qu'un acteur étatique adopte cette méthode. EtherHiding est une technique exploitant les transactions sur les blockchains publiques pour stocker et récupérer des charges utiles malveillantes. Il se distingue par sa résistance aux méthodes conventionnelles de suppression et de mise sur liste noire.
Le GTIG a suivi l'acteur malveillant UNC5342 depuis février 2025. Ce dernier a intégré EtherHiding à une campagne d'ingénierie sociale en cours, baptisée « Contagious Interview » par Palo Alto Networks. Dans le cadre de cette campagne, l'acteur utilise le logiciel malveillant JADESNOW pour déployer une variante JavaScript d'INVISIBLEFERRET, à l'origine de nombreux vols de cryptomonnaies.
Comment fonctionne EtherHiding
EtherHiding est apparu en septembre 2023 comme un élément clé de la campagne CLEARFAKE (UNC5142) à motivation financière, qui utilise des superpositions trompeuses, telles que de fausses invites de mise à jour du navigateur, pour manipuler les utilisateurs afin qu'ils exécutent du code malveillant.
EtherHiding consiste à intégrer du code malveillant, souvent sous la forme de charges utiles JavaScript, dans un contrat intelligent sur une blockchain publique telle que BNB Smart Chain ou Ethereum. Cette approche transforme essentiellement la blockchain en un serveur de commande et de contrôle (C2) décentralisé et hautement résilient.
Selon le GTIG, la chaîne d'attaque type se déroule comme suit :
- Compromission initiale : les acteurs malveillants nord-coréens ont recours à l'ingénierie sociale pour leur compromission initiale (par exemple, de faux entretiens d'embauche, des jeux de cryptomonnaie, etc.). Dans le cadre de la campagne CLEARFAKE, l'attaquant accède d'abord à un site web légitime, généralement un site WordPress, en exploitant des vulnérabilités ou des identifiants volés.
- Injection d'un « loader » de script : l'attaquant injecte un petit bout de code JavaScript, souvent appelé « loader », dans le site web compromis.
- Récupération de la charge utile malveillante : lorsqu'un utilisateur visite le site web compromis, le loader de script s'exécute dans son navigateur. Ce script communique ensuite avec la blockchain pour récupérer la charge utile malveillante principale stockée sur un serveur distant. Un aspect clé de cette étape est l'utilisation d'un appel de fonction en lecture seule (tel que eth_call), qui ne crée pas de transaction sur la blockchain. Cela garantit que la récupération du logiciel malveillant est discrète et évite les frais de transaction (c'est-à-dire les frais de gaz).
- Exécution de la charge utile : une fois récupérée, la charge utile malveillante est exécutée sur l'ordinateur de la victime. Cela peut entraîner diverses activités malveillantes, telles que l'affichage de fausses pages de connexion, l'installation de logiciels malveillants destinés à voler des informations ou le déploiement de ransomware.
Avantages pour les pirates informatiques
L'équipe de Google chargée de la cybersécurité indique qu'EtherHiding offre plusieurs avantages significatifs aux attaquants, ce qui en fait une menace particulièrement difficile à contrer. Ces avantages comprennent :
- Décentralisation et résilience : le code malveillant est stocké sur une blockchain décentralisée et sans autorisation, il n'existe donc aucun serveur central que les forces de l'ordre ou les entreprises de cybersécurité puissent démanteler. Le code malveillant reste accessible tant que la blockchain elle-même est opérationnelle.
- Anonymat : la nature pseudonyme des transactions blockchain rend difficile la traçabilité de l'identité des attaquants qui ont déployé le contrat intelligent.
- Immuabilité : une fois qu'un contrat intelligent est déployé, le code malveillant qu'il contient ne peut généralement pas être facilement supprimé ou modifié par quelqu'un d'autre que le propriétaire du contrat.
- Furtivité : les attaquants peuvent récupérer la charge utile malveillante à l'aide d'appels en lecture seule qui ne laissent pas d'historique de transaction visible sur la blockchain, ce qui rend leurs activités plus difficiles à suivre.
- Flexibilité : l'attaquant qui contrôle le contrat intelligent peut mettre à jour la charge utile malveillante à tout moment. Cela lui permet de modifier ses méthodes d'attaque, de mettre à jour des domaines ou de déployer différents types de logiciels malveillants sur des sites web compromis simultanément, simplement en mettant à jour le contrat intelligent.
Selon le GTIG, EtherHiding représente en substance une évolution vers l'hébergement sécurisé de nouvelle génération, où les caractéristiques inhérentes à la technologie blockchain sont détournées à des fins malveillantes. « Cette technique souligne l'évolution constante des cybermenaces, les attaquants s'adaptant et tirant parti des nouvelles technologies à leur avantage », indique le GTIG.
Campagne d'ingénierie sociale de la RPDC
D'après le GTIG, la campagne d'ingénierie sociale menée par la Corée du Nord constitue « une opération sophistiquée et continue de cyberespionnage à motivation financière qui exploite habilement le processus de candidature et d'entretien d'embauche ». Le groupe précise que cette campagne cible les développeurs, en particulier dans les secteurs des cryptomonnaies et des technologies, afin de voler des données sensibles, des cryptomonnaies et d'obtenir un accès permanent aux réseaux d'entreprise.
Cette campagne a un double objectif, selon le GTIG, qui correspond aux objectifs stratégiques de la Corée du Nord :
- Gain financier : l'un des principaux objectifs est le vol de cryptomonnaies et d'autres actifs financiers afin de générer des revenus pour le régime, ce qui lui permet de contourner les sanctions internationales.
- Espionnage : en compromettant les développeurs, la campagne vise à recueillir des renseignements précieux et à s'implanter dans les entreprises technologiques en vue d'opérations futures.
La campagne se caractérise ainsi par des tactiques d'ingénierie sociale élaborées qui imitent les processus de recrutement légitimes.
1. Le leurre du phishing
- Faux recruteurs et fausses entreprises : les cybercriminels créent des profils convaincants mais frauduleux sur des sites de réseautage professionnel tels que LinkedIn et des sites d'offres d'emploi. Ils se font souvent passer pour des recruteurs de sociétés technologiques ou de cryptomonnaie renommées.
- Sociétés fictives : dans certains cas, ils sont allés jusqu'à créer de faux sites web et de fausses pages sur les réseaux sociaux pour des entités telles que « BlockNovas LLC », « Angeloper Agency » et « SoftGlideLLC » afin de leur donner une apparence légitime.
- Sensibilisation ciblée : ils contactent de manière agressive des victimes potentielles, telles que des développeurs de logiciels et des développeurs web, en leur proposant des offres d'emploi attrayantes.
2. Le processus d'entretien
- Premier contact : les faux recruteurs entrent en contact avec les candidats, souvent en transférant la conversation vers des plateformes telles que Telegram ou Discord.
- La tâche malveillante : le cœur de l'attaque se produit pendant la phase d'évaluation technique. Les candidats sont invités à passer un test de codage ou à examiner un projet, ce qui les oblige à télécharger des fichiers à partir de référentiels tels que GitHub. Ces fichiers contiennent du code malveillant.
- Outils trompeurs : dans d'autres variantes, les candidats sont invités à passer un entretien vidéo et reçoivent un faux message d'erreur (une technique appelée ClickFix) qui leur demande de télécharger un soi-disant « correctif » ou un logiciel spécifique pour continuer, qui est en réalité un logiciel malveillant.
3. La chaîne d'infection
Selon le GTIG, la campagne utilise un processus d'infection par logiciel malveillant en plusieurs étapes pour compromettre le système de la victime, affectant souvent les systèmes Windows, macOS et Linux. Les étapes sont les suivantes :
- Téléchargeur initial (par exemple, JADESNOW) : les paquets malveillants téléchargés par la victime sont souvent hébergés sur le registre npm (Node Package Manager). Ces chargeurs peuvent collecter des informations initiales sur le système et télécharger la prochaine étape du logiciel malveillant.
- Logiciel malveillant de deuxième étape (par exemple, BEAVERTAIL, JADESNOW) : ce logiciel malveillant basé sur JavaScript est conçu pour rechercher et exfiltrer des données sensibles, en particulier les portefeuilles de cryptomonnaies, les données des extensions de navigateur et les identifiants. L'ajout de JADESNOW à la chaîne d'attaque marque le passage de UNC5342 à EtherHiding pour servir la porte dérobée de troisième étape INVISIBLEFERRET.
- Porte dérobée de troisième étape (par exemple, INVISIBLEFERRET) : pour les cibles de grande valeur, une backdoor plus persistante est déployée. INVISIBLEFERRET, une backdoor basée sur Python, permet aux attaquants de contrôler à distance le système compromis, ce qui leur permet de mener des activités d'espionnage à long terme, de voler des données et de se déplacer latéralement au sein d'un réseau.
JADESNOW
Le GTIG a identifié JADESNOW comme une famille de logiciels malveillants de téléchargement basés sur JavaScript, associée au groupe de menaces UNC5342. Le groupe précise que JADESNOW utilise EtherHiding pour récupérer, déchiffrer et exécuter des charges utiles malveillantes à partir de contrats intelligents sur la chaîne intelligente BNB et Ethereum. Les données d'entrée stockées dans le contrat intelligent peuvent être encodées en Base64 et chiffrées en XOR. La charge utile finale dans la chaîne d'infection JADESNOW est généralement une porte dérobée plus persistante comme INVISIBLEFERRET.JAVASCRIPT.
Selon le groupe de cybersécurité de Google, le déploiement et la gestion de JADESNOW diffèrent de ceux de campagnes similaires qui mettent en œuvre EtherHiding, telles que CLEARFAKE. La campagne CLEARFAKE, associée au groupe de menaces UNC5142, « fonctionne comme un framework JavaScript malveillant et se fait souvent passer pour une fenêtre contextuelle de mise à jour du navigateur Google Chrome sur des sites Web compromis ». La fonction principale du JavaScript intégré est de télécharger une charge utile après qu'un utilisateur a cliqué sur le bouton « Mettre à jour Chrome ». La charge utile de deuxième étape est un autre JavaScript encodé en Base64 stocké sur la BNB Smart Chain. La charge utile finale peut être associée à d'autres fichiers qui font partie d'une mise à jour légitime, comme des images ou des fichiers de configuration, mais le logiciel malveillant lui-même est généralement un « infostealer » comme LUMASTEALER.
La figure ci-dessous présente un aperçu général de la chaîne d'attaque par ingénierie sociale. Le GTIG décrit une attaque en plusieurs phases. Selon ses analyses, la victime reçoit d'abord une question d'entretien malveillante, conçue pour la tromper et l'amener à exécuter un code. Cette action déclenche le téléchargeur JavaScript initial qui interagit avec un contrat intelligent malveillant pour télécharger la charge utile de deuxième étape. Le contrat intelligent héberge le téléchargeur JADESNOW, lequel interagit avec la blockchain Ethereum pour récupérer la charge utile de troisième étape, identifiée comme étant INVISIBLEFERRET.JAVASCRIPT. Enfin, cette charge utile est exécutée directement en mémoire et qu'elle a la capacité d'interroger la blockchain Ethereum afin d'obtenir un composant supplémentaire dédié au vol d'identifiants. Selon le GTIG, il est inhabituel de voir un acteur malveillant utiliser plusieurs blockchains pour une activité EtherHiding ; « cela peut indiquer une compartimentation opérationnelle entre les équipes de cyberopérateurs nord-coréens ». Finalement, les campagnes exploitent souvent la nature flexible d'EtherHiding pour mettre à jour la chaîne d'infection et modifier les emplacements de livraison des charges utiles.
En une seule transaction, le téléchargeur JADESNOW peut ainsi passer de la récupération d'une charge utile sur Ethereum à celle sur la BNB Smart Chain. « Ce changement complique non seulement l'analyse, mais permet également de bénéficier de frais de transaction moins élevés offerts par d'autres réseaux », déclare le GTIG.
UNC5342 EtherHiding sur BNB Smart Chain et Ethereum
Contrats intelligents malveillants
Selon le GTIG, BNB Smart Chain et Ethereum sont tous deux conçus pour exécuter des applications décentralisées (dApps) et des contrats intelligents. Un contrat intelligent est un code sur une blockchain qui exécute automatiquement des actions lorsque certaines conditions ou certains accords sont remplis, permettant ainsi des accords sécurisés, transparents et automatisés sans intermédiaires. Les contrats intelligents sont compilés en bytecode et téléchargés sur la blockchain, ce qui les rend accessibles au public pour être désassemblés à des fins d'analyse.
BNB Smart Chain, tout comme Ethereum, est un réseau blockchain décentralisé et sans autorisation qui prend en charge les contrats intelligents programmés pour la machine virtuelle Ethereum (EVM). Bien que les contrats intelligents offrent des moyens innovants de créer des applications décentralisées, leur nature immuable est exploitée dans EtherHiding pour héberger et diffuser des codes malveillants d'une manière qui ne peut être facilement bloquée.
L'utilisation d'Ethereum et de BNB Smart Chain à des fins d'EtherHiding est simple, selon le GTIG, car elle consiste simplement à appeler un contrat intelligent personnalisé sur la blockchain. Les interactions d'UNC5342 avec les réseaux blockchain s'effectuent via des fournisseurs de services API centralisés plutôt que via des points de terminaison RPC (Remote Procedure Call), comme c'est le cas avec CLEARFAKE.
Contactés par le GTIG, les fournisseurs de services API responsables ont rapidement pris des mesures contre cette activité malveillante ; cependant, plusieurs autres plateformes sont restées sans réaction. Cette indifférence et ce manque de collaboration sont très préoccupants, car ils augmentent le risque de prolifération de cette technique parmi les acteurs malveillants.
Analyse On-Chain de JADESNOW
Le GTIG a révélé que le téléchargeur initial interroge la BNB Smart Chain via divers fournisseurs d'API, dont Binplorer, afin de lire la charge utile JADESNOW stockée dans le contrat intelligent à l'adresse 0x8eac3198dd72f3e07108c4c7cff43108ad48a71c.
Le code ci-dessous est un exemple d'appel API pour lire les données stockées dans le contrat intelligent à partir de l'historique des transactions. Les détails de la transaction montrent que le contrat a été mis à jour plus de 20 fois au cours des quatre premiers mois, chaque mise à jour coûtant en moyenne 1,37 dollar américain en frais de gaz. Le faible coût et la fréquence de ces mises à jour illustrent la capacité de l'attaquant à modifier facilement la configuration de la campagne. Ce contrat intelligent a également été lié à une attaque de la chaîne d'approvisionnement logicielle qui a touché React Native Aria et GlueStack via des paquets npm compromis en juin 2025, selon le GTIG.
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | { timestamp: 1738949853, transactionHash: "0x5c77567fcf00c317b8156df8e00838105f16fdd4fbbc6cd83d624225397d8856", tokenInfo: { address: "0x8eac3198dd72f3e07108c4c7cff43108ad48a71c", (...) owner: "0x9bc1355344b54dedf3e44296916ed15653844509", (...) txsCount: 22, (...) }, type: "issuance", value: "1", priority: 127, address: "0x9bc1355344b54dedf3e44296916ed15653844509" } |
Les explorateurs de blockchain tels que BscScan (pour BNB Smart Chain) et Etherscan (pour Ethereum) sont des outils essentiels pour examiner les informations sur la chaîne, telles que le code des contrats intelligents et l'historique des transactions vers et depuis le contrat. Ces transactions peuvent inclure des données d'entrée telles que le Name d'une variable, son Type et les Data stockées dans cette variable.
La figure ci-dessous montre l'activité sur la chaîne à l'adresse de transaction 0x5c77567fcf00c317b8156df8e00838105f16fdd4fbbc6cd83d624225397d8856, où le champ Data contient un message codé en Base64 et chiffré en XOR. Ce message se décrypte en une charge utile JavaScript fortement obscurcie que le GTIG a évalué comme étant le téléchargeur de deuxième étape, JADESNOW.
Activité On-Chain de UNC5342
Lorsque le GTIG a comparé les transactions, le code lié au lanceur est resté intact, mais la charge utile de l'étape suivante a été fréquemment mise à jour avec une nouvelle charge utile obscurcie. Dans ce cas, la charge utile obscurcie a été exécutée en mémoire et déchiffre un tableau de chaînes qui se combinent pour former des appels API vers différents hachages de transactions sur Ethereum.
« Ce pivot vers un réseau différent est remarquable. Les attaquants n'utilisent pas de contrat intelligent Ethereum pour stocker la charge utile ; ils effectuent plutôt une requête GET pour interroger l'historique des transactions de leur adresse contrôlée par l'attaquant et lire les données d'appel stockées à partir des transactions effectuées vers l'adresse « burn » bien connue 0x00…dEaD », a déclaré l'équipe de cybersécurité de Google.
Transactions On-chain
Selon le GTIG, l'adresse finale de ces transactions n'a aucune importance, car le logiciel malveillant ne lit que les données stockées dans les détails d'une transaction, utilisant efficacement la transaction blockchain comme un...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.