Silent Swap : une campagne par déploiement d’extensions de type « crypto clipper »

Auteur : Neil Tyagi

Résumé 

L’équipe McAfee Advanced Threat Research a identifié une campagne active recourant à des extensions de navigateur pour voler des cryptomonnaies en remplaçant discrètement les adresses de portefeuilles dès qu’un utilisateur lance une transaction. La campagne s’appuie sur des programmes d’installation non signés — observés aussi bien dans des variantes .NET que Golang — qui déploient une extension Chromium malveillante se faisant passer pour un utilitaire « Google Notes » inoffensif.

Cette campagne est liée à un article de blog publié précédemment par McAfee Labs, intitulé « Sinkholing CountLoader: Insights into Its Recent Campaign », étant donné que le même cybercriminel semble être derrière ces deux opérations. Lors de cette étude antérieure, nous avons analysé une charge virale de type « crypto clipper » qui avait été injectée directement dans la mémoire. Nous examinons ici une autre variante de la charge virale de la phase finale : une extension malveillante pour navigateur conçue pour intercepter et manipuler les transactions en cryptomonnaie.

Dans ce rapport, nous expliquons en détail le fonctionnement de cette extension et proposons une analyse technique des mécanismes qui confèrent à cette menace un caractère particulièrement singulier. Cette extension fonctionne comme un crypto clipper ciblant le presse-papiers : elle surveille les opérations de copier-coller, identifie les adresses de portefeuilles à travers plusieurs blockchains et les remplace par des adresses contrôlées par le cybercriminel juste avant que la victime ne colle le contenu. La plupart des transactions sur la blockchain étant irréversibles, une seule exécution sans interruption peut entraîner des pertes financières irrémédiables.

Deux caractéristiques distinguent cette campagne des menaces habituelles liées aux clippers : 

  1. Exploitation de la couche de confiance de Chromium. Le programme d’installation installe à votre insu une extension malveillante dans les navigateurs basés sur Chromium, tels que Google Chrome, Brave et Microsoft Edge, en modifiant les fichiers de paramètres protégés du navigateur. En règle générale, ces navigateurs stockent des données de vérification de sécurité (valeurs de hachage/HMAC) aux côtés des paramètres sensibles afin de détecter toute modification non autorisée. Le malware recalcule et met à jour ces valeurs de sécurité après avoir altéré les fichiers, ce qui induit le navigateur en erreur en lui faisant croire que l’extension malveillante a été installée en toute légitimité. L’extension peut ainsi contourner la procédure normale d’installation via la boutique en ligne des extensions et se charger en arrière-plan sans l’accord de l’utilisateur. Si, pour les versions récentes des navigateurs Chrome et Edge, la victime doit activer manuellement le mode développeur pour que l’extension se charge correctement, les utilisateurs disposant de versions obsolètes de navigateurs basés sur Chromium restent en revanche exposés à un risque élevé. De plus, même dans les versions les plus récentes, un cybercriminel peut toujours recourir à des techniques d’ingénierie sociale pour activer le mode développeur.
  2. Système de commande et de contrôle basé sur la blockchain. L’extension ne contient pas de domaine C2 codé en dur. Au lieu de cela, elle interroge un endpoint RPC de la blockchain publique, appelle une méthode de contrat intelligent en lecture seule, puis décode la réponse lors de l’exécution afin de révéler son serveur de commande et de contrôle (C2) actif, identifié au moment de l’analyse comme étant Zebregts[.]com. Cette technique, souvent appelée « EtherHiding », complique les efforts de mise hors service, car le cybercriminel peut faire tourner son infrastructure en mettant à jour la valeur d’un contrat intelligent plutôt qu’en redéployant le malware. 

Les données télémétriques de McAfee indiquent une propagation de l’infection à l’échelle mondiale, avec une concentration marquée en Inde. L’étendue géographique de ces activités laisse supposer un ciblage opportuniste des utilisateurs de cryptomonnaies à des fins de consommation, plutôt qu’une opération spécifique à une région donnée. 

Répartition géographique  

Carte du monde montrant les pays touchés par cette menace de cybersécurité
Nos recherches montrent que ce sont là les régions du monde les plus touchées.

