[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: FIDO-basierte SSH-Schluessel


Hallo,

vielen Dank für die Erklärungen.

On Thu, Jun 09, 2022 at 06:46:37PM -0000, Christian Weisgerber wrote:
> On 2022-06-09, Marc Haber <mh+uugrn@xxxxxxxxxxxx> wrote:
> > Weißt Du wie die Softwareunterstützung für Yubikeys unter Debian aktuell
> > aussieht? Die meisten Yubi-Tools sind iirc wegen python 2 aus Debian
> > rausgeflogen.
> 
> Keine Ahnung. Für die FIDO-Basisfunktionalität braucht man keine
> zusätzlichen Werkzeuge. Die Yubi-Tools habe ich noch nie angefasst.

Erstaunlicherweise sind wieder ein paar Tools in Debian unstable
aufgetaucht, sogar halbwegs aktuell maintaint. Ich ziehe ie Frage
zurück.

> Ja. Die Wortwahl ist etwas schwierig, da der Begriffsraum schon
> stark besetzt ist. Von "Schlüssel" sollte man absehen, sonst kommen
> so Blüten raus wie dein "Dabei ist der Key komplett auf dem Key
> gespeichert". :-) "Token" ist bei SSH auch schon was anderes.
> "YubiKey" ist griffig, verschweigt aber Konkurrenzprodukte.
> 
> Die FIDO-Dokumentation und die OpenSSH-Man-Pages verwenden
> "Authenticator", was ich im Folgenden auch tun werde.

Authenticator == der USB-Schlüssel?

> > Wie lang ist so ein Keyhandle
> > üblicherweise, sieht man ihn als Bestandteil des Keys?
> 
> Konkret 128 Byte bei meinem YubiKey FIDO.
> Im FIDO-Modell ist der Keyhandle separat vom öffentlichen Schlüssel.
> Bei SSH bildet der Keyhandle den privaten SSH-Schlüssel.

... und da elliptic-Curve-Verfahren mit 256 bit Schlüssellänge verwendet
werden passt das. Bei RSA wären 128 Byte 1024 bit Schlüssellänge und zu
kurz.

> > Ist ein Bruteforceangriff auf das Keyhandle ein realistischer Angriff?
> 
> Nein.

Bei 128 Byte sicher nicht, nein.

> > Wie sperrt man einen Key bei Verlust?
> 
> Dazu gibt es keinen Mechanismus. Da der Authenticator allein keinen
> Zugang gewährt, ist das erstmal nicht kritisch. Man kann die diesem
> Authenticator zugeordneten Schlüssel manuell wegwerfen.

Und die auf den Rechnern abgelegten Keyhandles können auch weg.

> >> Eine gängige Implementierung ist nun, dass der zufällig erzeugte
> >> private FIDO-Schlüssel mit einem gerätespezifischen Schlüssel
> >> symmetrisch verschlüsselt ("wrapped") wird und dieses Chiffrat als
> >> Keyhandle ausgegeben wird.
> >
> > "gerätespezifisch" heißt hier, spezifisch für das Stück Hardware am
> > Hosenbund?
> 
> Ja.
> 
> > Gibt es eine über das "den Key anfassen" hinausgehende Sicherung,
> > z.B. eine PIN?
> 
> FIDO2 hat ein Flag "User Verification" eingeführt. Damit muss sich
> der Benutzer gegenüber dem Authenticator ausweisen, z.B. über
> biometrische Merkmale. Als Notbehelf gibt es da auch die Möglichkeit
> eine PIN zu setzen, die am Rechner eingegeben und an den Authenticator
> übermittelt wird. ssh-keygen(1) kann mit einer Option Schlüssel
> erzeugen, die "User Verification" anfordern, und ssh(1) kann die
> PIN vermitteln.

Das klingt ähnlich wie bei PIV.

> > Dieses "den Key anfassen" ist nach meiner Erfahrung ausgesprochen
> > lästig.
> 
> Diese so genannte "User Presence"-Prüfung verhindert, dass man dem
> Authenticator im Hintergrund Authentisierungsanfragen schickt, die
> dieser auch beglaubigt, ohne dass der Benutzer etwas davon mitbekommt.

Das mache ich derzeit bei meinen PIV-Keys mit ssh-add -t 3600 -c. Dann
macht der Rechner ein Fenster auf und möchte einmal Enter sehen.

> Wenn man ernsthaft FIDO-basierte Schlüssel verwendet, sollte man
> sich tatsächlich Gedanken über die Anordnung auf dem Schreibtisch
> machen, damit man den Authenticator bequem erreichen kann.

Mein Schreibtisch hat rechts unter der Tischplatte eine geferdert
aufgehängte USB-Buchse; der Authenticator hängt an einem federbelasteten
Schlüssel-Jojo am Hosenbund und steckt sich somit beim Aufstehen
automatisch aus.

Zugegeben, im Pandemie-Einzelbüro im eigenen Haus herzlich sinnlos,
im Großraumbüro beim Kunden schon eher sinnvoll. Problem it, dass man
das USB-Zeug so justieren muss, dass die Haltekraft des Authenticators
in der USB-Buchse größer sein muss als die Feder im Schlüsseljojo sein
muss, sonst macht es bei jeder Bewegung auf dem Schreibtischstuhl
*ratsch* und der Authenticator ist draußen.

> Du bist nicht repräsentativ.

Das ist wohl richtig :-(

Grüße
Marc

-- 
-----------------------------------------------------------------------------
Marc Haber         | "I don't trust Computers. They | Mailadresse im Header
Leimen, Germany    |  lose things."    Winona Ryder | Fon: *49 6224 1600402
Nordisch by Nature |  How to make an American Quilt | Fax: *49 6224 1600421

-- 
Unix User Group Rhein-Neckar e.V.       https://www.uugrn.org
Archiv und An-/Abmeldeinformationen     https://mail2.uugrn.org
Veranstaltungen https://fixme.uugrn.org https://stammtisch.uugrn.org

References:
Re: Reboot shell.uugrn.org am 08. MaiChristian Weisgerber <naddy@xxxxxxxxxxxx>
FIDO-basierte SSH-Schluessel (was: Reboot shell.uugrn.org am 08. Mai)Marc Haber <mh+uugrn@xxxxxxxxxxxx>
Re: FIDO-basierte SSH-Schluessel (was: Reboot shell.uugrn.org am 08. Mai)Christian Weisgerber <naddy@xxxxxxxxxxxx>
Re: FIDO-basierte SSH-Schluessel (was: Reboot shell.uugrn.org am 08. Mai)Marc Haber <mh+uugrn@xxxxxxxxxxxx>
Re: FIDO-basierte SSH-SchluesselChristian Weisgerber <naddy@xxxxxxxxxxxx>
Re: FIDO-basierte SSH-SchluesselMarc Haber <mh+uugrn@xxxxxxxxxxxx>
Re: FIDO-basierte SSH-SchluesselChristian Weisgerber <naddy@xxxxxxxxxxxx>