Google Authenticator expliqué : comment fonctionnent ses codes 2FA

By: WEEX
|
0

Toutes les 30 secondes environ, un court code numérique change sur votre téléphone, et un site Web auquel vous n’avez jamais montré ce téléphone sait, d’une manière ou d’une autre, quel sera le nouveau code. Cela ressemble à de la magie, mais il s’agit d’une simple astuce reposant sur un secret partagé.

C’est ainsi que fonctionnent Google Authenticator et les applications similaires. Voici comment les codes sont générés, pourquoi ils fonctionnent sans connexion Internet, quel est le lien entre l’application et la Validation en deux étapes de Google, et ce qu’elle peut ou ne peut pas protéger.

Comment les codes sont générés

Lorsque vous ajoutez un compte à une application d’authentification, le service vous fournit un secret, généralement sous la forme d’un code QR ou d’une clé de configuration, que l’application enregistre. Dès lors, le service et votre téléphone détiennent le même secret. Pour produire un code, l’application combine ce secret avec l’heure actuelle, et le service effectue le même calcul de son côté. Si les deux résultats correspondent, le code est accepté.

Cette méthode est une norme publiée appelée TOTP, abréviation de « mot de passe à usage unique basé sur le temps » (time-based one-time password), définie dans la RFC 6238 de l’IETF. Elle s’appuie sur une ancienne méthode basée sur un compteur, en remplaçant celui-ci par une valeur dérivée de l’heure. La norme indique que l’application et le service doivent utiliser le même intervalle de temps, et recommande une valeur par défaut de 30 secondes : c’est pourquoi le code est généralement renouvelé environ deux fois par minute.

Pourquoi cela fonctionne sans connexion Internet

Le code est calculé sur votre téléphone à partir du secret enregistré et de son horloge ; rien n’a donc besoin d’être envoyé au téléphone. La fiche de sa propre application indique que Google permet de générer des codes même sans connexion réseau ou cellulaire. Le service doit simplement effectuer le même calcul lorsque vous soumettez le code.

La conséquence, c’est que l’horloge compte. Si l’heure de votre téléphone est très éloignée de l’heure réelle, les deux calculs ne correspondront pas et le code sera rejeté, même si l’application fonctionne comme prévu.

Quel est le lien avec la Validation en deux étapes de Google ?

Il est facile de confondre les deux. La Validation en deux étapes est la fonctionnalité d’un Compte Google qui demande une deuxième étape lorsque vous vous connectez. Google Authenticator est une application qui peut fournir cette étape et qui, selon Google, peut également générer des codes pour d’autres sites et applications prenant en charge la vérification par application d’authentification. Plusieurs autres applications d’authentification suivent la même norme : les codes eux-mêmes ne sont donc pas liés à une seule entreprise.

Vous pouvez utiliser l’application avec ou sans Compte Google. La connexion permet de synchroniser vos codes sur vos appareils, et Google indique que, même sans compte, vous pouvez toujours les transférer manuellement vers un nouvel appareil. Les codes synchronisés dépendent de ce Compte Google, il est donc d’autant plus important de bien le protéger. Google recommande également de configurer d’autres formes de Validation en deux étapes afin d’éviter de perdre l’accès à votre compte.

Ce que cela protège, et ce que cela ne protège pas

Selon la CISA, les codes d’une application d’authentification sont préférables aux SMS, mais restent vulnérables à l’hameçonnage. Une fausse page de connexion convaincante peut intercepter un code au moment où vous le saisissez et l’utiliser immédiatement ; seules les méthodes basées sur FIDO, comme les clés de sécurité et les clés d’accès, résistent à cette attaque. Vérifier l’adresse d’un site avant de saisir un code fait partie des mesures de protection.

Le secret qui se cache derrière vos codes est lui aussi sensible. Toute personne qui possède le code QR ou la clé de configuration peut générer les mêmes codes ; une capture d’écran doit donc être traitée comme un mot de passe. Par ailleurs, une application d’authentification protège les comptes auxquels on se connecte par l’intermédiaire d’un service. Elle ne peut pas protéger la phrase de récupération ni la clé privée d’un portefeuille.

Rappel WEEX : traitez la clé de configuration comme un mot de passe

WEEX rappelle aux utilisateurs de ne jamais communiquer à qui que ce soit un code à usage unique, un code QR ou une clé de configuration, y compris aux personnes qui prétendent faire partie du service d’assistance : un véritable service n’en a jamais besoin. Vérifiez l’adresse d’un site avant de saisir un code et conservez toute clé ou tout code de secours dans un endroit sûr et hors ligne, plutôt que dans une capture d’écran ou une note dans le cloud. Rien dans cet article ne constitue un conseil financier.

Conclusion

Google Authenticator génère un code à durée limitée à partir d’un secret partagé avec le service et de l’heure actuelle. C’est pourquoi l’application fonctionne hors ligne et pourquoi l’horloge compte. C’est l’une des nombreuses applications qui utilisent la même norme ; elle est préférable aux SMS, mais reste vulnérable à l’hameçonnage, et son secret de configuration mérite autant de précautions qu’un mot de passe. Utilisée avec des mots de passe robustes et de bonnes habitudes, elle rend un compte plus difficile à pirater.

FAQ

1. Qu’est-ce que Google Authenticator ?
C’est une application qui génère des codes à usage unique servant de deuxième étape lors de la connexion, pour les Comptes Google et pour d’autres sites et applications prenant en charge la vérification par application d’authentification.

2. Comment Google Authenticator génère-t-il des codes sans Internet ?
Il les calcule sur votre téléphone à partir d’un secret enregistré et de l’heure actuelle. Le service effectue le même calcul pour vérifier le code ; rien n’a donc besoin d’être envoyé à votre téléphone.

3. Ai-je besoin d’un Compte Google pour utiliser Google Authenticator ?
Non. Google indique que vous pouvez l’utiliser sans compte. La connexion permet de synchroniser vos codes sur plusieurs appareils ; sans compte, vous pouvez les transférer manuellement vers un nouvel appareil.

4. Google Authenticator est-il la même chose que la Validation en deux étapes de Google ?
Non. La Validation en deux étapes est une fonctionnalité d’un Compte Google, et l’application est l’un des moyens de fournir la deuxième étape. Elle fonctionne également avec d’autres sites prenant en charge les codes d’application d’authentification.

5. Google Authenticator est-il plus sûr que les codes SMS ?
Selon la CISA, les codes d’une application d’authentification sont préférables aux SMS, mais ils peuvent tout de même être interceptés par hameçonnage. Les clés de sécurité et les clés d’accès offrent une meilleure protection contre l’hameçonnage.

Articles connexes
Partager
copy

À la hausse

iconiconiconiconiconiconiconicon
Assistance client:@weikecs
Collaborations commerciales:@weikecs
Trading quantitatif/Market makers:bd@weex.com
Programme VIP:support@weex.com