FiDO2 : Web Authentication (WebAuthn) - NFC - Key biometric

Tags: #<Tag:0x00007fc9dfb0f5a8>

Une introduction à l’authentification Web (WebAuthn), la nouvelle API qui peut remplacer les mots de passe par une authentification forte.

J’aimerai savoir :

  1. Avez-vous essayé des « clefs NFC » sur Linux - Ce n’est pas biométrique, n’est-ce pas (si on me vole ma clef, la personne peut s’authentifier à ma place, n’est-ce pas) ?
  2. Avez-vous essayé des « clefs lecteurs biométrique d’empreintes digital » sur Linux (20€ sur Amazon) ?
  3. Avez déjà utilisé le protocole WebAuthn dans des applications créaient par vous même ?
  4. Si oui, en quel langage avez vous développé votre application ?
  5. Est-ce « simple » de faire une authentification biométrique pour son site Web personnel ? Où stocke t’on notre, nos empreintes digitales ?
  6. Existe t’il un moyen - local (sûrement - module PAM par exemple) - et via SSH de s’authentifier par FiDO2 (çà m’étonnerai peut-être avec un portefeuilles :confused: local au client)

Je découvrais le protocole FiDO2 qui utilise le protocole de communication CTAP qui permet l’authentification externes.
#FiDO prend en charge une gamme complète de technologies d’#authentification, y compris la #biométrie - empreintes digitales et #iris, reconnaissance vocale et faciale - ainsi que les solutions et les normes de communication existantes, telles que les modules de plateforme sécurisée (#TPM), les jetons de sécurité #USB, les éléments sécurisés intégrés (#eSE), les cartes à puce et la communication en champ proche (#NFC).
#UniversalSecondFactor #Universal2ndFactor or #U2F est une norme d’authentification ouverte qui vise à renforcer et à simplifier l’authentification à deux facteurs en utilisant des périphériques USB ou à communication en champ proche.
#WebAuthn #FIDO2 #W3C #OATH (Open Authentication) #UAF (Universal Authentication Framework) #Bluetooth

WebAuthn peut être utilisé dans un contexte d’authentification simple (1234)… Toutefois, pour plus de sécurité, le système qui demande l’authentification … WebAuthn peut également être combiné à d’autres facteurs d’authentification, tels que des gestes ou une vérification biométrique … ce qui en fait un processus d’authenfication multifacteur.

