Connexion sécurisée : l’API WebAuthn presque finalisée, une première Yubikey FIDO2
Mort aux mots de passe... ou pas ?
Le 16 avril 2018 à 16h00
6 min
Internet
Internet
L'utilisation des clés de sécurité et autres dispositifs biométriques pour se connecter simplement à des sites est une réalité qui se rapproche à grands pas. Le W3C et la FIDO Alliance arrivent au bout du travail sur l'API WebAuthn qui doit fortement simplifier la pratique dans ce domaine.
Il y a quelques jours, le W3C annonçait avec la FIDO Alliance que l'API Web Authentification (Webauthn) passait au statut de Candidate Recommendation (CR). Pour rappel, ces deux organismes ont la charge de la standardisation des pratiques du web pour l'un, et de dispositifs de connexion sécurisée comme l'U2F pour l'autre.
Ce travail prend place au sein d'une œuvre plus large, FIDO2, où l'API WebAuthn est complétée par le protocole Client to Authenticator (CTAP). Ce dernier permet de lier un navigateur ou un système d'exploitation et un composant sécurisé. Celui-ci peut être aussi bien intégré à un smartphone qu'à une clé de sécurité ou une autre solution avec un dispositif biométrique.
Surtout, contrairement à l'U2F utilisé par Chrome et certains sites, ce standard fait l'objet d'un large consensus aux possibilités multiples. Firefox a ainsi travaillé à son support dans ses dernières versions, il en est de même pour Microsoft avec Edge et Windows 10, Opera, etc. Bref, on s'approche de plus en plus d'une solution exploitable assez largement.
Connexion sécurisée : d'U2F à WebAuthn
Face aux problématiques de sécurité qui gagnent en puissance ces dernières années, et la multiplication des fuites de bases de mot de passe, tout le monde cherche à se débarrasser de ce petit morceau de texte qui protège l'accès de milliards d'internautes. Mais voilà, trouver un compromis facile d'utilisation et sécurisé n'est pas chose facile.
Avec le temps, la double authentification s'est imposée comme une bonne solution. Elle permet de combiner trois éléments afin d'assurer la connexion : un qui nous désigne publiquement (mail, pseudo), un qui est secret (mot de passe) et un dernier qui est calculé pour une durée précise par un appareil que l'on possède.
Ainsi, les applications de type Authenticator et autres envois de code par SMS se sont multipliés, se reposant le plus souvent sur le smartphone. Mais cela pose encore parfois quelques problèmes de sécurité ou d'ordre pratique : que faire si l'appareil est volé, cassé ou plus bêtement si le code est visible sur l'écran verrouillé ?
La FIDO Alliance est née en 2012 de la volonté de pousser de nouveaux standards. PayPal, Lenovo, Nok Nok Labs, Validity Sensors, Infineon et Agnitio sont ses membres fondateurs. L'idée était de permettre une connexion sans mot de passe via différents dispositifs, le chiffrement asymétrique et un élément sécurisé pour le stockage des clés.
L'UAF (Universal Authentication Framework) a rapidement été rejoint par une solution qui a rencontré un plus grand succès : l'U2F (Universal Second Factor). Poussé par Yubico, NXP et Google qui travaillaient ensemble sur un tel projet, il a trouvé sa place au sein de la FIDO Alliance.
Google a ainsi reconnu très vite cette solution dans le cadre de la connexion à plusieurs facteurs sur ses sites. D'autres ont suivi le mouvement comme Dropbox, Facebook ou GitHub. Cette solution s'est propagée d'autant plus vite que l'on trouve des clés compatibles pour une dizaine d'euros seulement, notamment les Yubikey.
Mais avec le temps, de nombreuses limites ont été rencontrées. Tout d'abord, Chrome est toujours le seul à exploiter l'U2F. Ensuite, on le retrouve rarement dans un environnement mobile, malgré l'existence de clés Bluetooth/NFC.
Yubico et la FIDO Alliance se sont rapprochés de Microsoft pour travailler à une solution, connue sous le nom de FIDO2. Il s'agit cette fois d'un standard permettant à la fois la connexion sans mot de passe ou à plusieurs facteurs, gérable via les appareils mobiles, les navigateurs et logiciels de nombreux partenaires, etc.
Pour cela, le groupement a travaillé avec le W3C pour standardiser l'usage des API Web de FIDO2, ce qui a pris forme à travers WebAuthn. Le groupe de travail compte une trentaine de membres issus d'Airbnb, Alibaba, Deutsche Telekom, Google, IBM, Intel, Microsoft, Mozilla, le NIST, Opera, Orange, PayPal, Qualcomm, Softbank, Tencent ou encore Yubico.
Bien qu'Apple fasse partie de la liste, iOS, macOS et Safari restent absents des différentes annonces, mais cela ne saurait durer. On se rappellera que l'implémentation du NFC des iPhone empêche par exemple l'utilisation d'une clé U2F. Intel a de son côté déjà fait des annonces allant dans le sens d'une intégration native il y a quelques mois.
La FIDO Alliance précise que FIDO2 génère une paire de clés spécifique à chaque service, ces derniers ne stockant que la clé publique. Les appareils compatibles peuvent être utilisés pour une connexion directe, avec ou sans solution complémentaire comme un code PIN, une reconnaissance biométrique, etc. Ils peuvent aussi simplement faire office de solution de connexion à plusieurs facteurs.
Dans les deux cas, un premier enregistrement est nécessaire. Chaque appareil peut être révoqué à tout moment.
Une première Yubikey FIDO2
Le groupement promet que la nouvelle version de son standard complète l'UAF et l'U2F et que « les utilisateurs qui disposent d'un appareil FIDO, comme une clé de sécurité U2F, pourront continuer à les utiliser avec les services qui supportent WebAuthn ». Une rétrocompatibilité rassurante.
Cela n'empêche pas Yubico d'annoncer une première clé nativement compatible avec FIDO2 et l'U2F, marquée d'un « 2 ». Il s'agit du modèle de base, proposé aux alentours de 20 euros. Les précédents sont indiqués comme incompatibles pour le moment. Interrogée sur le sujet, Yubico nous a répondu que la nouvelle clé était la seule à supporter WebAuthn et CTAP.
Elle est donc utilisable dans un scénario de connexion ne nécessitant pas de mot de passe, contrairement aux modèles antérieurs. Yubico nous précise qu'il en sera de même pour les autres clés de sa gamme, mais n'avait pour le moment pas de date à nous donner pour la sortie d'une éventuelle Yubikey 5.
La société en profite pour annoncer un nouveau programme consacré aux développeurs, avec une documentation spécifique. Une manière de fêter les dix ans de sa première clé. Ce, alors que Yubico compte désormais des millions de clients dans 160 pays et propose des solutions open source côté serveurs, en plus de permettre l'utilisation de différents standard au sein de ses produits comme OTP, Smart Card (PIV), OpenPGP ou encore OATH (HOTP/TOTP).
Connexion sécurisée : l’API WebAuthn presque finalisée, une première Yubikey FIDO2
-
Connexion sécurisée : d'U2F à WebAuthn
-
Une première Yubikey FIDO2
Commentaires (30)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 16/04/2018 à 16h17
Excellente nouvelle, c’est un dispositif qui devient vraiment normalisé et porté par tous. Merci pour l’info David, j’étais passé à coté de la sortie de cette RC.
A moitié HS : de la double authentification pour se connecter à son serveur en SSH
https://linode.com/docs/security/authentication/use-one-time-passwords-for-two-f…
ça peut peut être intéresser des admin-sys en mode guru " />
Le 16/04/2018 à 16h52
C’est ce que j’ai fait pour mon serveur ssh également mais j’ai gardé la clef d’authenticator en lieu sûr pour le cas où mon téléphone serai volé.
Le 16/04/2018 à 16h54
Je serais preneur d’une solution similaire pour la connection à un serveur MariaDB en ssh.
Le 16/04/2018 à 17h35
Merci pour le lien, ayant énormément de bidule sous nunux (Raspberry, VM sur mon Freenas, toussa toussa).
Par contre, faut que je me penche sur comment “backup” la yubikey en cas de perte. Me semble que quand tu configs, tu peux exporter le bousin, mais tu le réimporte comment après ? Tu as un bouton pour ? Je préfère un token “physique” qu’un Google Auth et compagnie.
Le 16/04/2018 à 17h37
Le 16/04/2018 à 17h39
Le 16/04/2018 à 18h26
Au final, ca ferait comme une clé pour ouvrir la porte d’entrée de son logement ?
Il ne faut surtout pas se la faire voler quoi. Mais elle est plus souvent exposé (la clé de son logement reste souvent au fond de la poche toute la journée sauf pour entrer/sortir de chez soit)
Le 16/04/2018 à 18h37
Le 16/04/2018 à 19h38
Disons que le jour où on peut révoquer la serrure d’une porte d’un clic… " /> Après certains préféreront rester sur de la 2FA plutôt qu’une authentification forte uniquement avec la clé (mais bon quand tu es habitué à l’auth par clé privée pour SSH…). Puis ce sera toujours plus propre qu’une authentification avec un simple cookie " />
Le 16/04/2018 à 20h47
Le 16/04/2018 à 20h51
Le 17/04/2018 à 07h48
Fun fact : le fonctionnement de ce genre de devices est similaire à celui d’une carte à puce, et c’est putain de classe. J’espère que ça va se développer vite et surtout être supporté partout. Content de voir Apple dans la liste, je serais pas étonné par une implémentation dans l’Apple Watch par exemple.
Le 17/04/2018 à 08h02
Je ne comprend pas comment ca marche, ca veut dire qu’a terme on pourra se loguer sur des sites avec une authentification hardware par emprunte digital ? Je trouve ca génial si c’est ca.
Le 17/04/2018 à 08h13
Quelqu’un pourrait donner un site pas trop confidentiel (messagerie, console web, banque…) qui exploite déjà ce genre de mécanisme avec des clés grand public ?
Le 17/04/2018 à 08h40
Il y a-t-il des gens ici qui pourraient me donner un retour d’expérience sur KeepassXC avec une clé YubiKey, et l’intégration directe avec le plugin qui va bien sous Firefox ? Aujourd’hui j’utilise Keepass 2.x et KeePassHttp-Connctor en plugin pour lier Firefox, et le comportement global me convient très bien. Seulement j’en ai parfois marre de taper 50 fois par jour mon mot de passe principal à rallonge. Du coup la Yubi m’intéresse.
Le 17/04/2018 à 08h40
Oui c’est l’idée
Le 17/04/2018 à 08h47
Le 17/04/2018 à 08h59
Le 17/04/2018 à 11h37
Je ne comprends pas l’intérêt pas rapport à un token.
Le 17/04/2018 à 11h59
Merci " />
Le 17/04/2018 à 13h32
Le 18/04/2018 à 06h36
Si je comprends bien, je me met sur un PC je branche la clé et automatiquement le navigateur grâce à webauth prouve au service en ligne que c’est bien moi en vérifiant mon identité dans la clé.
C’est ça ?
Si c’est ça, il faut bien faire attention de toujours avoir sa clé sur soi. Par contre, si les mesures classiques de sécurisation par mot de passe subsiste (en cas de perte de clé par exemple) le niveau de sécurité ne bouge pas pas rapport à la situation actuelle. Non ?
Le 18/04/2018 à 07h12
Que vais je faire de mes anciennes clés Yubico du coup ?… J’ai une 4 et une Neo et c’est bien dommage qu’elles n’intègrent par la norme Fido2. Ces clés ne sont pas reprogrammables ?
Le 18/04/2018 à 14h01
Si, lorsque je personnalise ma Yubikey, je garde les infos (clefs privés et tout le bousin, j’ai pas sous les yeux là). En remettant exactement les mêmes params sur une autre Yubikey, ça devrait être bon logiquement ?
Le 18/04/2018 à 14h44
Yep, c’est le principe ;)
Le 18/04/2018 à 14h54
Par contre un autre truc, j’avais essayer de config ma yubikey sous SSH, mais ça ne demandais plus la yubikey une fois loggué lors d’un passage d’user à un autre. Genre je me connecte en SSH avec + password + yubikey, puis je SU sur un autre user et ça demande plus la yubikey (alors que j’avais configuré la demande de la yubikey pour les deux utilisateurs).
J’ai abandonné du coup pour l’instant, mais je trouve dommage de pas utiliser ma yubi " />
Le 18/04/2018 à 14h57
Me semble que la Yubiley repose aussi sur de la sécurité par “l’obscurité” (tu n’es normalement pas en mesure si tu trouves une Yubikey dans la rue de savoir à quel login et service elle est associée).
Le 18/04/2018 à 15h49
Le 18/04/2018 à 18h48
Le 22/04/2018 à 09h33
Pourquoi pas.
Mais bon si c’est toujours plus opensource voirhttps://www.yubico.com/2016/05/secure-hardware-vs-open-source/
c’est une dépendance de plus et risquer d’etre dans le cas de SLV17 ou à chaque évolution il faut réinvestir, c’est dommage.