L’analyse des données télémétriques indique que les infections sont réparties à l’échelle mondiale, avec une concentration nettement plus élevée observée en Inde par rapport aux autres régions.

Cette présence géographique étendue met en évidence la large portée de la campagne, ce qui laisse supposer un ciblage opportuniste plutôt qu’une attaque visant une région en particulier. 

L’extension malveillante : « Google Notes » 

Ce malware se fait passer pour une extension Google Notes en apparence inoffensive. 

Lextension malveillante de Google Chrome.
Figure 1. Cette image montre l’extension malveillante au cœur de cette campagne.

L’extension déployée se présente sous la forme d’une application de prise de notes minimaliste et d’apparence légitime, baptisée « Google Notes », dotée d’une icône épurée et d’une interface utilisateur fonctionnelle (et simpliste).

La stratégie est bien pensée : lorsqu’un utilisateur ouvre manuellement l’extension, il constate que celle-ci fonctionne conformément à ce qui est annoncé, ce qui dissipe ses soupçons. La logique malveillante de l’extension est implémentée dans des scripts de type « service worker » et des scripts de contenu qui s’exécutent en arrière-plan et qui fonctionnent entièrement hors de la vue de l’interface utilisateur.

Un premier signal d’alerte majeur apparaît dès l’installation de l’extension, qui demande des autorisations de sécurité et des droits d’accès disproportionnés par rapport à une application de prise de notes classique : 

  • Accès à toutes les URL, permettant l’injection de scripts dans chaque site consulté par l’utilisateur 
  • Accès à l’historique de navigation 
  • Accès en lecture et en écriture au presse-papiers 

Mesures d’atténuation et recommandations 

Pour les particuliers 

  1. Avant de valider toute transaction en cryptomonnaie, vérifiez visuellement les six premiers et les six derniers caractères de l’adresse du destinataire en les comparant à la source — de préférence sur un appareil distinct. Cette simple habitude permet de faire échouer la grande majorité des attaques de clipper. 
  2. Installez des extensions de navigateur exclusivement à partir du Chrome Web Store officiel, de la boutique d’extensions Edge ou d’une boutique équivalente. Une extension qui figure dans votre liste d’extensions installées sans que vous ayez souvenir de l’avoir installée doit être considérée comme suspecte. 
  3. Vérifiez les autorisations accordées à chaque extension installée. Un outil de prise de notes n’a aucune raison valable d’accéder à l’ensemble des sites Web, à l’historique de navigation ou au presse-papiers. 
  4. Évitez d’exécuter des fichiers exécutables non signés provenant de sources non fiables, en particulier celles proposant des versions gratuites ou piratées de logiciels payants — un vecteur de distribution courant pour ce type de programme d’installation. 
  5. Assurez-vous que la protection des terminaux est à jour et activée ; les clients McAfee sont protégés contre cette campagne spécifique, comme expliqué ci-dessous. 

Les solutions de sécurité McAfee contribuent à protéger les utilisateurs à plusieurs niveaux : 

1. McAfee détecte cette menace sous le nom de CryptoStealer.NE et assure la sécurité de ses clients 

Figure 2. Cette capture décran montre comment McAfee Antivirus bloque cette menace pour les particuliers.
Figure 2. Cette capture d’écran montre comment McAfee Antivirus bloque cette menace pour les particuliers.

2. Protection contre les téléchargements malveillants

Le comportement du programme d’installation — qui télécharge et exécute des charges virales à distance — est détecté et bloqué par McAfee avant que l’infection ne soit effective. Lors de nos tests, tous les domaines et URL malveillants ont été bloqués par McAfee. 

3. Protection du réseau

Les connexions à des infrastructures malveillantes connues (serveurs C2) sont bloquées par McAfee, ce qui empêche la récupération des adresses de portefeuilles 

4. Renseignements en temps réel sur les menaces

Cette menace ayant été identifiée dans les données télémétriques de McAfee, des mesures de protection peuvent être rapidement mises en place pour : 

  • Bloquer les variantes similaires 
  • Détecter les infrastructures associées 
  • Protéger les clients dans le monde entier 