WebAuthn peut être implémenté de différentes façons, car les opérations cryptographiques sous-jacentes sont déléguées à un authentificateur… Cela permet d’implémenter entièrement WebAuthn dans un logiciel, ou d’utiliser le Trusted Execution Environment ( #TEE ) d’un processeur ou encore un Trusted Platform Module ( #TPM ). Les opérations cryptographiques sensibles peuvent également être déléguées à des jetons d’authentification externes (protocole #CTAP - Client to Authenticator Protocol) auxquels on peut accéder via #USB , #Bluetooth ou par communication en champ proche #NFC (Near-Field Communication).

La #FIDO Alliance a basé son standard sur un système de cryptographie asymétrique appelé #ECDAA . Il s’agit d’une version de Direct Anonymous Attestation ( #DAA ) basée sur des courbes elliptiques.

#WebAuthn (Web Authentication) - #FIDO2

#ECC (Elliptic Curve #Cryptography )
#ECIES ( #EllipticCurve Integrated #Encryption Scheme)

J’ajoute quelques liens informatifs :




J’ajoute un sujet ouvert sur Debian-FR : Authentification par empreintes digitales sur OpenLDAP ?


Merci.

Romain - Bonne journée - bonne soirée :slight_smile:

Pour la sécurité NFC:

Pour ce qui est du biométrique, coté risque c’est de pouvoir reproduire une empreinte ce qui n’est pas si difficile que ça, y compris de vous piquer un doigt.

Qui plus est, les intermédiaires qui se positionnent sur ces système, sont des entreprises dont le respect de la confidentialité est très sérieusement à mettre en question (Google, Microsoft, Apple).
Enfin, n’avoir qu’une mode d’authentification, fait que si celui-ci est compromis, n’en ayant qu’un seul, alors la totalité est compromis.

Okay je suis bien d’accord - c’est ce que je pensais.

Certes :slight_smile: prendre ton verre de champagne ou de jus d’orange en douce, mettre un bout de scotche sur l’empreinte du verre et la mettre sur ton authentificateur biométrique (par exemple) YubiKey C Bio - FIDO Edition et voler toutes tes données !

C’est pour cela (me semble t’il) qu’ils ont créés « FiDO2/WebAuthn » et qui peut être utilisée - comme une double authentification - ou une simple (comme tu le soulignais) - et de plus qui à plusieurs avantages.

  • Protection contre le phishing : un attaquant qui crée un faux site Web de connexion ne peut pas se connecter en tant qu’utilisateur car la signature change avec l’origine du site Web.
  • Impact réduit des violations de données : les développeurs n’ont pas besoin de hacher la clé publique, et si un attaquant accède à la clé publique utilisée pour vérifier l’authentification, il ne peut pas s’authentifier car il a besoin de la clé privée.
  • Invulnérable aux attaques par mot de passe : certains utilisateurs peuvent réutiliser des mots de passe et un attaquant peut obtenir le mot de passe de l’utilisateur pour un autre site Web (par exemple via une violation de données). De plus, les mots de passe textuels sont beaucoup plus faciles à forcer qu’une signature numérique.

Suite sur MDN : API d’authentification Web
Et un autre article sur Yubico : WebAuthn Developer Guide


Si j’ai bien compris il faut utilisé FiDO2 qui est basé sur des travaux antérieurs réalisés par l’Alliance FIDO, en particulier la norme d’authentification Universal 2nd Factor (U2F). U2F est une norme ouverte qui renforce et simplifie l’authentification à deux facteurs (2FA) à l’aide de dispositifs spécialisés Universal Serial Bus (USB) ou de communication en champ proche (NFC) basés sur une technologie de sécurité similaire à celle des cartes à puce. Il est remplacé par le projet FIDO2 , qui comprend la norme d’authentification Web W3C ( WebAuthn ) et le client FIDO Alliance 's Client to Authenticator Protocol 2 (CTAP2).

:slight_smile:

Romain

Sauf que c’est une API, donc une interface de programmation, donc un potentiel de faille lié au développement, et la méthode Agile n’a jamais été une garantie de qualité :wink:

Pourtant l’authentification avec certificat est quelque chose qui peut bien marcher, mais voilà…

Comme tout :crazy_face: :rofl: :innocent:

La méthode Humain - Communication :upside_down_face: :wink:

Il faut que j’essaie Crypto++ vs PHP (Sodium) - basé sur le schéma ECC Asymmetric Encrypt / Decrypt (ECIES) - #ECIES n’exige pas que l’expéditeur publie sa propre clé publique permanente. Au lieu de cela, ils peuvent simplement créer une paire de clés éphémères anonymes et publier la clé publique éphémère avec le texte chiffré. L’expéditeur peut supprimer la clé privée éphémère dès que le chiffrement est terminé. Alternativement, la clé privée peut être conservée afin que l’expéditeur puisse fournir une signature ultérieurement pour prouver qu’il était l’expéditeur. (Confer)

#ECC : Elliptic Curve Cryptography

:slight_smile:

Bonne journée @Zargos :slight_smile:

Je n’ai toujours pas acheté de scanner biométrique d’empreinte digital :sob:

YubiKey C Bio - FIDO Edition : 85 €
Répond aux exigences de sécurité matérielle les plus strictes avec des modèles d’empreintes digitales stockés dans l’élément sécurisé de la clé

  • Fonctionne immédiatement avec les systèmes d’exploitation et les navigateurs, notamment Windows, macOS, Chrome OS, Linux, Chrome et Edge
  • Prend en charge FIDO2/WebAuthn, FIDO U2F
  • Disponible dans les formats USB-A et USB-C avec prise en charge biométrique

La série YubiKey Bio est certifiée FIDO et FIDO2. Il fonctionne avec Google Chrome ou toute application compatible FIDO sous Windows, Mac OS ou Linux et avec des applications prenant en charge FIDO ou FIDO2 via les navigateurs Chrome, Firefox ou Edge.

:blush:

Bonne journée.

Qui a testé(e) !?

j’ai une Yubikey pour mon authentification sur ma machine, mais ne marche pas sous linux.
Pour les biometrics, je n’utilise pas, car trop « simple » de les compromettre

Bonjour @Zargos :slight_smile:

M…

Vraiment :confused:

Tu dois me parler de « même par les empreintes digitales » :thinking:
J’ai déjà entendu cela pour la reconnaissance faciale sur smartphones :frowning:

Bonne journée. Merci pour ta réponse.

oui, on peut reproduire des empreintes digitales, quand à la reconnaissance faciale il y a la possibilité de reproduire aussi (c’est cependant plus difficile si cette reconnaissance faciale utilise des éléments complémentaires, comme le mouvement facial, la detectiond e temperature, etc…).
La reconnaissance de l’oeil peut être contrefaite avec environ 51 images spécifiquement sélectionnées et ordonnées.

Comme je le disais ici :wink:

Il parait que les enfants d’un parent arriveraient à s’authentifier sur le smartphone du/des parents :confused:

Résumé

Ou par exemple, l’âge de la personne, stockée (en plus) dans la base de données et d’autres paramètres - comme - A t’il eu une balafre ou un grain de beauté (çà doit être déjà le cas) - c’est telle atténuée, l’a t’il encore ; le grain de beauté :wink: Encore faut-il que l’utilisateur autorise l’accès à ces informations - en répondant bien aux questions (d’un formulaire d’inscription).

Oui :slight_smile:

oOOA (NdMoi-même 20230510 : cà me rassure, je ne compte pas m’enfermer dans un boumeker – ultra sécurisé) :wink: Merci.

Bonne journée :slight_smile:

Bonsoir, bonjour.

Je viens de partager cet article sur mes réseaux : Comment configurer une clé d'accès (passkey) sur votre compte Google pour en finir avec les mots de passe

Je souhaitais savoir si (pour pouvoir partager l’info) si l’authentification avec sa clef FIDO2 U2F fonctionne depuis un Linux - récemment - depuis :wink: ?

Je viens de trouver ce lien :

Connexion au bureau et authentification de l’utilisateur Linux : Nitrokey FIDO2 (Ubuntu 20.04 avec Gnome Display Manager)

Ce guide vous guidera dans la configuration de Linux pour utiliser FIDO Universal 2nd Factor, c’est-à-dire FIDO U2F avec libpam-u2f et Nitrokey FIDO2.

Dans la configuration de pam y’a une « option »

nouserok s’assurera que vous pouvez toujours vous connecter en utilisant le nom d’utilisateur et le mot de passe, vous pourriez vouloir supprimer cette option à un moment donné, une fois que la configuration fonctionne et que vous ne voulez plus de connexions régulières basées sur le nom d’utilisateur et le mot de passe.

C’est bien çà :blush:


Ce lien aussi est bien à lire :

Key-ID :

Comment activer FIDO U2F sous Linux

Bien que certaines versions récentes de Linux aient une prise en charge intégrée des clés de sécurité U2F, beaucoup ne le font pas, et vous devrez donc peut-être apporter une modification mineure à la configuration du système afin de permettre au navigateur Web demandeur (tel que Chrome) de communiquer directement avec votre ordinateur. Jeton Key-ID U2F via le port USB.

Merci.

libpam-u2f :wink: ?


J’ajoute en plus ce fichier « Yubico udev rules »

:slight_smile:

J’avais vu une vidéo d’un informaticien qui juste avec des photos avait réussi à reproduire des empreintes digitales. Un de ces quatre j’essaierai pour voir.

1 J'aime

Monsieur Bortzmeyer : Jouons et sécurisons avec une clé FIDO2/WebAuthn

:wink:

Personnellement je n’aime pas l’idée de se passer de mot de passe.
Cela prive un individu du moindre contrôle, déjà qu’il n’en a pas beaucoup. D’autant que les fournisseurs de solution sont justement ceux qui violent le plus l’identité et les droits des utilisateurs.

C’est une galère à écrire les mot de passes :blush:

J’aime l’idée d’avoir ses certifs d’authentification sur une clef et se loguer automatiquement.

Bonne journée.

Je suis en train de configurer mes systèmes pour que si la clef n’est pas présente, le système se verrouille en utilisant à la fois la présence d’un certificat, mais aussi d’un challenge-response login/mot de passe. Sachant que j’utilise un coffre-fort de mot de passe.
Mais je me bat un peu avec pam_u2f, voir pam tout court.

1 J'aime

Super génial @Zargos !!

:partying_face: :tada: