Authentification multifacteur
Publié le 8 min de lecture
Mis à jour le
L’authentification multifacteur (MFA) exige au moins deux preuves issues de familles différentes avant d’accorder l’accès. Ce dernier mot compte : deux mots de passe ne sont pas de la MFA, mais un mot de passe plus une clé matérielle, oui. Le but n’est pas de compliquer la connexion, c’est de garantir que compromettre un seul facteur, un mot de passe fuité, un téléphone volé, ne compromet pas le compte.
L’authentification multifacteur est le réglage au plus fort levier que la plupart des gens n’activent jamais. Cet article explique ce qu’est réellement un facteur, comment les méthodes courantes se calculent au niveau du protocole, pourquoi les codes à usage unique sont désormais couramment contournés, et quelle forme de MFA résiste encore aux kits d’hameçonnage qui battent les autres.
Les trois familles de facteurs
Les facteurs d’authentification se répartissent en trois familles, et la MFA consiste à en combiner plus d’une.
- Facteurs de connaissance, quelque chose que vous savez : un mot de passe ou un PIN. Familier, mais faible seul. Ils sont exposés à la force brute, au credential stuffing avec des mots de passe fuités ailleurs, à l’hameçonnage, au keylogging et à l’interception.
- Facteurs de possession, quelque chose que vous avez : un téléphone, une appli d’authentification ou une clé de sécurité comme une YubiKey. L’attaquant a désormais besoin de vos identifiants et de votre appareil. Les clés bâties sur la norme FIDO2 sont le facteur de possession le plus solide disponible, et elles changent totalement la donne, comme nous le verrons.
- Facteurs d’inhérence, quelque chose que vous êtes : empreinte, visage ou iris. Difficiles à falsifier, mais avec un compromis permanent : contrairement à un mot de passe, une biométrie compromise ne peut pas être réémise.
Le gain de sécurité est compositionnel. Même si un facteur est cassé, l’attaquant n’a toujours pas les autres, ce qui émousse la force brute et l’hameçonnage ordinaire. Le piège à retenir est de combiner deux facteurs de la même famille (un mot de passe et une question secrète relèvent tous deux de la connaissance), ce qui ajoute de la friction sans ajouter d’indépendance.
Mots de passe à usage unique : TOTP et HOTP
Le second facteur le plus courant est le code à six chiffres d’une appli d’authentification. Deux algorithmes très proches le produisent, et tous deux ne sont qu’un HMAC sur un secret partagé et un compteur.
Le Time-Based One-Time Password (TOTP), standardisé dans la RFC 6238, utilise l’heure courante comme source d’unicité :
- un secret partagé est établi à l’enrôlement, le QR code que vous scannez ;
- l’heure courante divisée par un pas (typiquement 30 secondes) devient le compteur ;
HMAC-SHA-1combine ce compteur au secret ;- l’empreinte est réduite par troncature dynamique à un nombre de 31 bits, pris modulo un million pour donner les six chiffres.
Comme le compteur avance avec l’horloge, un code TOTP expire au bout de 30 à 60 secondes. Le HMAC-Based One-Time Password (HOTP), RFC 4226, est la même construction avec un compteur d’événements qui s’incrémente à chaque usage au lieu de suivre l’horloge. Le compromis est visible directement dans le schéma : les codes HOTP n’expirent pas tant qu’ils ne sont pas utilisés, ce qui est pratique mais élargit la fenêtre exploitable par un attaquant. Dans les deux cas, le serveur recalcule la valeur attendue et tolère une petite dérive pour qu’une horloge un peu en avance ou en retard valide quand même.
Notifications push
Beaucoup de services évitent le code saisi et envoient une notification push à un appareil de confiance : vous approuvez ou refusez la connexion. Le push est devenu l’un des seconds facteurs les plus courants car il est plus utilisable qu’un code saisi : vous approuvez au lieu de recopier des chiffres. Mais comme le montre la section sur le contournement, une approbation qu’un humain peut donner est une approbation qu’un attaquant peut solliciter.
MFA résistante à l’hameçonnage : FIDO2 et WebAuthn
Chaque méthode ci-dessus partage une faiblesse : elle produit quelque chose que l’utilisateur remet, un code ou une approbation, qu’un attaquant placé au milieu peut relayer. FIDO2, la combinaison de l’API navigateur WebAuthn du W3C et du Client to Authenticator Protocol (CTAP) de la FIDO Alliance, supprime entièrement ce quelque chose en remplaçant les secrets partagés par de la cryptographie à clé publique.
À l’inscription, l’authentificateur (une clé de sécurité, ou l’élément sécurisé d’un téléphone ou d’un ordinateur) génère une paire de clés, garde la clé privée sur l’appareil et donne la clé publique au serveur. À la connexion, le serveur envoie un défi aléatoire ; le navigateur y attache l’origine, le domaine exact de la barre d’adresse ; et l’authentificateur signe la paire. Le serveur vérifie la signature avec la clé publique stockée.
Deux propriétés la rendent résistante à l’hameçonnage, le terme employé par la fiche de la CISA américaine sur la MFA résistante à l’hameçonnage pour désigner le standard de référence. La signature est liée à l’origine, donc un domaine sosie reçoit une signature qui ne validera pas pour le vrai site. Et il n’y a aucun secret partagé ni code à saisir, donc rien qu’une victime puisse révéler ou qu’un attaquant puisse rejouer. C’est pourquoi la CISA ne cite que FIDO/WebAuthn et la PKI (cartes à puce) comme résistants à l’hameçonnage, et pourquoi les passkeys, qui sont des identifiants FIDO2 synchronisés entre vos appareils, sont le visage grand public de la même technologie.
Comment la MFA se fait quand même contourner
La MFA n’est pas magique, et savoir comment elle échoue indique quelle méthode choisir. La technique dominante aujourd’hui est l’hameçonnage adversaire au milieu (AiTM).
Au lieu d’une fausse page statique, un kit AiTM comme Evilginx fait tourner un proxy inverse entre la victime et le vrai site, relayant chaque champ en direct. La victime saisit son mot de passe, puis son OTP ou approuve le push ; le proxy transmet chacun au service authentique, qui est satisfait et émet un cookie de session. Le proxy capture ce cookie, et l’attaquant le rejoue dans son propre navigateur : il est désormais dans le compte sans nouvelle demande, exactement l’angle mort du vol de cookie signalé plus haut. Microsoft a documenté ce schéma passant du vol de cookie AiTM directement à la compromission de messagerie d’entreprise. Comme le code est relayé plutôt que cassé, TOTP, HOTP, SMS et push sont tous vulnérables.
Les autres techniques classiques partagent la même racine, un facteur que l’utilisateur peut être amené à céder :
- Fatigue MFA (“prompt bombing”) : inonder l’utilisateur de demandes push jusqu’à ce qu’une soit approuvée par lassitude.
- Man-in-the-middle : le cas général que l’AiTM spécialise, en capturant et rejouant identifiants ou jetons.
- Ingénierie sociale : convaincre l’utilisateur de révéler un code ou d’approuver une demande.
- SIM swapping : détourner le numéro de téléphone pour intercepter les codes SMS (une raison de préférer les facteurs par appli ou matériels au SMS).
- Attaques d’infrastructure : voler des clés de signature ou exploiter des faiblesses du fournisseur d’identité lui-même.
MFA adaptative
Les déploiements en entreprise ajoutent l’authentification adaptative (basée sur le risque) : des signaux contextuels comme la localisation, l’heure, la réputation de l’IP et l’état de l’appareil décident quels facteurs exiger. Une connexion depuis un appareil domestique connu peut passer sur mot de passe seul, tandis que le même compte depuis un nouveau pays déclenche un défi renforcé. La politique adaptative ne remplace pas un second facteur solide ; elle décide quand l’imposer, et c’est le mécanisme derrière le contrôle “nouvelle IP ou appareil” ci-dessus.
Choisir, en une ligne
Activez la MFA partout. Préférez une appli d’authentification ou une clé matérielle au SMS. Et pour tout ce qui compte, une banque, un compte mail, un fournisseur d’identité, utilisez une clé de sécurité FIDO2 ou une passkey : c’est la seule méthode largement disponible qui survit au kit d’hameçonnage du dernier schéma.
Pour une mise en pratique concrète sur un compte grand public, Réduire sa surface d’attaque sur Discord combine la MFA avec le cloisonnement des mails, les permissions applicatives et les réglages de messagerie.
Références
- IETF, RFC 4226 : HOTP, An HMAC-Based One-Time Password Algorithm, 2005.
- IETF, RFC 6238 : TOTP, Time-Based One-Time Password Algorithm, 2011.
- W3C, Web Authentication (WebAuthn), niveau 2, Recommandation.
- FIDO Alliance, FIDO2 : WebAuthn et CTAP.
- CISA, Implementing Phishing-Resistant MFA, fiche technique.
- NIST, SP 800-63B : Digital Identity Guidelines, Authentication and Lifecycle Management.
- Microsoft Security, From cookie theft to BEC: AiTM phishing sites, 2022.
- OWASP, Multifactor Authentication Cheat Sheet.
- ANSSI, Recommandations relatives à l’authentification multifacteur et aux mots de passe.