Fonctionnement de cette campagne malveillante 

Ce que fait le malware  

  1. Il installe une extension de navigateur à votre insu (chargement latéral d’une extension Web). 
  2. Il surveille ce que vous copiez et collez (en particulier les adresses cryptographiques). 
  3. Il s’exécute lorsque vous effectuez une transaction cryptographique. 
  4. Il remplace discrètement l’adresse du portefeuille par celle du cybercriminel. 
  5. Vos fonds sont transférés au cybercriminel au lieu d’être versés au destinataire prévu. 

Les transactions en cryptomonnaie étant généralement irréversibles, les victimes risquent de perdre définitivement leurs fonds.

Figure 3. Fonctionnement synthétisé de lextension
Figure 3. Fonctionnement synthétisé de l’extension

Principales capacités identifiées 

1. Installation silencieuse d’une extension 

Ce malware n’utilise pas la boutique officielle du navigateur. Au lieu de cela, il modifie directement les fichiers du navigateur pour donner l’impression que l’extension est installée (chargement latéral de l’extension de navigateur).

Cette méthode contourne les invites de sécurité habituelles et échappe à la vigilance de l’utilisateur. 

Figure 4. Journaux Procmon montrant que BaseZipInstaller (le programme dinstallation Web malveillant) écrit dans les fichiers Secure Preferences de Chrome et dEdge
Figure 4. Journaux Procmon montrant que BaseZipInstaller (le programme d’installation Web malveillant) écrit dans les fichiers Secure Preferences de Chrome et d’Edge

2. Accès complet au navigateur 

Figure 5. Autorisations requises pour lextension Chrome
Figure 5. Autorisations requises pour l’extension Chrome
Figure 6. Fichier manifest de lextension Web
Figure 6. Fichier manifest de l’extension Web

L’extension malveillante demande des autorisations excessives, telles que : 

  • Accès à tous les sites Web 
  • Consultation de l’historique de navigation 
  • Lecture et modification du contenu du presse-papiers 

3. Interception d’adresses cryptographiques

L’extension intègre une logique permettant de détecter les adresses de portefeuilles pour plusieurs cryptomonnaies, notamment : 

Figure 7. Expression régulière (Regex) de cryptomonnaies codées en dur et adresse de secours
Figure 7. Expressions régulières (Regex) de cryptomonnaies codées en dur et adresse de secours
  • Les adresses de portefeuille de secours indiquées dans le code ne sont pas utilisées pour toutes les transactions ; elles servent plutôt de mécanisme de secours lorsque la récupération dynamique d’adresses à partir du serveur contrôlé par le cybercriminel échoue.  
  • Dans des conditions normales de fonctionnement, l’extension récupère des adresses de remplacement auprès d’un serveur distant, ce qui permet une attribution dynamique des portefeuilles, éventuellement spécifique à chaque victime.  
  • Les adresses de secours permettent à l’attaque de rester fonctionnelle même si l’infrastructure de commande et de contrôle est temporairement indisponible ou bloquée. 
Figure 8. Extension malveillante exécutant une résolution dynamique dadresses cryptographiques
Figure 8. Extension malveillante exécutant une résolution dynamique d’adresses cryptographiques
  • Cette fonction a pour rôle d’obtenir l’adresse de portefeuille de remplacement contrôlée par le cybercriminel qui correspond à l’adresse d’origine de la victime.  
  • Elle envoie l’adresse de portefeuille interceptée au serveur backend du cybercriminel et utilise la réponse pour remplacer dynamiquement l’adresse d’origine.  
  • Si la requête vers le serveur backend échoue, la fonction se rabat sur une adresse de portefeuille prédéfinie et codée en dur, de façon à éviter toute interruption de l’activité malveillante. 
  • 3J98t1Wxxxx est l’adresse qui a été copiée dans le presse-papiers. 

4Contournement de la détection et furtivité 

