Guide des technologies

Protégez-vous du clickjacking

9 min read Sécurité Web Mis à jour 19 Sep 2025
Protégez-vous du clickjacking
Protégez-vous du clickjacking

Important — Le double clickjacking (double-clic forcé ou double-tap mobile) contourne certaines protections classiques. Restez vigilant même sur des sites réputés.

Panneau « click and collect » illustrant le concept de clickjacking.

Qu’est-ce que le clickjacking ?

Le clickjacking est une attaque d’interface utilisateur (UI redress attack) où un attaquant superpose, masque ou repositionne des éléments d’une page web pour détourner les clics d’un visiteur. L’utilisateur croit cliquer sur un contrôle légitime (bouton, lien, case à cocher), mais son clic active en fait une action différente choisie par l’attaquant.

Exemple simple : vous cliquez pour télécharger un ebook gratuit, mais une couche invisible au-dessus du lien déclenche le téléchargement d’un exécutable malveillant ou d’un keylogger. Ces attaques exploitent des éléments HTML tels que iframe et CSS pour masquer la véritable cible.

Extrait HTML d'une page web, montrant structure et balises.

Les conséquences varient : prise de contrôle de compte, installation d’extensions malveillantes, clics frauduleux (likejacking) ou exfiltration d’informations via actions involontaires.

Variantes et méthodes d’attaque

  • Superpositions transparentes ou cachées (overlays)
  • Suppression d’événements de clic (le clic semble ne rien faire mais active l’élément invisible)
  • Repositionnement d’éléments interactifs
  • Forçage de défilement avec fenêtre contextuelle malveillante
  • Découpage ciblé d’une zone (n’attaquer qu’un contrôle précis)

Versions spécifiques : likejacking (détournement de « j’aime »), cookiejacking (exposition des cookies via actions), filejacking (forcing de téléchargements), cursorjacking (manipulation du curseur).

Pourquoi c’est particulièrement dangereux

Ce qui rend le clickjacking insidieux : l’attaque se produit sur le site réel, pas sur une imitation. Les protections classiques basées sur la détection de sites frauduleux ou de fichiers malveillants peuvent échouer puisque l’utilisateur est toujours sur un domaine réputé. Les antivirus n’identifient pas toujours ces attaques, surtout quand aucune charge malveillante n’est immédiatement téléchargée.

Illustration d'un robot avec case « Je ne suis pas un robot » (CAPTCHA).

Contournement des protections : le double clickjacking

Une évolution préoccupante est le double clickjacking. L’attaque attend que vous cliquiez une première fois sur un élément inoffensif, puis insère une superposition avant un second clic de confirmation (souvent présenté comme « confirmez » ou un CAPTCHA). La seconde action active alors l’élément malveillant — par exemple, l’installation d’une extension ou la soumission d’un formulaire autorisant l’accès au compte.

Ce schéma évite certaines protections implémentées pour bloquer les iframes simples, car il peut utiliser des transformations DOM dynamiques plutôt qu’un iframe statique.

Se protéger en tant qu’utilisateur

Voici des mesures pratiques et vérifiables :

  • Maintenez votre navigateur et vos extensions à jour. Les éditeurs publient régulièrement des correctifs contre de nouvelles formes d’attaques UI.
  • Mettez à jour vos plugins et extensions. Les extensions obsolètes peuvent être détournées et servir de vecteur.
  • Évitez de cliquer sur les pop-ups, bannières ou annonces douteuses. Les pop-ups « vous avez gagné » sont souvent des pièges.
  • Si une page demande une confirmation inhabituelle (nouveaux pop-ups, doubles clics), testez d’abord d’autres boutons pour comparer le comportement.
  • Ne recliquez pas sur un lien qui ne mène nulle part la première fois. Vérifiez d’abord les bloqueurs de fenêtres publicitaires et les paramètres de sécurité.
  • Vérifiez les URLs et évitez les typos. Les domains lookalike (« maketecheasyer.com ») peuvent être des sites de hameçonnage.
  • Utilisez des scanners d’URL et outils de réputation avant d’interagir avec des pages inconnues ou des liens de téléchargement.

Outils recommandés pour l’analyse de pages et de liens :

