KeePass per YubiKey über Challenge-Response absichern

Solltest du noch nicht wissen, was ein YubiKey ist oder macht, dann lies bitte zuvor meinen Testbericht. Weißt du bereits Bescheid, kannst du hier nahtlos anknüpfen. Der YubiKey bietet verschiedene Möglichkeiten, um eine KeePass-Datenbank besser zu schützen. Eine davon ist die Authentifizierungsmethode über Challenge-Response. Hierbei stellt KeePass dem YubiKey eine Frage, welcher diese richtig beantworten muss. Nur wenn das sogenannte Shared Secret übereinstimmt, öffnet sich die Datenbank. Das System kann ganz leicht eingerichtet werden.

Protection (Quelle: Perspecsys Photos, Liz. CC BY-SA 2.0)
Protection (Quelle: Perspecsys Photos, Liz. CC BY-SA 2.0)

YubiKey konfigurieren

Zunächst brauchst du einen YubiKey und das Personalization Tool. Erstelle ein neues Challenge-Response-Profil in Slot 2 mit folgenden Einstellungen:

  • HMAC-SHA1
  • require user input (button press)
  • Fixed 64 byte input
  • generiere einen neuen Secret Key
Challenge-Response auf dem YubiKey konfigurieren
Challenge-Response auf dem YubiKey konfigurieren

Den Secret Key speicherst du an einem sicheren Ort zwischen und schreibst das Profil anschließend wie oben beschrieben auf deinen YubiKey.

Challenge-Response in KeePass einrichten

Um deine KeePass-Dabenbank nun mit Challenge-Response zu entsperren brauchst du das Plugin KeeChallenge. Entpacke das Archiv im Hauptverzeichnis deiner KeePass-Installation. Dann öffnest du deine Passwortdatenbank und gehst auf “Datei” —> “Masterschlüssel ändern …”. Gib dein Masterkennwort ein, bestätige es und setze anschließend den Hacken bei “Schlüsseldatei / Provider”. Wähle aus der Dropdownliste “Yubikey challenge-response” aus. Füge im sich öffnenden Fenster den zuvor gesicherten Secret Key ein. Nach Bestätigung der Eingabe fordert dich das Plugin auf, deinen YubiKey anzustecken und auf den Button zu drücken. Hat das geklappt, sind KeePass und YubiKey Freunde. Speichere deine Datenbank erneut ab.

Beim nächsten Login wirst du nach deinem Passwort gefragt und musst anschließend die Authentifizierung mit dem YubiKey bestätigen. Solltest du deinen YubiKey verlieren, kannst du deine Datenbank jederzeit mit dem Secret Key wieder entsperren.

Hinweis zur Sicherheit

Die Methode ist recht einfach und wenig zeitaufwendig. Allerdings ist der Einsatz von Challenge-Response nicht ganz unproblematisch. Denn ein Angreifer könnte die XML-Datei, in der Challenge und gleichbleibendes Shared Secret mit AES-256 Bit verschlüsselt sein sollten, abgreifen und versuchen diese zu entschlüsseln. Ich würde mich da lieber nicht drauf verlassen und rate dazu, Challenge-Response mit Bedacht einzusetzen. Falls du damit Bauchschmerzen haben solltest, empfehle ich dir die Methode über OATH-HOTP. Die ich in meinem nächsten Artikel vorstelle.

Du kannst deine KeePass-Datenbank noch mit weiteren einfachen Tipps effektiv schützen.


Avatar von reraiseace
Autor: Markus Werner (reraiseace) Twitterreraiseace, Google+reraiseace, Twittercb_werner
Ich bin Redaktionsvolontär bei der COMPUTER BILD in Hamburg, Fernstudent am Deutschen Journalistenkolleg und schreibe auf re{raise}ace privat über Webdesign und Programmierung. Seit 2015 schrieb ich auch regelmäßig für andere Medien.

2 Kommentare – Schreib mir deine Meinung!

Fülle bitte die nachstehenden Felder aus. Angaben mit einem Sternchen sind Pflichtangaben. Deine E-Mail-Adresse wird nicht veröffentlicht.

  1. Kommentar von Mainboarder · · #

    Was genau spricht dafür, dass OATH-HOTP sicherer als CR ist?
    Beides hat ein shared secret welches verschlüsselt gespeichert werden muss.
    Lediglich der Counter ist noch zusätzlich bei OATH-HOTP, das ist bei Brute-Force aber kein Hindernis.

  2. Kommentar von reraiseace · · #

    Wenn du das Shared Secret mittels Brute Force knacken willst, gebe ich dir Recht. Da gibt es zwischen beiden keinen Unterschied. Möchtest du hingegen die nächsten Einmalkennwörter ermitteln, schaut die Sache anders aus. Bei OATH-HOTP sorgt der Counter dafür, dass beide Seiten wissen, welches Kennwort als nächstes kommt. Wird nun diese Reihenfolge geändert oder die Abweichung zum Counter wird zu groß, dann kannst du dich beispielsweise nicht mehr anmelden. Deshalb wäre Brute Force an dieser Stelle unwahrscheinliche Glückssache. Zumal es ratsam ist, mehr als ein Einmalkennwort zu verwenden.