Figure 8. Fichier Settings.js montrant la configuration
Figure 8. Fichier Settings.js montrant la configuration
  • La configuration comprend une clé API codée en dur, qui est utilisée par l’extension pour authentifier la communication avec l’infrastructure contrôlée par le cybercriminel.  
  • Une URL RPC pointant vers un nœud de blockchain publique est utilisée pour déterminer de manière dynamique les informations relatives au serveur backend, ce qui permet au cybercriminel de dissimuler des infrastructures critiques derrière des systèmes décentralisés.  
  • La présence d’une adresse et d’une méthode de contrat intelligent indique que le malware récupère son domaine de commande et contrôle (C2) de manière indirecte via des requêtes sur la blockchain, ce qui complique sa neutralisation et son suivi. 
  • La liste des domaines sur liste noire contient une liste de sites Web liés à l’inspection de la blockchain sur lesquels l’extension Web ne fonctionnera pas. Cette mesure vise à éviter d’alerter la victime lorsqu’elle tente de coller sa propre adresse pour consulter le solde de son portefeuille ou vérifier les transactions de celui-ci. 
Figure 9. Identification du domaine C2 du cybercriminel via un contrat intelligent Ethereum (etherhiding)
Figure 9. Identification du domaine C2 du cybercriminel via un contrat intelligent Ethereum (etherhiding)
Figure 10. Charge virale de la requête avec ladresse du contrat Ethereum
Figure 10. Charge virale de la requête avec l’adresse du contrat Ethereum
  • L’analyse dynamique a révélé que le malware obtient son domaine de commande et de contrôle via un contrat intelligent de blockchain, qui renvoie le domaine devops-offensive[.]cc lors de l’exécution.  
  • La réponse provenant de la blockchain est décodée au moment de l’exécution, révélant ainsi le domaine C2 actif (devops-offensive.cc).  
  • Ce domaine n’est pas codé en dur, ce qui permet au cybercriminel de mettre à jour l’infrastructure sans modifier le malware.  
  • Le domaine résolu est mis en cache localement afin d’assurer la persistance et de réduire le nombre de requêtes réseau répétées. 
Figure 11. Cette capture décran montre la chaîne codée longue contenant le domaine malveillant.
Figure 11. Cette capture d’écran montre la chaîne codée longue contenant le domaine malveillant.

Cette chaîne codée longue est décodée à l’aide de cette fonction pour obtenir le domaine final du cybercriminel.

Figure 12. Cette capture décran montre le domaine final du cybercriminel.
Figure 12. Cette capture d’écran montre le domaine final du cybercriminel.

Techniques de persistance et d’évasion 

La stratégie de persistance et d’évasion de cette campagne est délibérée et comporte plusieurs niveaux. Le cybercriminel a clairement optimisé son système en fonction de deux critères : une faible visibilité pour l’utilisateur final et une grande résistance à la mise hors service et à l’analyse statique. 

Persistance 

  • L’enregistrement de l’extension via la manipulation des fichiers Secure Preferences garantit que l’extension se chargera à chaque démarrage ultérieur du navigateur sans nécessiter de mécanisme de persistance Windows supplémentaire —ni clés Run dans le registre, ni tâches planifiées, ni services que les chasseurs de menaces sur terminaux inspectent généralement. 
  • Le mode développeur est activé par programmation lorsque cela s’avère nécessaire, ce qui permet aux extensions décompressées de rester en place sans déclencher le flux périodique d’« avertissement concernant des extensions décompressées » que Chromium affiche pour dissuader le chargement latéral d’extensions. 
  • Le domaine C2 mis en cache permet à l’extension de continuer à fonctionner avec un serveur backend dont le bon fonctionnement est avéré, même si le point de terminaison RPC de la blockchain est brièvement indisponible. 

