OpenSSH a déjà un support initial pour l'authentification à deux facteurs

A2F OpenSSH

OpenSSH l'ensemble des applications qui permettent des communications cryptées sur un réseau, en utilisant le protocole SSH a ajouté un support expérimental pour l'authentification à deux facteurs à sa base de code, en utilisant des appareils prenant en charge le protocole U2F développé par l'alliance FIDO.

Pour ceux qui ignorent U2F, ils devraient savoir que, il s'agit d'une norme ouverte pour la création de jetons de sécurité matériels à faible coût. Il s'agit facilement du moyen le moins cher pour les utilisateurs d'obtenir une paire de clés matérielles et il y a une bonne gamme de fabricants qui les vendent, y compriss Yubico, Feitian, Thetis et Kensington.

Les clés matérielles offrent l'avantage d'être considérablement plus difficiles à voler: un attaquant doit généralement voler le jeton physique (ou au moins un accès persistant à celui-ci) afin de voler la clé.

Comme il existe plusieurs façons de communiquer avec des appareils U2F, notamment USB, Bluetooth et NFC, nous ne voulions pas charger OpenSSH avec une tonne de dépendances. Au lieu de cela, nous avons délégué la tâche de communiquer avec les jetons à un petit bibliothèque d'intergiciels qui se charge facilement, similaire au support PKCS # 11 existant.

OpenSSH a maintenant un support expérimental U2F / FIDO, avec U2F, il est ajouté comme nouveau type de clé sk-ecdsa-sha2-nistp256@openssh.com ou «ecdsa-sk"Pour faire court (le" sk "signifie" clé de sécurité ").

Les procédures d'interaction avec les jetons ont été déplacées vers une bibliothèque intermédiaire, qui est chargé par analogie avec la bibliothèque pour le support PKCS # 11 et est un lien sur la bibliothèque libfido2, qui fournit des moyens de communiquer avec des jetons via USB (FIDO U2F / CTAP 1 et FIDO 2.0 / CTAP 2).

La bibliothèque intermédiaire libsk-libfido2 préparé par les développeurs OpenSSH est inclus dans le noyau libfido2, ainsi que le pilote HID pour OpenBSD.

Pour activer U2F, une nouvelle partie de la base de code du référentiel OpenSSH peut être utilisée et la branche HEAD de la bibliothèque libfido2, qui comprend déjà la couche nécessaire pour OpenSSH. Libfido2 prend en charge le travail sur OpenBSD, Linux, macOS et Windows.

Nous avons écrit un middleware de base pour libfido2 de Yubico qui est capable de communiquer avec n'importe quel jeton USB HID U2F ou FIDO2 standard. Le middleware. La source est hébergée dans l'arborescence libfido2, donc construire cela et OpenSSH HEAD suffit pour commencer

La clé publique (id_ecdsa_sk.pub) doit être copiée sur le serveur dans le fichier authorized_keys. Côté serveur, seule une signature numérique est vérifiée et l'interaction avec les jetons se fait côté client (libsk-libfido2 n'a pas besoin d'être installé sur le serveur, mais le serveur doit prendre en charge le type de clé «ecdsa-sk»).

La clé privée générée (id_ecdsa_sk) est essentiellement un descripteur de clé qui ne forme une clé réelle qu'en combinaison avec une séquence secrète stockée du côté du jeton U2F.

Si la clé id_ecdsa_sk tombe entre les mains de l'attaquant, pour l'authentification, il devra également accéder au jeton matériel, sans lequel la clé privée stockée dans le fichier id_ecdsa_sk est inutile.

En outre, par défaut, lorsque des opérations clés sont effectuées (à la fois lors de la génération et de l'authentification), une confirmation locale de la présence physique de l'utilisateur est requisePar exemple, il est suggéré de toucher le capteur sur le jeton, ce qui rend difficile la réalisation d'attaques à distance sur des systèmes avec un jeton connecté.

Au début de ssh-keygen, un autre mot de passe peut également être défini pour accéder au fichier avec la clé.

La clé U2F peut être ajoutée à agent ssh à travers de "ssh-add ~/.ssh/id_ecdsa_sk", mais agent ssh doit être compilé avec un support clé ecdsa-sk, la couche libsk-libfido2 doit être présente et l'agent doit être en cours d'exécution sur le système auquel il est attaché.

Un nouveau type de clé a été ajouté ecdsa-sk depuis le format de clé ECDSA OpenSSH diffère du format U2F pour les signatures numériques ECDSA par la présence de champs supplémentaires.

Si vous voulez en savoir plus vous pouvez consulter le lien suivant. 


Le contenu de l'article adhère à nos principes de éthique éditoriale. Pour signaler une erreur, cliquez sur c'est par ici !.

Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.