Natalie Zagarov
Natalie Zargarov is a Security Researcher with more than 10 years of experience in cybersecurity as a malware reverser and cyber intelligence researcher.
Inscrivez-vous dès aujourd’hui et débloquez des capacités de calcul IA, de stockage et de Kubernetes managé, conçues pour votre entreprise.
Contactez notre équipe commerciale pour discuter de vos besoins et trouver les solutions adaptées à votre entreprise.
Les chercheurs LayerX Research (désormais intégré à Akamai) ont découvert une campagne coordonnée impliquant 32 extensions de navigateur malveillantes sur le Chrome Web Store et le Microsoft Edge Add-ons Store, ayant touché plus de 6 150 utilisateurs.
Ces extensions se faisaient passer pour des outils de productivité légitimes (compteurs de caractères, applications de prise de notes, améliorations pour YouTube, etc.), afin de gagner la confiance des utilisateurs tout en collectant secrètement des données et en surveillant leurs habitudes de navigation.
L'analyse statique a révélé des bases de code pratiquement identiques, des points de terminaison de configuration distants communs et divers artefacts de développement en coréen. Tous ces éléments relient fortement cet ensemble d'extensions à un même acteur malveillant coréanophone.
Les opérateurs utilisaient des fichiers de configuration hébergés sur des serveurs externes et désobfusqués à l'exécution, afin de manipuler la navigation Web et de mener des opérations de fraude à l'affiliation, sans avoir à diffuser des mises à jour via les processus officiels de validation des boutiques d'extensions.
Pour se protéger contre ces menaces dynamiques, il est recommandé de supprimer les extensions non nécessaires dotées d'autorisations étendues (webNavigation, <all_urls>), de surveiller les infrastructures de commande et contrôle (C2) distantes et d'élargir les procédures de validation des boutiques d'extensions afin d'y inclure l'inspection des sources de configuration externes.
Les extensions de navigateur sont devenues l'une des méthodes les plus efficaces pour les acteurs malveillants d'obtenir un accès persistant à l'activité de navigation des utilisateurs. Contrairement aux logiciels malveillants traditionnels, les extensions malveillantes bénéficient de la confiance accordée par les utilisateurs, s'exécutent directement dans le navigateur et ne nécessitent souvent qu'une seule installation pour rester actives indéfiniment.
Dans le cadre d'activités continues de recherche des menaces sur le Chrome Web Store et le Microsoft Edge Add-ons Store, les chercheurs LayerX Research (désormais intégré à Akamai) ont identifié une campagne coordonnée d'extensions de navigateur comprenant 32 extensions malveillantes, qui ont collectivement touché plus de 6 150 utilisateurs.
À première vue, ces extensions semblent sans lien entre elles. Elles se présentent comme des outils de productivité variés : utilitaires de traitement de texte, améliorations pour YouTube, assistants SEO, applications de prise de notes, assistants linguistiques, utilitaires Markdown et autres capacités destinées à faciliter l'utilisation du navigateur. Chacune possède sa propre identité visuelle et met en avant des fonctionnalités différentes.
Derrière cette diversité apparente, cependant, la plupart des extensions reposent sur une infrastructure presque identique, ce qui laisse penser qu'elles proviennent d'un même cadre de développement. En outre, elles partagent toutes des ressources de localisation en coréen, des commentaires rédigés en coréen ainsi que d'autres artefacts de développement.
Ces caractéristiques communes portent à croire que ces extensions relèvent d'une même campagne et ont été développées par un même cybercriminel, qu'il s'agisse d'un groupe organisé ou d'un individu.
Notre analyse révèle que la majorité de ces extensions :
surveillent en permanence l'activité de navigation des utilisateurs ;
récupèrent des fichiers de configuration contrôlés par l'attaquant depuis une même infrastructure distante ;
décodent et mettent en cache localement les instructions distantes ;
déterminent dynamiquement quels sites Web doivent déclencher des actions supplémentaires ;
partagent une implémentation pratiquement identique du service worker d'arrière-plan ;
utilisent les mêmes événements de télémétrie, structures de stockage et mécanismes de navigation.
Plus préoccupant encore, cette campagne repose sur une configuration distante, ce qui permet aux opérateurs de modifier le comportement des extensions après leur publication sans avoir à les mettre à jour dans les boutiques d'extensions. Bien que nous ayons principalement observé des activités de collecte de données de navigation et de manipulation du trafic, cette même architecture pourrait facilement être réorientée vers des opérations d'hameçonnage, la distribution de logiciels malveillants ou le vol d'identifiants.
En plus de cette campagne principale, les chercheurs LayerX ont identifié un autre groupe d'extensions malveillantes publiées sous le même compte éditeur. Au moment de l'analyse, ces extensions étaient surtout utilisées à des fins de fraude à l'affiliation, et redirigeaient automatiquement les utilisateurs via des liens affiliés afin de générer des commissions non autorisées.
Cette campagne, active depuis mars 2025, montre comment les extensions de navigateur malveillantes continuent d'évoluer, passant de menaces isolées à des plateformes administrées à distance et capables de modifier leurs fonctionnalités longtemps après la validation initiale par les boutiques d'extensions.
Les premières extensions associées à cette campagne sont apparues en mars 2025. De nouvelles extensions ont ensuite continué à être publiées au cours des mois suivants.
Plutôt que de republier la même extension, les opérateurs ont continuellement introduit de nouvelles variantes fondées sur le même cadre de développement sous-jacent.
Voici les caractéristiques identifiées par les chercheurs LayerX :
32 extensions de navigateur malveillantes
Distribuées par :
le Chrome Web Store de Google ;
le Microsoft Edge Add-ons Store.
Plus de 6 150 utilisateurs concernés
Les extensions concernées se font passer pour différents utilitaires :
Compteurs de caractères
Utilitaires Markdown
Améliorations de YouTube
Contrôleurs de vitesse de lecture vidéo
Outils SEO
Assistants linguistiques
Outils de prise de notes
Utilitaires de défilement
Assistants liés à l'IA
Bien que ces extensions semblent n'avoir aucun rapport les unes avec les autres, l'analyse statique a révélé que la plupart réutilisent des service workers d'arrière-plan quasiment identiques, ainsi que la même logique de télémétrie, les mêmes structures de stockage et les mêmes mécanismes de gestion de la navigation. En dehors des éléments de marque et des fonctionnalités mises en avant, l'implémentation sous-jacente reste largement inchangée, ce qui laisse fortement penser que ces extensions ont été générées à partir d'un cadre de développement commun.
Prise séparément, aucune de ces extensions ne semble particulièrement remarquable. Chacune met en avant une fonctionnalité d'amélioration de la productivité crédible, possède sa propre identité visuelle et dispose d'une base d'utilisateurs relativement restreinte. Ce n'est qu'en établissant des corrélations entre les informations relatives aux éditeurs, les similitudes du code, l'infrastructure distante partagée et le comportement observé à l'exécution que l'ampleur réelle de la campagne apparaît.
La Figure 1 montre comment les campagnes d'extensions de navigateur sophistiquées peuvent passer inaperçues en distribuant des fonctionnalités malveillantes dans de nombreuses extensions, sans lien apparent entre elles.
L'analyse de cette base de code commune a mis en évidence quatre capacités principales, présentes de manière récurrente dans la plupart des variantes :
C2 actif : récupération d'une configuration distante
Désobfuscation de la configuration
Surveillance de l'activité de navigation
Manipulation de la navigation contrôlée à distance
Plutôt que d'intégrer la logique opérationnelle directement dans le package de l'extension, la plupart des extensions récupèrent un fichier de configuration distant depuis un même point de terminaison hébergé sur jsDelivr (Figure 2).
Une fois téléchargée, cette configuration est analysée puis mise en cache localement :
await chrome.storage.session.set({
nav_cfg_cache: parsedConfig
});
L'utilisation d'une configuration distante accroît considérablement la flexibilité de la campagne. Au lieu de publier une nouvelle version de l'extension sur le Chrome Web Store ou le Microsoft Edge Add-ons Store, il suffit aux opérateurs de modifier le fichier de configuration pour changer son comportement. Ils peuvent ainsi mettre immédiatement à jour les sites Web ciblés, les destinations de redirection ou la logique de campagne sans déclencher un nouveau processus de validation par les boutiques d'extensions.
Au cours de notre enquête, nous avons observé plusieurs modifications de cette configuration distante. À un moment donné, elle était entièrement vide, ce qui laisse supposer que l'infrastructure avait été temporairement désactivée ou réinitialisée (Figure 3).
Quelques jours plus tard, elle contenait des règles destinées à la redirection de trafic d'affiliation. Cela démontre que le comportement de la campagne est géré de manière dynamique par la configuration distante, et n'est pas intégré de façon statique dans les extensions (Figure 4).
La configuration téléchargée ne contient pas de valeurs en clair. À la place, les noms d'hôte, les charges utiles de redirection et les identifiants internes sont encodés en Base64 puis reconstitués à l'exécution (Figure 5).
L'encodage Base64 n'offre aucune protection cryptographique et n'apporte aucun avantage fonctionnel à l'extension elle-même. Au contraire, il complique les inspections manuelles et les analyses statiques automatisées en dissimulant les domaines ciblés et les charges utiles de redirection jusqu'au moment de l'exécution.
Les valeurs décodées sont ensuite utilisées pour reconstituer les règles de navigation appliquées durant le reste de l'exécution de l'extension.
Après son initialisation, le service worker d'arrière-plan surveille en permanence l'activité de navigation des utilisateurs au moyen de l'API webNavigation (Figure 6).
Puisqu'elle intervient à chaque navigation, l'extension peut observer l'activité de navigation de l'utilisateur dans son ensemble, y compris sur des sites Web sans rapport avec les fonctionnalités qu'elle prétend fournir (Figure 7).
Lorsqu'un nom d'hôte correspond à l'une des règles fournies à distance, l'extension appelle chrome.tabs.update() afin de remplacer discrètement l'onglet actif.
Contrairement aux campagnes de redirection qui reposent sur des URL codées en dur, l'URL de destination est reconstituée de manière dynamique à partir de la configuration téléchargée, plutôt que d'être intégrée directement dans l'extension.
Puisque les destinations de redirection sont fournies à distance et non intégrées à l'extension, les opérateurs peuvent modifier les cibles de leurs campagnes à tout moment, sans publier de nouvelle mise à jour dans les boutiques d'extensions.
L'attribution est intrinsèquement difficile. Toutefois, dans ce cas précis, plusieurs éléments relient cette campagne à un cybercriminel coréanophone, qu'il s'agisse d'un groupe organisé ou d'un individu. Indicateurs observés :
Identifiants en langue coréenne au sein de la base de code
Ressources de localisation en coréen
Commentaires et autres artefacts de développement en coréen
Utilisation de services d'achat en ligne coréens dans le groupe d'extensions dédié à la fraude à l'affiliation
Le lien technique le plus probant entre les différentes composantes de cette campagne réside dans le partage d'un même point de terminaison de configuration distante, ainsi que dans l'utilisation d'une implémentation quasiment identique du service worker d'arrière-plan.
La réutilisation du code, de l'infrastructure, de la télémétrie et de la conception du stockage indique fortement un développement centralisé par un même acteur malveillant ou par un groupe étroitement coordonné, plutôt que par des éditeurs d'extensions sans lien entre eux.
Cette campagne illustre l'évolution des extensions de navigateur malveillantes : il ne s'agit plus de simples logiciels malveillants isolés, mais de plateformes gérées à distance. Bien qu'elles se présentent comme des outils d'amélioration de la productivité indépendants les uns des autres, ces extensions partagent la même infrastructure, la même base de code et le même cadre de configuration distante.
Au lieu d'intégrer directement une logique malveillante dans l'extension, les opérateurs ont externalisé les comportements critiques dans des fichiers de configuration contrôlés par l'attaquant. Cette approche permet à la campagne de se développer longtemps après avoir passé les processus de validation des boutiques d'extensions.
Ces observations, associées à la découverte d'un groupe d'extensions supplémentaire dédié à la fraude à l'affiliation et exploité par les mêmes éditeurs, suggèrent l'existence d'un écosystème actif, capable de soutenir simultanément plusieurs stratégies de monétisation et d'attaque.
| ID | Nom | Installations | Boutique |
|---|---|---|---|
ID | Nom | Installations | Boutique |
dblfldpldecohjpjgmhnigajjdjloega | Youtube Detox: Reclaim Your Time, Stay Focused! | 56 | Google Chrome |
ofgiffiieajicdflklkoapgndinhfacm | Eye Rest Reminder
| 91 | Google Chrome |
nokclhllnnnahhfbpibpmnahpepahklo | Youtube Detox: Reclaim Your Time, Stay Focused!
| 25 | Microsoft Edge |
kdkfbahpggclmigankbnjgmhimfoijkk | Eye Rest Reminder
| 24 | Microsoft Edge |
hgcmokdfbgnakiifclhfifdphfofmngp | Quick Memo
| 89 | Google Chrome |
ffjagifkdpammmgijbglgkklomipinem | Quick Memo
| 127 | Microsoft Edge |
mfnlknmbkfnlgcjebdogolbakcekohfj | KoreaDropdown
| 825 | Google Chrome |
ddbhcdcfllihhljfboihdbpfddibkjjg | Language Learning
| 38 | Microsoft Edge |
ekoglbhkaeljnakpledcdpfojbjdllmb | YouTube Summary
| 51 | Microsoft Edge |
pllpmojagjlnbclefckhdebmlkjhhcfh | Air Quality Monitor | 17 | Google Chrome |
cogfipmojjaephpnihpeemgdmofhnaaj | SnapShot | 69 | Google Chrome |
pppcpccgdjdniohmegcejgamdnhilkml | SnapShot | 18 | Microsoft Edge |
coohonllohmhpbklloifbjjibeggijol | Copy as Markdown
| 102 | Microsoft Edge |
bjdlhcllmhaiigiaibaoihlmheomjjgo | YouTube Enhancer
| 32 | Microsoft Edge |
bodnffdkjnpeholiplcncfegnliheamk | SEO Toolkit
| 35 | Microsoft Edge |
ahagmkpannaempjmlijhejhaajoiibel | Text Counter - Word & Character Count | 8 | Microsoft Edge |
ahemlacbncnpikgfoegfjfendahcahdl | Web Highlighter - Highlight Text on Pages
| 10 | Microsoft Edge |
ieigeddfggngchfecpibaikoebaenpgm | Page Ruler - Measure Pixels on Screen | 27 | Microsoft Edge |
bahnaggfidlcllmceahngpllpaahkbkd | Video Speed Controller - Playback Speed
| 13 | Microsoft Edge |
pncbphagfmgfopmhlbkifoonnbfdihbm | Tab Manager - Organize & Search Tabs | 5 | Microsoft Edge |
hbjfkpmmomlaghbembkhhaaegbnlaicf | Scroll to Top - Back to Top Button | 35 | Microsoft Edge |
nehmipanmmnkdpbjjfinnnlficndfhhd | Web Highlighter - Highlight Text on Pages | 60 | Google Chrome |
eobmkhocignkllbfigodhemdefbjldcb | Video Speed Controller - Playback Speed | 108 | Google Chrome |
gajghfhmgcemdgjkamllmoejhkklphnc | Holiday D-day
| 18 | Google Chrome |
pifjjafdfdkglnnkeahlcndkmknlgocm | Reaction Time Test - New Tab Game | 60 | Google Chrome |
ndoihodpeipgbogeecdiphdkjpcjoofp | Page Ruler - Measure Pixels on Screen | 38 | Google Chrome |
bjokekhmbkkgohiedecgkkfgppoghjji | Reading Time — Article Read Time Calculator | 19 | Google Chrome |
efieelkohffbjnblcmomcejjbapaipnh | Scroll to Top - Back to Top Button | 11 | Google Chrome |
gbgdekgkmaaamplkcdaanpdokmjjcdbm | Image Downloader - Save All Images | 29 | Google Chrome |
fkddfdhkgfneiibakfdhgpbkkcnnlook | GitHub 한국어 (GitHub Korean) | 4 000 | Google Chrome |
ebkkpkifaojdccgpaldnpclompdojmbh | SEO Toolkit
| 22 | Google Chrome |
iclkfegmbldfjjlgngidahinmhogbfna | Auto Scroll - Hands Free Page Scroller | 78 | Google Chrome |
jocoenanieejnoookkphbljadiahaopd | YouTube Summary
| 27 | Google Chrome |
https://cdn.jsdelivr.net/gh/chosanghyeon-dev/chosanghyeon-dev@main/cf.json
https://link.coupang.com/a/dUnRI6
https://link.coupang.com/a/ej6z6U
api.pvmf.workers.dev
indie05hacker@gmail.com
| Tactique | Technique |
|---|---|
Accès initial | LX3.003 (T1199) — Relation de confiance |
Contournement des mesures de défense | LX7.003 (T1140) — Obfuscation/désobfuscation du code |
Contournement des mesures de défense | LX7.021 — Blanchiment trompeur du trafic |
Accès aux identifiants | LX8.008 — Altération du trafic réseau |
Collecte | LX10.012 (T1114) — Données issues des communications Web |
Les utilisateurs doivent examiner attentivement les extensions de navigateur installées dans leur environnement et supprimer celles qui ne sont plus nécessaires, en particulier celles qui demandent des autorisations étendues telles que <all_urls>, webNavigation ou tabs, lorsque ces autorisations ne sont pas cohérentes avec les fonctionnalités que les extensions prétendent fournir.
Les entreprises doivent surveiller en continu les extensions de navigateur afin de détecter les combinaisons d'autorisations suspectes, les mécanismes de récupération de configurations distantes et les capacités de manipulation de la navigation. Les extensions contrôlées à distance doivent être considérées comme des plateformes d'attaque persistantes, plutôt que comme de simples modules complémentaires statiques.
Les éditeurs de navigateurs peuvent réduire davantage les risques en identifiant les familles d'extensions à partir des similitudes de code et d'infrastructure, ainsi qu'en élargissant leurs procédures de vérification afin d'inspecter les fichiers de configuration hébergés sur des serveurs externes, lesquels peuvent modifier le comportement d'une extension après sa publication.