Évasion 

  • L’identité visible de l’extension — une simple application de prise de notes appelée « Google Notes » — constitue une couverture plausible en cas d’examen superficiel de la liste des extensions installées. 
  • Les valeurs HMAC recalculées satisfont aux critères de vérification de l’intégrité de Chromium, ce qui permet d’éviter l’affichage de la bannière d’avertissement « Extension installée à partir d’une source inconnue » qui alerterait l’utilisateur. 
  • Le programme d’installation s’autosupprime après s’être exécuté, éliminant ainsi la trace la plus évidente de la compromission initiale sur le disque. 
  • La résolution C2 via une blockchain publique signifie qu’aucun domaine C2 persistant n’est observable dans le paquet du malware lui-même ; les détections basées sur le réseau et conçues à partir d’indicateurs codés en dur ne se déclencheront pas tant que le domaine n’aura pas été résolu et contacté. 
  • Les variantes multilingues du programme d’installation (.NET et Golang) réduisent l’efficacité des signatures des artefacts de compilation et des caractéristiques binaires. 
  • Le remplacement dynamique des portefeuilles par adresse signifie que les adresses publiées des cybercriminels deviennent rapidement obsolètes et ne se transforment pas en entrées durables dans les listes noires — l’équipe de sécurité doit bloquer le service en arrière-plan lui-même, et non les adresses qu’il génère. 

Logique de substitution des portefeuilles 

La logique du clipper repose sur deux couches : une couche « contenu-script » qui surveille l’activité du presse-papiers et les champs de saisie DOM sur toutes les adresses d’origine visitées, et une couche d’arrière-plan qui communique avec le serveur backend du cybercriminel pour récupérer les adresses de remplacement.

Lorsque l’extension détecte un événement de copie, elle applique au contenu du presse-papiers un ensemble d’expressions régulières spécifiques aux cryptomonnaies. Si une correspondance est trouvée, l’adresse interceptée est transmise au serveur backend du cybercriminel via une requête authentifiée (l’authentification s’effectuant à l’aide de la clé API intégrée à la configuration). Le serveur backend répond en fournissant une adresse de remplacement spécifique à l’adresse d’origine envoyée. L’adresse de remplacement est alors réécrite dans le presse-papiers, écrasant ainsi l’adresse légitime avant que la victime n’ait le temps de la coller.

Des tests effectués sur un client backend reconstitué — créé en réimplémentant en Python le format de requête et la logique de décodage des réponses de l’extension — ont permis de mettre en évidence un profil comportemental révélateur : 

  • Bitcoin (BTC), Ethereum, Bitcoin Cash, Ripple et Dash : chaque adresse fournie est associée à une adresse unique contrôlée par le cybercriminel. Chaque fois que la même adresse originale est envoyée, la même adresse de remplacement est renvoyée, ce qui indique l’existence d’une correspondance déterministe un-à-un gérée côté serveur. 
  • Solana : toutes les adresses soumises se résument à une seule adresse du cybercriminel, ce qui suggère que la fonctionnalité de mise en correspondance par victime est implémentée de manière sélective selon la chaîne 

Analyse des portefeuilles cryptographiques du cybercriminel 

À partir des fragments de code de l’extension Web chargée de récupérer les adresses de remplacement, un script Python a été élaboré afin d’extraire par programmation les adresses de portefeuilles du cybercriminel. La charge virale a été conçue à partir du code du cybercriminel lui-même, et le fragment de code « get replacement address » en a été directement extrait. La logique utilisée par le cybercriminel pour décoder les données reçues du serveur C2 a également été reproduite fidèlement dans le script.

Le script a ensuite été exécuté à l’aide de quelques adresses de portefeuilles Bitcoin (BTC) de test. Les résultats ont montré que, pour chaque adresse Bitcoin fournie, une adresse Bitcoin unique était renvoyée en réponse, et que toutes les adresses renvoyées correspondaient à des portefeuilles BTC valides. Cela signifie que, pour chaque adresse BTC fournie, le cybercriminel génère dynamiquement un nouveau portefeuille lié à cette adresse spécifique. De plus, lorsque cette même adresse a été fournie à nouveau, la même adresse BTC a été renvoyée, ce qui confirme que chaque adresse BTC d’une victime est associée de manière déterministe à une adresse spécifique unique contrôlée par le cybercriminel. Si certains de ces portefeuilles appartenant au cybercriminel contenaient des fonds et d’autres étaient vides, le nombre total inconnu de ces portefeuilles rend difficile toute estimation fiable du montant total de cryptomonnaie qui a été volé.

