Passkeys: besser im Secure Element oder im PW-Manager ablegen?

Beim Versuch, bei der alten Datenkrake Adobe einen Passkey anzulegen (Acrobat Pro ist unverzichtbar für meinen Workflow), fiel mir der folgende Beschreibungstext in den Security-Settings auf: Passkeys seien komfortabel, weil sie dieselbe Authentisierungsmethode erforderten wie die Entsperrung des Geräts, und sicher, weil man den Key für das Gerät jederzeit im Adobe-Konto wieder entfernen könne.

Beides scheint mir nur dann volle Gültigkeit zu haben, wenn man pro Gerät einen Passkey im Secure Element ablegt, also mehrere pro Konto - nicht bloß einen, den man über die Cloud synchronisiert (Apple, Google, Bitwarden) oder im Passwortmanager ablegt (KeePassXC). Meinen habe ich trotzdem in XC abgelegt und war erfreut, wie gut er sich mit Keepassium auf iPhone und -Pad bringen und nutzen ließ.

Meine weiteren Tests lassen mich befürchten, dass die Anbieter (wie es Stand jetzt die meisten tun) noch lange das schlechte, alte Passwort als Hintertürchen werden anbieten müssen. KeePassXC läuft toll (gibt es auch als portable Version), aber die Anmeldung per QR-Code ist technisch voraussetzungsreich (in der c’t gab es dazu einen ausführlichen Artikel) und entsprechend fehleranfällig. Aber genau diese Variante ist unverzichtbar, um sich auf unbekannten Geräten anmelden zu können.

Auf meinem dienstlichen Notebook mit Windows 11 klappt alles wunderbar, aber auf einem hp-Gerät mit Windows 10 von 2017 (TPM und Windows Hello vorhanden) kriege ich das nicht hin, dass mir die Big Player Amazon und Adobe einen QR-Code anzeigen. Entweder ich werde aufgefordert, einen Hardwarekey anzustöpseln, oder es wird der lokale TPM-Chip abgefragt, aber es fehlt die Option, mich per Smartphone und QR-Code anzumelden. Vielleicht mache ich was falsch, aber ich befürchte hier systematische Probleme mit Abwärtskompatibilität.

Szenario Nr. 2: Anmeldung mit einem Passkey außerhalb des Browsers. Bereits vom Installer für Acrobat Pro bekomme ich einen Prompt zum Login, und die Ablage des Keys in KeePassXC nützt mir da herzlich wenig. Das ist alles nicht zuende gedacht, und das TPM-Modul, das dann abgefragt wird, lässt sich (aus guten Sicherheitsgründen) weder für Backup noch für Sync nutzen.

Hat Adobe recht, und die Maxime ‚pro Gerät mit Secure Element ein Passkey‘ ist der Königsweg? All das motiviert mich eher, bei meinen gut gepflegten, separaten KDBX-Datenbanken für automatisch generierte Passwörter und TOTP-Seeds zu bleiben und erstmal keine weiteren Passkeys anzulegen. Bin ja mit Adobe und Amazon noch ganz am Anfang meiner alphabetischen Liste (für unser Discourse-Forum habe ich natürlich auch schon einen Passkey angelegt…).

1 „Gefällt mir“

Das Problem mit einem Software-basierten Authentifikator wie KeePassXC ist, dass er auf die Browser-Erweiterung angewiesen ist. Das ist ein etwas abgeschwächter FIDO-Standard, denn damit ist die strenge FIDO-Vorgabe, dass der Passkey fest an ein Gerät gebunden sein muss, zwar nicht mehr erfüllt, ist aber immer noch deutlich sicherer als ein klassisches Passwort. Das ist ein Kompromiss, den man aus Gründen der Benutzerfreundlichkeit einzugehen bereit war, der aber nicht alle Anwendungsfälle abdeckt. Die Browsererweiterung ist also notwendig, da KeePassXC keine systemweite FIDO2-API zur Verfügung stellt.

Ein integriertes Sicherheitsmodul wie ein TPM-Chip erfüllt zwar den hohen FIDO2-Standard und implementiert eine systemweite FIDO2 bzw. WebAuthn-API, allerdings mit den genannten Einschränkungen, dass der Passkey nicht mehr portabel und ein Backup nicht mehr möglich ist. Mit einem externen Hardware-Authentifikator wie z.B. einem YubiKey kann zumindest die fehlende Portabilität umgangen werden. Ein YubiKey (ab Modell YubiKey 5) erfüllt die vollständigen FIDO2- und WebAuthn-Spezifikationen und ist somit ein zertifizierter, konformer Hardware-Authentifikator.

Wenn also eine Anwendung wie Acrobat Pro den FIDO2/WebAuthn Standard unterstützt und die Verwendung von externen Authentifikatoren wie dem YubiKey korrekt implementiert hat (was nach deiner Beschreibung der Fall zu sein scheint), kann man sich auch mit einem USB-basierten Key authentifizieren und bleibt trotzdem mobil.

