Nicht-Yubikey-FIDO-Schlüssel verwursten

Hallo liebe Forende. Ich habe hier einen Schlüssel von Feitian der theoretisch FIDO kann, doch praktisch leuchtet er auf meinem Linux-System nur und scheint von Webseiten nicht erkannt zu werden. Genausowenig von den Yubikey Tools aber vielleicht funktionieren die nur bei … Yubikeys.

Auf USB Ebene wird er erkannt, ein hidraw device taucht auch auf, auf tatsch reagiert er ebenso. Darüber hinaus ist er aber nutzlos.

Was tun?

Feitian liefert nur wenig Informationen und die Tools sind auf Windows/Mac beschränkt. Aber angeblich können die FIDO-Token über den Chrome-Browser zurück gesetzt werden:

https://fido.ftsafe.com/setupsecuritykey/

1 „Gefällt mir“

Möchtest du die Passkey-Authentifizierung darüber abwickeln? Hast du eine passende Browsererweiterung installiert, die die WebAuthn-API bereitstellt? Damit ein FIDO-Gerät mit einem FIDO-Server kommunizieren kann, muss der Browser als Vermittler fungieren und die Anfragen des FIDO-Servers (Webserver + ggf. Browser-Erweiterung) an den FIDO-Client (also dein FIDO-Device) weiterleiten. Das funktioniert nur mit einer geeigneten FIDO-Extension im Browser.

1 „Gefällt mir“

Meine Hoffung war ja, dass diese Dinger einem gemeinsamen Standard folgen und ich nicht noch extra was installieren muss.

Tun sie normalerweise auch.

Fido2?

Normalerweise sollten Hardware-Security-Keys mit Fido2 direkt funktionieren, ohne zusätzliche App/Extension. Verwendest du Sandboxing, z.B. Firejail, Apparmor-Profil oder Flatpak, die den Zugriff des Browsers auf den Sicherheitsschlüssel verhindern können?

Das stimmt, das Plugin wird nur benötigt, wenn die Passkeys mit KeePassXC verwaltet werden. Da habe ich mich getäuscht. Die WebAuthn-Implementierung ist bereits in den gängigsten Browsern enthalten.

Wenn unter Linux ein FIDO-Key nicht erkannt wird, könnte es aber vermutlich an fehlenden udev-Regeln liegen, die den Zugriff auf das USB-Gerät für normale Benutzer erlauben und die passenden Berechtigungen sowie Gruppenrechte für die Kommunikation mit dem Authenticator festlegen:

https://www.token2.com/site/page/using-token2-fido2-keys-under-linux

https://github.com/Yubico/libu2f-host/blob/master/70-u2f.rules

Das tun sie auch, allerdings scheinen nicht alle Linux-Distributionen entsprechend vorbereitet zu sein. Im Regelsatz auf GitHub ist beispielsweise ein Feitian-Key aufgeführt. Allerdings muss die Regel genau zu deinem Stick passen, damit die richtige Geräte-ID eingetragen wird.