Le même comportement a été observé pour Ethereum, pour lequel des adresses de portefeuilles différentes ont été renvoyées pour chaque entrée. Il est intéressant de noter que, lorsque le script a été testé avec des adresses Solana, une seule adresse a été renvoyée, quel que soit le nombre d’entrées différentes fournies. Cela semble indiquer que le cybercriminel a mis en place la fonctionnalité de mappage par adresse uniquement pour certaines cryptomonnaies, tandis que pour d’autres, il utilise un seul portefeuille de collecte statique. Comme l’adresse Solana est commune à toutes les victimes, une augmentation notable de son solde est observée. Par ailleurs, il s’est avéré que l’une des adresses Ethereum identifiées détenait des fonds pour un montant d’environ 1 902 USD.

En résumé, les cryptomonnaies pour lesquelles des adresses de portefeuilles uniques sont générées pour chaque victime sont notamment le Bitcoin, l’Ethereum, le Bitcoin Cash, le Ripple et le Dash. 

Figure 13. La charge virale a été conçue comme un code malveillant.
Figure 13. La charge virale a été conçue comme un code malveillant
Figure 14. Fragment de code permettant dobtenir ladresse de remplacement, tiré du code du cybercriminel
Figure 14. Fragment de code permettant d’obtenir l’adresse de remplacement, tiré du code du cybercriminel
Figure 15. La logique utilisée par le cybercriminel pour décoder les données reçues du serveur C2 a également été implémentée.
Figure 15. La logique utilisée par le cybercriminel pour décoder les données reçues du serveur C2 a également été implémentée.

Exécution du script avec quelques adresses tests de portefeuilles Bitcoin

Figure 16. Pour chaque adresse Bitcoin, une adresse Bitcoin unique a été renvoyée, et toutes les adresses sont des adresses de portefeuilles BTC valides.
Figure 16. Pour chaque adresse Bitcoin, une adresse Bitcoin unique a été renvoyée, et toutes les adresses sont des adresses de portefeuilles BTC valides.
Figure 17. De même, des adresses uniques ont été utilisées pour Ethereum.
Figure 17. De même, des adresses uniques ont été utilisées pour Ethereum.
Figure 18. Exécution du script pour les adresses tests Solana
Figure 18. Exécution du script pour les adresses tests Solana

Heureusement, pour Solana, nous n’obtenons qu’une seule adresse lorsque plusieurs adresses sont fournies. Cela indique que le cybercriminel n’a implémenté la fonctionnalité de mappage d’adresses que pour certaines cryptomonnaies spécifiques. 

Figure 19. Vous pouvez voir ici une hausse du montant du solde.
Figure 19. Vous pouvez voir ici une hausse du montant du solde.
Figure 20. Ladresse ETH présentait un solde de 1 902 USD.
Figure 20. L’adresse ETH présentait un solde de 1 902 USD.

Analyse technique du fichier.net (programme d’installation de l’extension) 

Figure 21. BaseZipInstaller est un programme dinstallation .NET non signé.
Figure 21. BaseZipInstaller est un programme d’installation .NET non signé.
Figure 22. Configuration enregistrée telle quelle apparaît dans Dnspy
Figure 22. Configuration enregistrée telle qu’elle apparaît dans Dnspy
  • Le malware intègre un fichier JSON de configuration complet directement dans le fichier binaire, ce qui lui évite de devoir récupérer les données de configuration initiales auprès de sources externes.  
  • Cette configuration intégrée comprend des informations essentielles telles que les clés API, l’URL du serveur backend, les extensions de portefeuille ciblées, ainsi que le manifeste complet de l’extension avec des autorisations étendues.  
Figure 23. Fonction principale à partir de laquelle lexécution commence
Figure 23. Fonction principale à partir de laquelle l’exécution commence
  • Le programme d’installation récupère et valide une archive ZIP distante (google-services[.]cc/base[.]zip), qui sert de charge virale principale pour le déploiement de l’extension de navigateur malveillante, marquant ainsi le passage de l’infection initiale à la compromission au niveau du navigateur. 
