Source et contexte: Recherche publiée par Marek Tóth (présentée à DEF CON 33), initialement le 9 août 2025 et mise à jour le 20 août 2025, portant sur une nouvelle technique de clickjacking ciblant les interfaces injectées par des extensions de navigateur.

La recherche décrit une nouvelle technique générale de DOM-based Extension Clickjacking: un script malveillant rend invisibles (opacity/pointer-events/overlays/Popover API) les éléments d’UI injectés par les extensions dans le DOM, tout en restant cliquables. Testée sur 11 gestionnaires de mots de passe, la méthode a montré que tous étaient vulnérables à ce type d’attaque (et certains aussi à la variante IFRAME via web_accessible_resources mal configurés).

Impact démontré: un seul clic sur un site contrôlé par l’attaquant peut exfiltrer des données sensibles. Les vecteurs incluent l’autofill manuel des cartes et données personnelles sur n’importe quel site (⚠ non liées au domaine), et, via XSS/subdomain takeover/cache poisoning sur un domaine de confiance, le vol d’identifiants y compris TOTP (10/11 pour identifiants, 9/11 pour TOTP). Dans certains scénarios, l’attaque s’étend aux passkeys via « signed assertion hijacking » si le serveur n’emploie pas de session‑bound challenge (observé sur plusieurs démos de solutions FIDO). Chiffres clés: carte bancaire exfiltrable chez 6/9, données personnelles 8/10, passkeys exploitables dans 8/11 scénarios; exposition potentielle d’~40 M d’installations.

État des correctifs (août 2025): corrigés pour NordPass, ProtonPass, RoboForm, Dashlane, Keeper. Toujours vulnérables selon l’auteur: Bitwarden, 1Password, iCloud Passwords, Enpass, LastPass, LogMeOnce (divulgation initiale aux éditeurs en avril 2025; publication en août 2025). Le billet signale aussi des cas antérieurs d’IFRAME clickjacking (ex. NordPass 2023) et souligne des comportements d’autofill étendus aux sous‑domaines, augmentant la surface d’attaque en cas de XSS.

Mitigations évoquées dans l’étude: côté extensions, durcir l’UI injectée (Shadow DOM fermé, surveillance des mutations, détection BODY/HTML opacity, gestion stricte des z-index et éléments popover/top layer avec fermeture de l’autofill si conflit, vérifications via elementsFromPoint et gestion temporaire de pointer-events). Côté utilisateurs Chromium, paramétrer l’accès des extensions au site sur « à la demande / on click » pour contrôler l’autofill. L’article conclut que les extensions restent une cible pertinente pour le clickjacking, et propose des démos publiques.

TTPs:

  • TTPs: DOM-based clickjacking (opacity:0, overlay partiel/total, Popover API avec pointer-events:none), manipulation d’UI d’autofill des extensions, exploitation de XSS/subdomain takeover/cache poisoning pour s’ancrer sur des domaines de confiance, signed assertion hijacking de passkeys en absence de session-bound challenge, abus de web_accessible_resources (IFRAME-based), détection d’état lock/unlock via attributs DOM, positionnement dynamique sous le curseur et focus() cyclique.

Type d’article: publication de recherche visant à documenter une nouvelle technique d’attaque, ses impacts et l’état des correctifs.

🧠 TTPs et IOCs détectés

TTP

DOM-based clickjacking (opacity:0, overlay partiel/total, Popover API avec pointer-events:none), manipulation d’UI d’autofill des extensions, exploitation de XSS/subdomain takeover/cache poisoning pour s’ancrer sur des domaines de confiance, signed assertion hijacking de passkeys en absence de session-bound challenge, abus de web_accessible_resources (IFRAME-based), détection d’état lock/unlock via attributs DOM, positionnement dynamique sous le curseur et focus() cyclique

IOC

Aucun indicateur technique d’intrusion (IOC) spécifique fourni


🔗 Source originale : https://marektoth.com/blog/dom-based-extension-clickjacking/