Aufgeschreckt durch die zahlreichen Hacks, bei denen riesige Datenbanken mit Passwörtern in die Hände von Fremden gerieten, habe mich mich entschlossen, meine Accounts besser zu sichern. Mittel der Wahl sollte eine Zweifaktor-Authentifizierung mittels eines YubiKey 5 NFC der Firma Yubico sein. In diesem Blog möchte ich meine ersten Erfahrungen schildern.

DenYubiKey 5 NFC gibt es bei Amazon für 50 € versandkostenfrei. Beim Hersteller direkt zahlt man wesentlich mehr, weil noch Zoll und Versand anfallen.

Der Stick soll sehr widerstandsfähig und sogar wasserfest sein, wie ein Taucher in einem Werbespot zeigt.

Es gibt für Linux (und auch für proprietäre Betriebssysteme) alle Anwendungen, die man für die Benutzung benötigt:

  • YubiKey Manager, mit dem man die Speicherslots des Sticks bearbeiten kann

  • YubiKey Authenticator, der genauso arbeitet wie der Google Authenticator, mit dem Unterschied, dass man die Einmalpasswörter nur mit dem angesteckten oder per NFC verbundenen YubiKey sehen kann. Dabei werden die Einträge synchronisiert, das heißt am PC hat man genau die gleichen OTP wie auf dem Smartphone oder Laptop.

  • YubiKey Manager

  • YubiKey Authenticator

OTP ist erstmal das einfachste, aber am weitesten verbreitete Verfahren. Hier gibt man bei der Anmeldung zusätzlich zu Benutzername und Passwort einen 6-steligen Code ein, der im YubiKey Authenticator generiert wird. Dies benutze ich bei Bitcoin.de, Twitter, Amazon und später sicher noch bei vielen anderen Anwendungen.

Google unterstützt U2F (das ist kein Wunder, denn Google entwickelt den Standard mit). Bei U2F benötigt man einen Browser mit entsprechender Unterstützung. Dann ist der zweite Faktor einfach durch Druck auf den Taster am YubiKey erfüllt. Man muss also im Gegensatz zu OTR keinen Code eintippen.

Den ganz neuen Standard FIDO2 konnte ich leider noch nicht testen, da ich keinen Dienst nutze, der das schon unterstützt. Mit FIDO2 sollte das Passwort komplett entfallen, was natürlich sehr bequem ist. Man sollte direkt angemeldet sein, wenn der Key erkannt wurde. Hier gibt es eine Liste der Dienste, die OTP bzw. FIDO unterstützen.

Auch seine Passwortdatenbank KeePassXC kann man mit dem YubiKey absichern. Dazu muss man in einem der zwei Slots eine Challenge Response HMAC ablegen. Diese wird dann von KeePassXC oder KeePass2Android wahlweise als einziger oder als zweiter Faktor benutzt.

Ich bin auf jeden Fall begeistert vom YubiKey. Er funktioniert tadellos unter Linux wie unter Windows und erhöht die Sicherheit deutlich. Gleichzeitig bleibt es möglich, sich ohne großen Aufwand vom Smartphone anzumelden, da er direkt NFC spricht. Die Amazon Bewertungen, dass das Einrichten des YubiKeys selbst für Informatiker schwer sein soll, kann ich nicht nachvollziehen…

Lediglich die Android-Lösung Keepass2Android wirkt etwas altbacken und hat bei mir Probleme, den Speicheroft und Typ (Challenge Response) der zuletzt geöffneten Datei zu merken. Die Nextcloud-Implementation in dieser App kommt mit deutschen Umlauten nicht klar. Leider ist es die einzige KeePass-App, die mit YubiKeys umgehen kann.

Die Sicherheit wird auf jeden Fall drastisch erhöht, denn sobald ein Hacker sieht, dass ein Profil mit einem zweiten Faktor gesichert ist, wird er sich ein leichteres Opfer suchen., denn davon gibt es genug. Eine Ausnahme sind natürlich gezielte Angriffe gegen eine Zielperson. Aber auch hier erhöht der zweite Faktor die Schwierigkeit solcher Angriffe.

Backups sind aber essentiell! Bei Googles U2F kann man einen Code ausdrucken, mit dem man sich dann ohne YubiKey anmelden kann. Bei OTP sollte man sich das Secret, welches man in die App einträgt, sichern. Achtung, bei den meisten Diensten, die ich kenne, wird das Secret nach der Einrichtung nirgends mehr angezeigt. Bei KeePassXC soll man sich das HMAC Secret sicher abspeichern oder ein benutzerdefiniertes Secret benutzen. Dieses kann man sich mit der Personalisierungs-App von YubiKey anzeigen lassen.

Wie das Login in Linux und auf dem Mac mit dem Yubikey funktioniert, werde ich zu einem späteren Zeitpunkt nachberichten.

Previous Post Next Post