Capture d'écran de la page d'accueil de VirusTotal

  • URL Void

  • VirusTotal (utile pour les liens de téléchargement)

  • urlscan.io

  • Google Transparency Report

  • Hybrid Analysis

  • Activez un bloqueur de publicités et un bloqueur de scripts si vous voulez ajouter une couche de protection. Ceux-ci réduisent l’exposition aux overlays injectés par des annonces malveillantes.

Checklist rapide pour les utilisateurs

  • Navigateur et extensions à jour
  • Bloqueur de publicités actif (si pertinent)
  • Ne pas cliquer sur les pop-ups non sollicités
  • Vérifier l’URL dans la barre d’adresse
  • Scanner les liens suspects avant d’interagir

Pour les administrateurs et développeurs : protections techniques

Si vous gérez un site, vous pouvez réduire significativement le risque pour vos utilisateurs :

  • En-tête HTTP X-Frame-Options :
X-Frame-Options: DENY

ou, si vous souhaitez autoriser uniquement certains domaines :

X-Frame-Options: ALLOW-FROM https://exemple.com
  • Content-Security-Policy (CSP) : utilisez la directive frame-ancestors pour contrôler qui peut embarquer votre site :
Content-Security-Policy: frame-ancestors 'none';

ou pour autoriser une liste de domaines :

Content-Security-Policy: frame-ancestors 'self' https://partenaire.example.com;
  • Marquer les cookies sensibles avec SameSite=strict ou Lax selon le besoin :
Set-Cookie: sessid=abc; HttpOnly; Secure; SameSite=Strict
  • Empêcher l’installation automatique d’extensions sans demande explicite de l’utilisateur et limiter les permissions des plugins.
  • Minimiser l’utilisation d’iframe tiers non contrôlés et isoler le contenu tiers via sandbox :
  • Appliquer le principe du moindre privilège côté client et côté serveur pour les actions potentiellement sensibles (par ex. modifier mots de passe, supprimer comptes).

Détection, tests et méthodologie (mini-méthode)

Objectif : vérifier qu’une page n’est pas vulnérable au clickjacking et identifier overlays malveillants.

Étapes de test :

  1. Préparer un environnement de test isolé (compte test, navigateur propre, extensions désactivées).
  2. Charger la page cible et observer le DOM via les outils de développement (Inspecteur). Rechercher iframe, div avec opacity:0 ou pointer-events:none, ou transformations CSS inhabituelles.
  3. Essayer d’embarquer la page dans un autre domaine via une iframe de test pour valider frame-ancestors / X-Frame-Options.
  4. Simuler des interactions : cliquer sur cibles connues et vérifier si l’événement est redirigé vers un autre élément.
  5. Tester double-clics ou séquences de confirmation pour révéler des overlays insérés après la première interaction.
  6. Utiliser urlscan.io et VirusTotal pour analyser les ressources externes et téléchargements.

Critères de réussite (Критерии приёмки) :

  • Le site refuse d’être embarqué sur des domaines non autorisés.
  • Aucun élément invisible ou couché sur des actions critiques n’est détecté dans le DOM.
  • Les cookies sensibles sont marqués SameSite et HttpOnly.
  • Les tests de double clic ne déclenchent aucune action non désirée.

Cas pratiques et tests d’acceptation

Test 1 — Embarquement iFrame :

  • Préconditions : page A (site testé), page B (page d’attaque qui tente d’embarquer A).
  • Action : ouvrir B et vérifier si A s’affiche.
  • Résultat attendu : A refuse l’affichage (X-Frame-Options ou CSP frame-ancestors bloque).

Test 2 — Overlay transparent :

  • Préconditions : navigateur avec outils de développement ouverts.
  • Action : inspecter le DOM pendant interaction et rechercher éléments opacity: 0 ou z-index élevés.
  • Résultat attendu : aucun élément de recouvrement n’existe sur les contrôles sensibles.

Test 3 — Double clickjacking :

  • Préconditions : séquence de confirmation sur la page.
  • Action : cliquer deux fois en suivant le flux standard et observer si un élément malveillant est inséré entre les clics.
  • Résultat attendu : pas d’injection entre les deux clics.