Figure 24. Lextension est créée à lemplacement suivant dans le système, avec des fichiers téléchargés sous le nom base.zip.
Figure 24. L’extension est créée à l’emplacement suivant dans le système, avec des fichiers téléchargés sous le nom base.zip.
Figure 25. Dnspy affichant la liste des navigateurs ciblés
Figure 25. Dnspy affichant la liste des navigateurs ciblés
  • Le programme d’installation passe en revue plusieurs navigateurs basés sur Chromium, notamment Chrome, Edge, Opera et Brave, afin d’identifier les profils utilisateur disponibles sur le système.  
  • À chaque profil détecté, le malware ferme de force le processus du navigateur afin de modifier en toute sécurité les fichiers de configuration sans subir d’interférence.  
  • Il injecte ensuite l’extension malveillante en modifiant directement les fichiers Secure Preferences et Preferences, ce qui permet à l’extension d’être chargée sans intervention de l’utilisateur. 
plus de code
  • Le malware identifie les chemins d’installation des navigateurs en interrogeant les répertoires système standard, ce qui lui permet de localiser les dossiers de données utilisateur dans Chrome, Edge, Opera et Brave.  
  • Il répertorie systématiquement les profils de navigateur et recherche spécifiquement la présence du fichier Secure Preferences, qui stocke des données essentielles sur la configuration du navigateur et ses extensions.  
  • En ciblant des profils à l’aide du fichier Secure Preferences, le malware s’assure de ne modifier que des environnements de navigateur valides, ce qui accroît la fiabilité de l’injection d’extensions. 
Nous pouvons voir lévénement WriteFile dans le fichier Secure Preferences de Chrome et de Microsoft Edge lorsque les détails de lextension téléchargée sont enregistrés dans ces fichiers de configuration.
Nous pouvons voir l’événement WriteFile dans le fichier Secure Preferences de Chrome et de Microsoft Edge lorsque les détails de l’extension téléchargée sont enregistrés dans ces fichiers de configuration.
Figure 27. Logique suivie par le cybercriminel pour resigner les fichiers Secure Preferences
Figure 27. Logique suivie par le cybercriminel pour resigner les fichiers Secure Preferences
  • Le malware lit et modifie le fichier Secure Preferences du navigateur, qui gère les extensions installées et leur niveau de confiance.  
  • Il injecte l’extension malveillante dans la configuration et tente de resigner les données modifiées, de façon à ce que les modifications apparaissent comme légitimes lors des contrôles d’intégrité du navigateur.  
  • La configuration mise à jour est ensuite réécrite sur le disque, ce qui garantit que l’extension se charge automatiquement et reste active même après le redémarrage du navigateur. 
Figure 27B. Le chemin daccès à lextension est ajouté au fichier Secure Preferences de Chrome.
Figure 27B. Le chemin d’accès à l’extension est ajouté au fichier Secure Preferences de Chrome.
Figure 28. Logique permettant de contourner les défenses du navigateur Brave
Figure 28. Logique permettant de contourner les défenses du navigateur Brave
  • Dans le cas de navigateurs tels que Brave et Opera, le malware injecte l’extension malveillante directement dans la configuration du navigateur en ajoutant des entrées dans la section extensions.settings (ou extensions.opsettings).  
  • Il met également à jour les champs liés à l’intégrité (protection.macs) afin que l’extension injectée soit considérée comme fiable par le navigateur.  
  • De plus, le malware tente d’activer le mode développeur par programmation, de façon à permettre aux extensions décompressées de s’exécuter avec moins de restrictions. 
Figure 29. Logique suivie par le cybercriminel pour obtenir lidentifiant de lappareil utilisé pour calculer ensuite les valeurs dintégrité
Figure 29. Logique suivie par le cybercriminel pour obtenir l’identifiant de l’appareil utilisé pour calculer ensuite les valeurs d’intégrité
  • Le malware tente de recalculer les signatures d’intégrité du navigateur en générant de nouvelles valeurs MAC (Message Authentication Code) pour le fichier Secure Preferences modifié.  
  • Il utilise des identifiants propres au système, tels que le SID de la machine, combinés à une valeur de départ afin de reproduire le mécanisme de vérification interne de Chrome.  
  • En recalculant ces contrôles d’intégrité (macs et super_mac), le malware tente de faire passer ses modifications non autorisées pour des modifications légitimes auprès du navigateur. 
