Préface

Notre enquête a mis au jour une campagne coordonnée au cours de laquelle plusieurs extensions Chrome, initialement inoffensives et sans lien apparent, ont été transformées en outils d'injection de contenu contrôlés à distance. Bien que les extensions paraissent inoffensives et ne demandent aucune autorisation particulière, chacune a été modifiée pour télécharger périodiquement un fichier de configuration depuis un domaine contrôlé par l'attaquant. Ces règles dynamiques permettaient aux extensions de remplacer le contenu des pages web, d'injecter du code HTML externe et de manipuler les sites visités par l'utilisateur sans nécessiter de mise à jour du Chrome Web Store.

L'analyse de l'infrastructure a révélé que la fonctionnalité malveillante des extensions avait été introduite. immédiatement après les transferts de propriété sur le Chrome Web Store, un schéma observé dans plusieurs cas. Parallèlement, les domaines de commande et de contrôle (C2) utilisés pour transmettre des instructions à distance ont été enregistrés. peu avant la publication des mises à jour compromisesCes éléments suggèrent une préparation préméditée de l'infrastructure de l'attaquant. La convergence d'une logique d'injection identique, de modèles architecturaux partagés, d'enregistrements de domaines synchronisés et de modifications de code post-acquisition indique que ces extensions ont été compromises et mises en œuvre dans le cadre d'une attaque. campagne coordonnée et soutenue par l'infrastructure plutôt que des incidents isolés.

Analyse technique

Bien que chaque extension présentât une fonctionnalité inoffensive différente, son code interne implémentait les mêmes comportements à haut risque. Dans toutes les extensions analysées, un mécanisme caché récurrent permettait la manipulation dynamique et à distance des pages web. Nous nous concentrerons ci-dessous sur les comportements malveillants persistants dans toutes les extensions détectées.

  1. Récupération de la configuration à distance

Chaque extension contactait un serveur externe toutes les 5 minutes pour télécharger un nouveau fichier de configuration (config.php ou theme.php).

Ce fichier contenait des instructions contrôlant :

  • Quels sites web cibler
  • Quels éléments DOM modifier ?
  • Quelle charge utile distante injecter

Figure 1. Une expression régulière correspondant à 'location.href'

Étant donné que ces configurations proviennent de domaines contrôlés par des attaquants, le comportement de l'extension peut être modifié instantanément, sans aucune mise à jour via le Chrome Web Store.

Cette conception crée efficacement un canal de commande et de contrôle dans le navigateur.

  1. Injection DOM dynamique

La configuration téléchargée définissait des règles telles que :

  • modèle – regex pour cibler les sites web
  • sélecteur – éléments du DOM à remplacer
  • url – point de terminaison distant qui fournit du HTML/texte injecté
  • attribut – la propriété DOM à remplacer (par exemple, innerHTML, src, href)

Figure 2. Remplacement d'objet DOM

Ces extensions utilisaient ces règles pour récupérer du contenu contrôlé par l'attaquant et l'injecter directement dans les pages web :

Cela permet aux serveurs distants de :

  • Remplacer les formulaires de connexion
  • Insérer des superpositions de phishing
  • Modifier les pages financières ou d'achat
  • Injecter des publicités ou des balises de suivi
  • Modifier le contenu des médias sociaux

Tous sans alertes, autorisations ni visibilité de l'utilisateur.

  1. Manipulation persistante via MutationObservers

Pour garantir que les modifications ne puissent pas être annulées par le site web, l'extension utilise MutationObserver. 

Ce système réapplique en continu le contenu injecté à chaque mise à jour de la page, assurant ainsi une manipulation persistante et furtive.

Les extensions partagent une architecture commune conçue pour permettre aux serveurs distants de réécrire n'importe quelle page Web visitée par l'utilisateur, silencieusement et de manière répétée. Cela constitue un système de manipulation de navigateur extrêmement flexible et dangereux, se faisant passer pour un utilitaire inoffensif.

