❮ back   

Pourquoi FIDO2 est plus sécurisé que le TOTP

Comprendre la protection contre le phishing


Introduction

Les mots de passe à usage unique basés sur le temps (TOTP) ont longtemps été la norme pour l'authentification à deux facteurs, mais ils présentent une vulnérabilité critique : ils sont sensibles aux attaques de phishing. FIDO2 (Fast Identity Online 2), la norme moderne d'authentification, élimine cette faiblesse grâce à la liaison cryptographique de l'origine. Cet article explique pourquoi FIDO2 représente une amélioration fondamentale de la sécurité par rapport au TOTP.

La faille fatale du TOTP

Le TOTP génère des codes à six chiffres qui se renouvellent toutes les 30 secondes. Bien que cela semble sécurisé, ces codes souffrent d'un problème fondamental : ils peuvent être utilisés par n'importe quelle application (c'est-à-dire site web) qui obtient le code OTP. Les codes eux-mêmes ne contiennent aucune information sur l'endroit où ils doivent être utilisés, ce qui en fait des jetons porteurs — quiconque présente le code peut s'authentifier.

Cela crée une opportunité parfaite pour les attaques de phishing. Si un attaquant peut tromper un utilisateur pour qu'il entre son code TOTP sur un site malveillant, ce code peut être immédiatement retransmis au service légitime dans la fenêtre de validité de 30 secondes.

L'attaque Evilginx : comment le phishing TOTP fonctionne

Evilginx est un cadre de phishing sophistiqué qui démontre la vulnérabilité du TOTP et d'autres méthodes d'authentification traditionnelles. Voici comment il opère :

Victime Navigateur de l'utilisateur Proxy Evilginx googIe.com Moteur de proxy : • Copie le site réel • Intercepte le trafic • Capture les identifiants • Vole les cookies • Relaye en temps réel Google google.com (Légitime) Attaquant Accès complet avec cookie volé 1. Clique sur le lien de phishing 2. Proxy les requêtes 3. Retourne les réponses TOTP : 123456 [email protected] Cookie : abc123... 5. Session détournée !

Décomposition du flux d'attaque :

  1. Tromperie initiale : La victime reçoit un e-mail de phishing convaincant avec un lien vers un domaine qui semble légitime (par exemple, googIe.com au lieu de google.com)

  2. Proxy transparent : Evilginx s'interpose entre la victime et le site web réel, agissant comme un proxy inverse qui transmet toutes les requêtes et réponses

  3. Collecte des identifiants : Lorsque l'utilisateur entre son nom d'utilisateur, son mot de passe et son code TOTP, Evilginx capture tout en transmettant simultanément les informations au site légitime

  4. Détournement de session : Plus critique encore, Evilginx capture le cookie de session retourné par le site légitime après une authentification réussie

  5. Prise de contrôle du compte : L'attaquant dispose désormais d'un cookie de session valide et peut accéder au compte sans avoir besoin de s'authentifier à nouveau

Pourquoi le TOTP ne peut pas se défendre contre cela : Le code TOTP est valide pour le service légitime, et le proxy se contente de le relayer en temps réel. Le service ne peut pas faire la différence entre l'utilisateur légitime et le proxy de l'attaquant.


Comment FIDO2 protège contre le phishing

FIDO2 utilise la cryptographie à clé publique avec une fonctionnalité de sécurité cruciale : la liaison cryptographique de l'origine. Cela signifie que chaque authentification est cryptographiquement liée au domaine spécifique où elle a été créée.

Vérification du FQDN dans FIDO2

Lorsqu'une authentification FIDO2 se produit, le nom de domaine (Fully Qualified Domain Name ou FQDN) fait partie intégrante du processus de défi-réponse cryptographique :

Authentification FIDO2 légitime sur google.com

Navigateur Agent utilisateur Partie fiable google.com Défi + Nonce ID RP : "google.com" API WebAuthn Extrait l'origine : "google.com" Clé de sécurité (Authentificateur FIDO2) Identifiant stocké : Origine : google.com Clé privée : [Clé] ID d'identifiant : 8f4... Origine correspondante ! Signe le défi avec la clé privée SUCCÈS Signature vérifiée Utilisateur authentifié 1. Connexion utilisateur 2. Défi 3. Origine + Défi 4. Réponse signée Authentification

Ce qui se passe lors d'une tentative de phishing avec FIDO2 :

FIDO2 bloque l'attaque de phishing sur googIe.com (faux)

Navigateur Agent utilisateur Site de phishing googIe.com (notez le i majuscule) ID RP : "googIe.com" API WebAuthn Extrait l'origine : "googIe.com" Clé de sécurité (Authentificateur FIDO2) Identifiant stocké : Origine : google.com Clé privée : [Clé] ID d'identifiant : 8f4... Origine non correspondante ! googIe.com ≠ google.com AUCUN IDENTIFIANT TROUVÉ BLOQUÉ Authentification Échouée 1. Victime clique sur le lien de phishing 2. Faux défi 3. Mauvais origine : "googIe.com" 4. Erreur : Aucun identifiant ATTAQUE DE PHISHING EMPÊCHÉE La clé de sécurité a refusé de s'authentifier car le domaine ne correspondait pas. Authentification

Différences clés :

Avec TOTP (Vulnérable) :

  • L'utilisateur voit une fausse page de connexion qui semble réelle
  • L'utilisateur entre le code TOTP 123456
  • Le code est valide pour google.com
  • Le proxy transmet le code au vrai google.com
  • L'authentification réussit, l'attaquant gagne

Avec FIDO2 (Protégé) :

  • L'utilisateur voit une fausse page de connexion
  • Le navigateur tente une authentification FIDO2
  • L'authentificateur vérifie : Est-ce google.com ? NON, c'est googIe.com
  • L'authentification échoue immédiatement
  • L'utilisateur est alerté qu'il y a un problème
  • L'attaque de phishing est empêchée

Avantages de sécurité supplémentaires de FIDO2

1. Aucun secret partagé

Le TOTP repose sur un secret partagé stocké à la fois sur le serveur et l'appareil de l'utilisateur. Si le serveur est compromis, ces secrets peuvent être volés. FIDO2 utilise la cryptographie asymétrique — le serveur ne stocke que des clés publiques, qui sont inutiles pour les attaquants.


2. Aucune attaque par relecture

Chaque authentification FIDO2 utilise un défi-réponse unique, rendant les attaques par relecture impossibles. Les codes TOTP, une fois interceptés, peuvent être rejoués dans leur fenêtre de validité.

3. Vérification de la présence de l'utilisateur

Les authentificateurs FIDO2 nécessitent une interaction physique (toucher la clé de sécurité ou vérification biométrique), garantissant que l'utilisateur est réellement présent pendant l'authentification.

4. Résistant à l'ingénierie sociale

Étant donné que l'authentification FIDO2 est automatique et cryptographique, les utilisateurs ne peuvent pas être trompés pour entrer manuellement leurs identifiants sur un faux site.

Impact dans le monde réel

Les grandes entreprises technologiques ont signalé des améliorations spectaculaires de la sécurité après le déploiement de FIDO2 :

  • Google a signalé zéro prise de contrôle de compte parmi les employés utilisant des clés de sécurité
  • Microsoft a constaté que les clés de sécurité bloquaient 100 % des attaques automatisées par bot et des attaques de phishing en masse
  • Le gouvernement américain a imposé une MFA résistante au phishing pour les agences fédérales, avec FIDO2 comme norme recommandée

Conclusion

Bien que le TOTP offre des améliorations de sécurité par rapport aux mots de passe seuls, il reste vulnérable aux attaques de phishing sophistiquées comme celles permises par Evilginx. La liaison cryptographique de l'origine de FIDO2 rend le phishing fonctionnellement impossible — un attaquant ne peut ni relayer ni réutiliser les identifiants FIDO2 car ils sont cryptographiquement liés à des domaines spécifiques.

À mesure que les attaques de phishing deviennent plus sophistiquées, les organisations devraient passer à l'authentification basée sur FIDO2. La technologie est mature, largement soutenue et offre une sécurité résistante au phishing que le TOTP ne peut tout simplement pas égaler.


Recommandations

  1. Pour les organisations : Mettre en œuvre FIDO2/WebAuthn pour tous les comptes utilisateurs, en commençant par les comptes à privilèges élevés
  2. Pour les utilisateurs : Adopter des clés de sécurité matérielles (Token2 ou tout autre appareil certifié FIDO) ou utiliser des authentificateurs de plateforme (Windows Hello, Touch ID)
  3. Pour les développeurs : Intégrer les API WebAuthn dans vos applications et éduquer les utilisateurs sur l'authentification sans mot de passe
  4. Stratégie de transition : Prendre en charge à la fois TOTP et FIDO2 pendant la migration, mais encourager et inciter à l'adoption de FIDO2

L'avenir de l'authentification est résistant au phishing, et FIDO2 ouvre la voie.


Voir aussi : Une vidéo détaillée démontrant l'attaque Evilginx contre M365.

updated: 20/11/2025 13:24