Playbook d’incident (runbook) pour un site victime

  1. Isolation : mettre hors ligne ou retirer la fonctionnalité affectée si elle est critique.
  2. Collecte : sauvegarder logs serveur, en-têtes HTTP, captures d’écran, DOM et ressources injectées.
  3. Identification : déterminer le vecteur (iframe tiers, ressource compromise, extension interne).
  4. Contention : bloquer les domaines tiers suspects, révoquer clés si nécessaire, informer les partenaires.
  5. Correction : appliquer X-Frame-Options/CSP, corriger l’injection, supprimer le code compromis.
  6. Validation : exécuter la méthodologie de test pour confirmer la correction.
  7. Communication : notifier les utilisateurs affectés et, si pertinent, les autorités conformément aux obligations réglementaires.
  8. Revue post-mortem : documenter la cause racine et mettre à jour les procédures de sécurité.

Quand les protections peuvent échouer (contre-exemples)

  • Sites qui doivent être embarqués par des partenaires et qui autorisent des domaines tiers sans vérification stricte.
  • Contenu dynamique injecté via des scripts légitimes provenant de CDN compromis.
  • Utilisateurs avec extensions de navigateur non sécurisées ou malveillantes qui altèrent le DOM.
  • Scénarios mobiles où le comportement tactile (double-tap) est interprété différemment par le navigateur.

Maturité de la défense (niveaux)

  • Niveau 0 — Aucun contrôle : site susceptible d’être embarqué et d’exposer des actions sensibles.
  • Niveau 1 — Mise en place de X-Frame-Options DENY ou CSP frame-ancestors 'none'.
  • Niveau 2 — Cookies marqués SameSite/HttpOnly, réduction des permissions pour les plugins, audits de dépendances tiers.
  • Niveau 3 — Tests automatisés de sécurité UI, surveillance runtime pour modifications DOM suspectes, réponse aux incidents.

Notes sur la vie privée et conformité

Le clickjacking peut conduire à des actions provoquant fuite de données personnelles. Si des données à caractère personnel sont potentiellement exposées, appliquez les obligations de notification prévues par la réglementation locale (par exemple RGPD en Europe) et conservez des journaux d’incident pour la traçabilité.

Checklist rôle par rôle

Utilisateur final :

  • Mettez à jour votre navigateur
  • Activez bloqueurs d’annonces si nécessaire
  • Évitez de cliquer sur pop-ups
  • Vérifiez les URLs

Développeur frontend :

  • Implémentez CSP frame-ancestors
  • Évitez d’embarquer contenu tiers non vérifié
  • Marquez les cookies sensibles
  • Auditez les scripts tiers

Admin sécurité :

  • Exécutez tests d’intrusion UI
  • Surveillez les modifications DOM en production
  • Préparez un runbook d’incident

Acceptation et critères de test (récapitulatif)

  • La page ne peut pas être affichée dans une iframe depuis un domaine non autorisé.
  • Aucun overlay invisible ne recouvre des contrôles critiques.
  • Les actions sensibles nécessitent des confirmations explicites et vérifiables.
  • Les tests automatisés de régression détectent toute ré-introduction d’éléments de recouvrement.

Suggestions de communication (social preview)

OG title : Protégez-vous du clickjacking OG description : Comprenez le clickjacking, ses variantes (dont le double clickjacking) et appliquez des mesures concrètes pour protéger utilisateurs et sites.

FAQ

Q : Le clickjacking est-il détecté par un antivirus ? A : Pas toujours. Les antivirus peuvent ne pas détecter des attaques qui n’installent pas immédiatement de code malveillant. Les protections côté navigateur et les en-têtes HTTP sont plus efficaces.

Q : Le CSP suffit-il pour bloquer toutes les attaques ? A : CSP frame-ancestors réduit fortement le risque d’iframe, mais les attaques sophistiquées (manipulations DOM côté client) exigent des contrôles complémentaires et des audits réguliers.


Image credit : Unsplash. Toutes les captures d’écran : Crystal Crowder.

Auteur
Édition

Matériaux similaires

Enregistrer réunion Zoom sans permission
Productivité

Enregistrer réunion Zoom sans permission

Fonds d'écran différents par écran Android
Android

Fonds d'écran différents par écran Android

Surveillance Apache Tomcat — compteurs et règles
Surveillance

Surveillance Apache Tomcat — compteurs et règles

Protégez-vous du clickjacking
Sécurité Web

Protégez-vous du clickjacking

Fonds différents par écran sur Android
Mobile

Fonds différents par écran sur Android

Supprimer vos données des courtiers en ligne
Vie privée

Supprimer vos données des courtiers en ligne