Analyse des infrastructures

Notre enquête a révélé un écosystème coordonné de transferts de propriété d'extensions, de domaines de commande et de contrôle (C2) rapidement provisionnés et de mises à jour malveillantes synchronisées, autant d'indicateurs forts que ces extensions ont été compromises et mises en œuvre dans le cadre d'une campagne structurée plutôt que d'événements isolés.

  1. Extension des transferts de propriété et militarisation post-acquisition

Les métadonnées historiques du Chrome Web Store révèlent une tendance constante : les extensions se comportaient de manière inoffensive jusqu’à peu de temps après le changement de propriétaire. Sur plusieurs échantillons, nous avons observé :

  • Une modification apportée au propriétaire ou au développeur de l'extension indiquée peu avant la mise à jour malveillante.
  • Aucune trace de logique de configuration à distance dans les versions précédentes.
  • Une insertion soudaine de :
    • Récupération périodique des fichiers de configuration distants
    • Règles de réécriture du DOM
    • Appels de balise à install.php
    • Prise en charge du code permettant la manipulation de contenu persistant

Les avis des utilisateurs corroborent cette chronologie, signalant un comportement inattendu immédiatement après ces mises à jour.

Cela correspond à une stratégie connue dans les campagnes de lutte contre les abus de services de vulgarisation agricole : Les acteurs malveillants achètent des extensions à forte installation et les modifient avec un framework malveillant modulaire.

  1.  Couplage temporel entre l'enregistrement de domaines C2 et les mises à jour malveillantes

L'analyse des enregistrements WHOIS relatifs à l'infrastructure utilisée par les extensions révèle une corrélation temporelle frappante.

Principales observations

  • Des noms de domaine ont été enregistrés jours à semaines avant la publication des versions malveillantes de l'extension.
  • Les mises à jour malveillantes ont commencé à interroger ces domaines presque immédiatement après leur mise en ligne.
  • Les domaines partagent des conventions de nommage et des caractéristiques d'infrastructure similaires, ce qui suggère un approvisionnement centralisé.

Ce schéma correspond à la méthode employée par les adversaires pour préparer leur infrastructure opérationnelle juste avant d'activer les extensions compromises.

  1. Versions propres vs. versions malveillantes

La comparaison des codes entre les versions antérieures et ultérieures met en évidence un point d'inflexion clair :

