#115 – Was steckt hinter FIDO und FIDO2?

#114 – Was ist eigentlich GrandCrab?
6. September 2019
#116 – Was ist eigentlich Libra?
20. September 2019

Die Abkürzung FIDO steht für Fast IDentity Online und ermöglicht, vereinfacht formuliert, eine starke und sichere Authentifizierung im Internet- und das ganz ohne Passwörter.

Wie sie bereits wissen, gilt die Kombination von Benutzername und Passwort längst nicht mehr als der heilige Gral, wenn es um die sichere Authentifizierung im Internet geht.

So wurde 2013 die FIDO-Allianz gegründet. Die gemeinnützige Organisation hat das Ziel gemeinsam mit vielen verschiedenen Unternehmen, offene und lizenzfreie Standards für die weltweite Authentifizierung im Internet zu entwickeln und so die Online-Sicherheit signifikant zu erhöhen.

Um dieses Ziel zu erreichen, hat die FIDO-Allianz bis 2014 zwei lizenzfreie Standards entwickelt, die unter den Namen U2F und UAF bekannt sind.

  • U2F ist die Abkürzung für universeller zweiter Faktor. Der Standard beschreibt eine allgemeine Zwei-Faktor-Authentifizierung. Das bedeutet, dass man mit U2F bereits existierendes Verfahren zur Benutzerauthentifizierung mit einem zusätzlichen Faktor absichert. Diese Erweiterung kann z.B. die Benutzung eines Tokens beispielsweise ein USB-Stick sein, welches Informationen beinhaltet die die Authentifizierung erst ermöglichen.
  • Der zweite Standard ist UAF, was für universelles Rahmenwerk zur Authentifizierung steht. Der Standard beschreibt, wie man sich im Internet ohne Passwort authentifiziert. Hierzu können biometrische Verfahren zum Einsatz kommen, sodass ein Benutzer aufgefordert wird sich z.B. per Fingerabdruck an einem Gerät zu authentifizieren.  Das Besondere an diesem Verfahren ist, dass der Fingerabdruck nicht an den Server weitergeleitet wird, sondern nur zu einer lokalen Authentifizierung beiträgt, sprich der Nutzer authentifiziert sich nur gegenüber einem lokalen Gerät, einem sogenannten FIDO Authenticator. Das kann beispielsweise ein Smartphone sein. Nach der lokalen Authentifizierung wird von dem Gerät die asymmetrische Kryptographie verwendet, um den Benutzer am Server authentifizieren zu können.

Mit dem FIDO2 Projekt wurden die beiden FIDO-Standards U2F und UAF weiterentwickelt.

FIDO2 besteht aus einer Web-Authentifizierungsspezifikation, bekannt als WebAuthn, welches für die Browser-Server-Kommunikation zuständig ist und das entsprechende Client-to-Authenticator-Protokoll, kurz CTAP-Protokoll, welches die Browser-Authenticator-Kommunikation definiert.

Der neue FIDO2-Standard ersetzt das herkömmliche Passwort und führt folgende Sicherheitslevel für die Authentifizierung ein:

  • Die Ein-Faktor-Authentifizierung: Hier wird das Passwort durch den Besitz des Authenticators ersetzt.
  • Die Zwei Faktor Authentifizierung: Hier wird das Passwort durch den Authenticator und die Kenntnis über eine PIN, die zuvor im Authenticator gesetzt wurde, ersetzt.

Die Ergänzung zu den bisherigen Standards besteht darin, dass mit FIDO2 nicht nur der Besitz des Authenticators, sondern durch die Verwendung eines PIN für den Token auch Wissen nachweisbar ist und damit gänzlich auf Passwörter verzichtet werden kann.

 

Wie funktioniert der Authentifizierungsprozess nun genau?

Den Authentifizierungsprozess übernimmt ein Challenge-Response-Verfahren, wobei der Browser bei Authentifizierung an Webseiten die Rolle eines Relays übernimmt. Im Detail verhält sich das wie folgt:

  1. Die Webseite sendet eine Challenge an den Client-Browser, dieser leitet die Challenge mit weiteren Daten an den Authenticator weiter.
  2. Der Authenticator fragt die bei der Registrierung zuvor eingerichtete Zugangsberechtigung (privater Schlüssel) ab und überprüft Wissen des Benutzers (PIN). Sind diese Schritte erfolgreich, erzeugt er eine digitale Signatur der Challenge und übergibt diese an den Browser.
  3. Der Browser reicht die signierte Challenge an die Webseite weiter, welche die Signatur überprüft und bei erfolgreicher Verifizierung den Client authentifiziert

Der Vorteil von der FIDO- Authentifizierung ist, dass sie auf die fortschrittlichere Challenge-Response Technik setzen, bei der das geteilte Geheimnis (der Private-Key) den Authenticator nicht verlässt und damit nicht übertragen werden muss. Dies hat vor allem beim Kompromittieren eines Endgeräts beträchtliche Vorteile, da Malware wie Keylogger keine Chance bekommen, Informationen abzugreifen, die eine Authentifizierung bei einem Dienst ermöglichen.

Auf der anderen Seite muss man für den Fall eines Authenticator-Verlusts wichtige Vorkehrungen treffen: Entweder man richtet mehrere Authenticatoren ein, um sich im Falle eines Verlustes nicht auszusperren oder man muss auf Restore Codes zurückgreifen.

Ein letztes Wort zum Schluss: In einer Zeit, in der sich die Online-Sicherheitslage drastisch verschlechtert, wird die Erfindung und Einführung von offenen Authentifizierungsstandards immer wichtiger. Geräte, die mit FIDO und FIDO2 kompatibel sind, bieten das Höchstmaß an Schutz vor Phishing- und Man-in-the-Middle-Angriffen. Mittlerweile haben mehrere große Webbrowser, darunter Chrome, Firefox und Microsoft Edge, die Standards bereits implementiert. Android und Windows 10 verfügen außerdem über integrierte Unterstützung für die FIDO-Authentifizierung.

Kontakt: Ingo Lücker, ingo.luecker@itleague.de

Schreibe einen Kommentar