Der Passwortmanager ist ein ebenso notwendiger wie neuralgischer Punkt. Er ermöglicht komplizierte und vielfältige Passwörter, aber ist gleichzeitig der Schlüssel zu unserer gesamten digitalen Identität. Hier kann man mit YubiKey für mehr Sicherheit sorgen.
KeePassXC ist eine der wenigen Erfolgsgeschichten aus einem Fork. Durch die Abspaltung von KeePassX hat die Entwicklung wieder so richtig Fahrt aufgenommen und viele tolle Funktionen wurden implementiert.
Ein Passwortmanager sollte nie nur mit einem starken Passwort geschützt sein, sondern immer noch mit einem zweiten Faktor, der sich in eurem Besitz befinden muss. Insbesondere wenn die Passwortdatenbank über einen Cloud-Speicher synchronisiert wird.
Für den niedrigschwelligen Einstieg bietet KeePassXC hier die Möglichkeit, eine Schlüsseldatei zu erzeugen. Zum Entsperren der Datenbank benötigt man dann Passphrase und Schlüsseldatei. Die Kombination von Wissen und Besitz sozusagen. Diese Schlüsseldatei bewahrt man natürlich getrennt von der Passwortdatenbank auf. Die Datenbank kann über einen Cloud-Speicher synchronisiert werden, die Schlüsseldatei sollte hingegen nie ins Internet geraten, sondern über ein Kabel oder im Heimnetz auf das Gerät übertragen werden. Da sich die Schlüsseldatei nie oder selten ändert, ist das auch kein Komfortproblem.
Mehr Sicherheit bietet hier natürlich der YubiKey, denn eine Schlüsseldatei ist schließlich auch nur eine Datei und kann theoretisch bei einem Angriff auf eurer System gestohlen werden. Der YubiKey befindet sich dagegen auch physisch in eurem Besitz.
KeePassXC mit YubiKey absichern
Legt ein Backup der Datenbank an bevor die Sicherheitseinstellungen verändert werden. Ansonsten verliert ihr bei Problemen Zugriff auf die gesamte Datenbank.
Unter Datenbank / Datenbank-Sicherheit lassen sich die verschiedenen Sicherheitsmaßnahmen konfigurieren.
KeePassXC verweist hier bereits auf die Notwendigkeit, das HMAC-SHA1 Challenge-Response Verfahren zu nutzen. Solltet ihr den YubiKey bereits für LUKS nutzen, ist Slot 2 bereits passend konfiguriert.
Über den Button YubiKey Challenge-Response hinzufügen startet die Einrichtung, die sehr einfach ist. KeePassXC erkennt den YubiKey, man bestätigt mit einem Tipp auf den Key und danach ist die Datenbank mit dem YubiKey verbunden.
Abschließend schließt ihr die Datenbank und öffnet sie erneut, um zu prüfen, ob die Entsperrung mit YubiKey klappt. Ggf. muss der Hardwareschlüssel im Aufklappmenü noch ausgewählt werden. Anschließend gibt man das Kennwort ein und klickt auf OK. In einem zweiten Schritt erfordert KeePassXC die physische Betätigung des YubiKeys.
Im Alltagsbetrieb
Die Zusammenarbeit mit YubiKey klappt fehlerfrei. Je nach Häufigkeit der Entsperrung dürfte man aber den YubiKey im Betrieb kaum noch vom Gerät abziehen.
Ein Problem ist die Synchronisation. Der KeePass-Client auf Android KeePassDX kann gegenwärtig noch nicht mit YubiKey umgehen, weshalb die Datenbank nur auf Desktop-Clients mit KeePassXC genutzt werden kann. Wie so oft sind iPhone-Anwender hier, was die Sicherheit betrifft, im Vorteil. Da ich auf meinem Android-Smartphone sowieso nur eine abgespeckte Variante der Datenbank nutze, ist das für mich kein so großes Problem.
Hast du dir mal Keepass2Android angesehen? Diese App soll angeblich auch mit dem Yubikey zusammenarbeiten.
Ja das hatte ich schon irgendwo gelesen, aber Keepass2Android gibt es nur bei Google Play. Mein Android ist möglichst Google-frei. Sachen aus Google Play (bzw. Aurora Store) installiere ich nur wenn keine Alternativen existieren.
Hallo Gerrit, vielen Dank. Wie kann man sich absichern, falls der YubiKey mal verloren geht oder defekt ist? Kann man eine „Sicherheitskopie“ der Datenbank nachträglich anfertigen? Die vor Einrichtung hilft nur bedingt, da im laufe der Zeit etliche Passwörter hinzugekommen oder geändert wurden.
Danke und Gruß
Martin
Ich löse das Problem tatsächlich, indem ich von Zeit zu Zeit Sicherheitskopien der Datenbank ohne YubiKey-Absicherung erstelle und diese an einem sicheren Ort ablege. Wenn jemand andere Ideen hat wäre ich durchaus auch interessiert 🙂
You only need to backup the 20-byte HMAC-SHA1 secret key that you programmed to your YubiKey. This secret defines how your YubiKey responds to specific inputs (in challenge-response mode). If you program the same secret to another YubiKey, it will work as a clone of your original YubiKey. (That is, you can decrypt your database using either of the YubiKeys). You can also decrypt a YubiKey-protected database without the hardware YubiKey: KeePassXC can simulate the YubiKey programmatically, if you give the app your secret key.
And yes, keep the backup of your secret key well protected: it gives the owner more power than the YubiKey itself 🙂 Such as the power to create clone YubiKeys.
Das geht nur mit einem zweiten YubiKey oder eben so wie Gerrit es macht (Datenbank ohne YubiKey). Echt schade das KeePassDX noch nicht mit YubiKeys umgehen kann, laut Entwickler soll die Unterstützung aber irgendwann integriert werden.
Man kann aber keinen zweiten YubiKey in KeepassXC hinterlegen, es geht immer nur ein einziger…
Oder mache ich evtl. was falsch?
Ich möchte den YubiKey nicht in Verbindung mit 2FA (also nicht kombiniert) für mein KeepassXC nutzen, sondern als Alternative zu einem manuell einzugebenden Passwort. Mein Passphrase, die ich einzugeben habe, ist recht lang und ich halte sie für sehr sicher, nur möchte ich den YubiKey als eine Art Komfortfunktion optional nutzen können, d. h. YubiKey zur Hand, dann nehme ich den und muss keine Passphrase eingeben oder YubiKey nicht zur Hand, kaputt oder was auch immer, dann kann ich auch weiterhin durch manuelle Eingabe meiner Passphrase (die ich aktuell schon habe) die Datenbank entsperren. Geht das?
Nein, ich glaube nicht.
Mittlerweile unterstützt KeePassDX den Yubikey. Und wie Keepassium bereits ganz richtig klarstellte, geht es lediglich um das Secret des Hash für das Challenge/Response. Damit kann man (auch nachträglich) noch einen Zweitschlüssel anlegen, wenn man in Besitz des Secret ist.
Habe selbst so eine Lösung für Windows und Android am Start.