Btw: Wer sich ernsthaft mit der Umstellung seiner Logindaten auf Passkeys beschäftigt, wird über kurz oder lang nicht um einen solchen Hardware-Authentifikator herumkommen. Aber als Tipp vorab: Ein YubiKey hat nur eine begrenzte Kapazität. Bei weniger wichtigen Logins, die z.B. auch über den KeePassXC abgewickelt werden können, sollte man daher ggf. auf die Speicherung im Hardware-Key verzichten. Bei Yubico können je nach Modell und Firmware-Version zwischen 25 und 100 Passkeys gespeichert werden.

Danke für die ausführliche Einschätzung! Wenn nur mal alle Plattformen das mit den API-Calls so sauber umsetzen würden wie iOS. Steuere ich unser Forum an und drücke den Passkey-Button, kann ich wahlweise QR-Code, Stick oder Keepassium auswählen.

Aber das ist doch der Charme von Passkeys - dass sie den FIDO2-Stick durch eine ‚freundlichere‘ Lösung ersetzen wollen, ohne die Sicherheit allzu sehr zu schwächen.

Für die Mobilität soll bei Passkeys primär das Smartphone sorgen - was aber konterkariert wird, wenn dann, wenn man ihn braucht, kein QR-Code angezeigt werden kann.

Noch einmal zum Thema Secure Element: Liest hier jemand mit, der oder die für jedes Gerät einen eigenen Passkey anlegt und die besagte Mobilität auf diesem Weg erreicht? Das scheint mir gegenüber den beiden anderen Speicherorten (Stick oder PW-Manager bzw. Apple-/Google-Cloud) eher eine Minderheitenmeinung zu sein:

bei Passkeys ist es im Gegensatz zu Passwörtern nicht erforderlich oder notwendig, dass man einen plattformübergreifenden „Passkey-Manager“ hat, da man für einen Account auch mehrere Passkeys erstellen kann. Einer der Vorteile von Passkeys.

https://www.macuser.de/threads/vorteil-von-passkeys-kann-noch-keinen-erkennen.939869/page-2

So lese ich nämlich auch den Hinweis von Adobe: Ein Passkey pro Gerät ist so schnell angelegt wie zurückgezogen - was die Sicherheit steigert, zum Beispiel wenn ein Gerät verloren geht.

Ich mache das schon, zumindest teilweise. Ich habe meine KeePassXC-Datenbank mit einem KeyFile gesichert und möchte diese Datei aus Sicherheitsgründen nicht auf meinem iPhone speichern oder in irgendeiner Form über das Internet zugänglich machen. Da meine KeePass-Datenbank in meiner Nextcloud gespeichert ist, ist das KeyFile meine letzte Verteidigungslinie.

Um mich trotzdem auf Geräten ohne Zugriff auf meinen KeePass bei den wichtigsten Diensten anmelden zu können, verwende ich den YubiKey am USB-Port des Geräts (z.B. bei Freunden oder im Büro). Wenn mir das Gerät zu fremd ist (z.B. ein öffentliches Terminal), kann ich z.B. eine Zahlung mit Paypal auch auf dem iPhone durchführen. Der YubiKey hat ein NFC-Modul, so dass ich ihn nur in die Nähe des iPhones halten muss. So kann ich auf das iPhone selbst als externen Authentifikator und die damit verbundene Speicherung der Passkeys in der Cloud verzichten. Das war meine Intention.

Aber die Frage, ob ich für jedes Gerät einen eigenen Passkey generiere, muss ich verneinen. Mein Desktop Computer und mein Laptop (den ich fast ausschließlich zu Hause benutze) verwenden die in KeePassXC gespeicherten Passkeys. Trotzdem habe ich eine ausreichende Mobilität erreicht.

Btw: Quasi als Ersatz für das KeyFile könnte der Yubikey auch eine mit HAMAC konfigurierte KeePass-Datenbank öffnen. Diesen Gedanken habe ich aber wieder verworfen, weil beides zusammen (klassisches KeyFile oder HAMAC Challenge-Response-Verfahren über YubiKey) nicht geht und beim Challenge-Response-Verfahren der YubiKey beim Öffnen der Datenbank eingesteckt sein muss. Und das kommt häufiger vor, da sich die Datenbank regelmäßig selbst sperrt. Das ist aber kein klassisches Passkey-Verfahren und man kann hier auch nicht einfach mehrere Yubikeys verwenden. Es ist zwar möglich, aber dann muss das Secret von einem Stick auf den anderen geklont werden. Das hat aber nichts mit FIDO und Passkeys zu tun. Habe ich auch noch nicht ausprobiert.

„Zu Hause“ ist hier ein wichtiges Stichwort. Meine ursprüngliche Frage kann ich inzwischen selbst verneinen - ob es nämlich eine gute Strategie ist, Backup und Sync über das Anlegen mehrerer Passkeys für denselben Account auf verschiedenen Geräten zu erreichen.

Wenn eines dieser Geräte nicht standardmäßig außerhalb der Wohnung aufbewahrt wird, könnte man damit die Ziffer 1 der 3-2-1-Backup-Regel nicht erfüllen: das Offsite-Backup. Wenn alle Geräte bei größeren Kalamitäten gleichzeitig absaufen, abbrennen oder geklaut werden, wäre der Zugang futsch. Da hilft dann nur ein zweiter FIDO2-Stick außerhalb der Wohnung oder eine Sicherung der Passkeys über die Cloud oder eine externe Festplatte an einem anderen Ort als dem, wo die Haupt-Kopie aufbewahrt wird.