Versions pré-compromis (bénignes)

  • Ne contenait que les fonctionnalités annoncées (par exemple, l'édition d'images, la détection vidéo, l'extraction de DOI).
  • Aucune ressource de configuration externe.
  • Aucune injection de contenu dynamique.
  • Aucun mécanisme de surveillance persistant (par exemple, MutationObservers).
  • Aucune API de débogage ou d'empreinte digitale.

Versions post-compromis (malveillantes)

  • Ajout d'une boucle de récupération de configuration à distance (interrogation généralement toutes les 5 minutes).
  • Introduction de la manipulation du DOM pilotée par instructions à l'aide de règles correspondant à des expressions régulières.
  • Intégration d'un moteur d'injection réutilisable capable de réécrire le contenu arbitraire d'une page.
  • Balises d'installation intégrées pour la transmission de données télémétriques aux domaines contrôlés par l'attaquant.

Figure 3. kbaofbaehfbehifbkhplkifihabcicoi avant et après

Cette différence appuie fortement l'hypothèse d'une militarisation délibérée après l'acquisition.

  1. Indicateurs d'une boîte à outils partagée ou d'un acteur de menace unifié

Une comparaison par extension croisée a révélé un degré élevé de similarité structurelle :

  • Intervalles d'interrogation identiques (300 secondes).
  • Logique quasi identique pour l'analyse des règles de configuration à distance.
  • Nommage cohérent des champs tels que pathMatch, selector, applyMethod, resourceLink.
  • Points de terminaison distants récurrents (config.php, theme.php, install.php).
  • Des schémas de suppression d'erreurs similaires et des appels fetch() échouant silencieusement.
  • Correspondance des modèles dans la manière dont le contenu injecté remplace les attributs DOM.
ID de poste Changement de propriétaire Noms de domaines Version malveillante diffusée
kbaofbaehfbehifbkhplkifihabcicoi 2025-07-19 2025-07-27 2025-07-30
ijhbioflmfpgfmgapjnojopobfncdeif 2025-07-23 2025-08-20 2025-08-27
nimnhhcainjoacphlmhbkodofenjgobh 2025-07-19 2025-08-20 2025-08-22
jleonlfcaijhkgejhhjfjinedgficgaj 2025-04-14 2025-08-22 2025-08-26
pgfjnclkpdmocilijgalomiaokgjejdm 2025-07-19 2025-08-13 2025-08-16
eekibodjacokkihmicbjgdpdfhkjemlf 2025-09-21 2025-09-23 2025-09-25
ggjlkinaanncojaippgbndimlhcdlohf 2024-09-25 2024-09-30 2024-10-11
ncbknoohfjmcfneopnfkapmkblaenokb 2024-12-13 2025-02-03 2025-02-07

La convergence de plusieurs extensions de marques indépendantes suggère un développeur unique du framework malveillant, ou un service criminel proposant une boîte à outils clé en main pour l'utilisation d'extensions comme armes.

L'infrastructure, le calendrier et les relations au sein du code source indiquent collectivement une opération coordonnée plutôt qu'un abus opportuniste ou sans lien entre eux.

Campagne de décembre 2025

LayerX Security surveille en permanence les cas où des extensions de navigateur initialement inoffensives deviennent malveillantes. En décembre, nous avons identifié plusieurs extensions supplémentaires, publiées par les mêmes auteurs, qui ont basculé vers un comportement malveillant, révélant ainsi une nouvelle campagne visant à transformer des extensions inoffensives en logiciels publicitaires agressifs.

Les extensions semblent initialement inoffensives, implémentant une fonctionnalité simple. Cependant, outre cette fonctionnalité déclarée, le code récupère également une configuration distante depuis un serveur externe. Cette configuration contient une liste de domaines sur lesquels l'extension injecte des notifications trompeuses, chacune intégrant une URL qui fait progresser la chaîne d'infection.

Figure 4. Fichier de configuration récupéré.

Lorsqu'un utilisateur visite l'un de ces domaines, une notification malveillante s'affiche immédiatement, l'incitant à effectuer une « vérification humaine ».

Figure 5. Fausse notification.

Le bouton de vérification redirige la victime vers des pages successives « Je ne suis pas un robot » affichant uniquement des images statiques. Pendant ce temps, en arrière-plan, un script enregistre un service worker, identifie l'appareil, le navigateur et le système d'exploitation de l'utilisateur, puis transmet ces informations à pushtorm.net. L'utilisateur est ensuite invité à autoriser les notifications.

Figure 6. Demande d'autorisation.

Une fois accordée, l'extension diffuse de manière répétée des publicités intrusives via le même mécanisme d'abus de redirection et de notification, soumettant ainsi l'utilisateur à un comportement de logiciel publicitaire persistant et agressif.

Conclusion

Notre analyse révèle que ces extensions n'étaient pas des cas isolés de comportement malveillant, mais des composantes d'un système de distribution coordonné et évolutif. Bien que chaque extension présente une fonctionnalité bénigne différente, elles partagent un moteur d'injection télécommandé commun, une logique de configuration identique et un cycle d'interrogation constant de 5 minutes.

L'analyse des infrastructures montre en outre que la plupart des extensions étaient militarisée seulement après les transferts de propriétéet les domaines de commande et de contrôle contrôlés par l'attaquant étaient enregistré peu de temps avant les mises à jour malveillantesCe couplage étroit indique fortement une campagne délibérée et organisée qui acquiert des extensions légitimes et les modernise avec une boîte à outils modulaire d'injection de contenu.

Ensemble, ces résultats mettent en évidence un schéma clair : un système évolutif et géré de manière centralisée, conçu pour manipuler des pages web, déployer des charges utiles arbitraires et évoluer rapidement sans nécessiter de mises à jour du Web Store. Ceci révèle une lacune importante dans les modèles actuels d’examen des extensions et souligne la nécessité d’une détection plus efficace des comportements de configuration à distance et des abus d’extensions après leur acquisition.

COI

Identifiants des extensions – Extensions actuellement actives

ID Nom Installations
kbaofbaehfbehifbkhplkifihabcicoi Éditeur PhotoExpress 5,000
ijhbioflmfpgfmgapjnojopobfncdeif Extension Canva pour Chrome | Éditeur de design, d'art et d'IA 1,000
nimnhhcainjoacphlmhbkodofenjgobh Sauvegardeur d'archives Internet 2,000
jleonlfcaijhkgejhhjfjinedgficgaj Éditeur et téléchargeur vidéo CapCut 6,000
pgfjnclkpdmocilijgalomiaokgjejdm SnapConnect pour Chrome 2,000
jnkmepoonohhfijlbajdphhinhkoefjn Service d'impression HP

 

1,000
gmmhcbmmnclgmmjimiiefhiagmpamdlb Modifiez n'importe quel élément – ​​Améliorez n'importe quelle page 780
ooobfpifjkgeopllkalfgkbiefhooggl Hacker Bloket Pro

 

2,000
cehifnkfcddaeppdajpfldbpommggaca Kahoot Hacker

 

1,000
eggegjdejilddmnlglakcaigefefcdaf InteractiveFics

 

350

Identifiants d'extension – Supprimés des extensions de la boutique

ID Nom Installations
eekibodjacokkihmicbjgdpdfhkjemlf InteractiveFics 3,000
ggjlkinaanncojaippgbndimlhcdlohf PaperPanda — Accédez à des millions de documents de recherche 100,000
ncbknoohfjmcfneopnfkapmkblaenokb Vytal – Falsification du fuseau horaire, de la géolocalisation, des paramètres régionaux et de la sécurité 40,000

Domaines et adresses e-mail d'assistance

TTP

Tactique Technique
Développement des ressources LX2.001(T1588) – Acquérir des compétences
Accès aux informations d'identification LX8.008 – Manipulation du réseau
Découverte LX9.003 (T1082) – Découverte des informations système
Commander et contrôler LX11.004 – Établir une connexion réseau
Impact LX13.004.1 (T1565) – Manipulation des données : Manipulation du contenu

Remédiation et atténuation

Pour les utilisateurs

  • Supprimez les extensions qui chargent des fichiers de configuration distants – toute extension récupérant config.php ou theme.php depuis des serveurs inconnus représente un risque.

  • Évitez les extensions qui modifient le contenu web sans justification claire – réécriture du DOM + contenu distant = risque élevé.

  • Privilégiez les développeurs réputés et reconnus – évitez les extensions « nouvelles », « inconnues » ou peu commentées.

  • Examinez l'activité des extensions à l'aide des outils intégrés de Chrome – recherchez les connexions réseau inattendues.

Pour les équipes de sécurité

  • Détecter les artefacts courants – Signaler les extensions qui :

    • Récupérer les configurations d'injection à distance
    • Utilisez des requêtes horodatées contournant le cache
    • Définir les règles d'injection avec des sélecteurs et des modèles
    • Utilisez MutationObservers de manière intensive
    • Utiliser inutilement les API du débogueur Chrome
  • Effectuer des tests comportementaux en environnement isolé – Surveiller :

    • Modifications du DOM
    • appels réseau sortants
    • Éléments modifiés
      Calendrier des extractions de configuration à distance
  • Bloquer les domaines malveillants connus – Surveiller les domaines liés à ces familles d'extensions.