Figure 30. Logique dautosuppression
Figure 30. Logique d’autosuppression
  • Le malware intègre un mécanisme d’autosuppression conçu pour supprimer le fichier exécutable du programme d’installation une fois celui-ci exécuté avec succès.  
  • Il lance un processus d’invite de commande caché qui retarde brièvement l’exécution avant de supprimer le fichier d’origine du disque. 

Conclusion 

Cette campagne illustre clairement la direction que prend le vol de cryptomonnaies ciblant les particuliers. Le cybercriminel s’est appuyé sur la catégorie la plus ancienne et la plus simple de malware cryptographique — le clipper — et a discrètement renforcé trois de ses maillons les plus faibles. Les adresses statiques du cybercriminel ont été remplacées par un mappage spécifique à chaque victime côté serveur. Les domaines de commande et de contrôle, fragiles et codés en dur, ont été remplacés par une recherche basée sur la blockchain, que le cybercriminel peut modifier à l’aide d’une seule transaction. Enfin, un injecteur vulnérable a été remplacé par une extension Chromium intégrée à l’application à laquelle l’utilisateur fait le plus confiance, chargée sous la signature d’intégrité propre au navigateur.

McAfee continuera à surveiller cette campagne et l’infrastructure associée. Nos clients sont protégés par les mécanismes de détection existants et bénéficieront de mises à jour basées sur la télémétrie à mesure que de nouvelles variantes et des infrastructures modifiées seront identifiées. 

Indicateurs de compromission (IoC)

Type  Catégorie  Valeur 
SHA-256  Programme d’installation .NET (BaseZipInstaller)  2735e12030c195fb5454e4736c51b55b59664b93cae9f4bd5317afcd9c2af0bf  053620962047f50a91c6e8d1a6519eccc41fab51473f033086b4d816abe8bcb0   
SHA-256  Variante du programme d’installation compilée en Golang  11be4c47ff049322de41743f62544cafd32d67e24ad653b7ebedf8ebd63e0962    1432393691b415d0cd4680d9cee73e60896fbe63300d9f0355c96e91817e4b1d   
URL  Distribution de la charge virale  hxxps://google-services[.]cc/base[.]zip 
Domaine  Commande et contrôle (géré via un contrat intelligent)  devops-offensive[.]cc  Zebregts[.]com 
Portefeuille BTC  Portefeuille cryptographique  3JvDBvKbS6YYMKjV3R9e9Zfd67f467fNLy  1BbhVBxpniuZuAL1gGZnEMdQhmz9JGWpyT  3AcPNVh7NyESwX3ECymy3rkdH4Ke2c26Tj  1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX 
Artefact  Cible de chargement latéral  Fichier Secure Preferences de Chromium (profils Chrome, Edge, Brave et Opera) 
Fichiers d’extension  manifest.json   crypto-patterns.js    Interceptor.js    content-script.j     cache.js     domain-resolver.js    service-worker.js    api-client.js  ed2599d6a8f30d5eaf14ad7f855aece0acdf7efa4a148eb18e4d9f0d8e2cd90c   daf82c67e8e5df6bbd5370172ac9374aa7dce48af05496e8ec3dba7b602c619b   6eb2f07265dd95cacd39dfcf0705786b97f3e173cf4e9b3dfe7bad141c9a9dd5    a2ffdbedc5c9f5400a2b1cf5d35f5ec1df06a74d0345f1035bcf75d36ed73e01     eb84ba4a0cd95655a021865d4fec93ae3393f86cc9848810ed0b49035b1c5e2c   6aaba685669d779ef8be8f7f4231096cfafd0ef386f3897c5e2106c177724fc8     2599064901308a97540af29197ed0b38702bbee38d6dbbfa61cf9eb5878353f3   ab450927b37e1b68e2be68832c354ac600e86e2545a904d4ca0ea283f2600cc2    
Découvrez McAfee+

Protection contre le vol d’identité et de votre vie privée en ligne

FacebookLinkedInTwitterEmailCopy Link

Restez informé

Suivez-nous pour rester au courant des actualités de McAfee et des dernières menaces pour la sécurité mobile et grand public.

FacebookTwitterInstagramLinkedINYouTubeRSS

More from Sécurité Internet

Back to top