WebAuthn - Zukunft der Authentisierung im Web

WebAuthn

Zukunft der Authentisierung im Web

Marc Ruef
von Marc Ruef
am 24. April 2018
Lesezeit: 7 Minuten

Keypoints

  • W3C und FIDO Alliance haben eine neue Spezifikation vorgestellt
  • WebAuthn (Web Authentication) standardisiert den Zugriff auf Hardware-Mechanismen zur Umsetzung sicherer Authentisierung im Browser
  • Grosse Browserhersteller wie Microsoft, Google und Mozilla haben ihre Unterstützung kommuniziert und bemühen sich um erste Implementationen
  • Damit der Mechanismus auf Basis asymmetrischer Kryptoverfahren genutzt werden kann, muss zuerst eine Registrierung mittels klassischer Passwort-Authentisierung erfolgen
  • Mit WebAuthn werden einige klassische Sicherheitsprobleme adressiert, die Komplexität im Browser aber zusätzlich erhöht

Das World Wide Web Consortium (W3C) und FIDO Alliance haben eine neue Spezifikation des FIDO Authentication Framework vorgestellt. Durch WebAuthn (Web Authentication) soll eine Standardisierung der sicheren Authentisierung im Web erreicht werden. Durch sie wird definiert, wie Hardware-Mechanismen (z.B. USB, Bluetooth oder NFC) angesteuert werden können. Die grossen Browserhersteller wie Microsoft, Google und Mozilla haben sich dem Standard verpflichtet und werden ihn zukünftig implementieren.

Funktionsweise

WebAuthn basiert auf einer vorangegangenen FIDO-Spezifikation namens Universal Authentication Factor (UAF). Diese wurde damals jedoch nicht gross beachtet, da sie unter anderem die Thematik mobiler Browser gänzlich ausser Acht liess. Durch die Unterstützung der grossen Browserhersteller wird WebAuthn im Gegensatz ein hohes Mass an Marktpräsenz erlangen können und damit zu einem beachtenswerten Element moderner Websicherheit werden.

Ein Webdienst muss WebAuthn als Authentisierungsmechanismus anbieten. Der Benutzer muss dann in einem ersten Schritt sein Gerät auf diesem Dienst registrieren. Dazu steuert er den Dienst mit seinem kompatiblen Browser an und beginnt die Registration. Er kann dann seine lokal gespeicherte Identität auswählen und diese mit dem Dienst verknüpfen. Hierzu muss er voraussichtlich eine klassische Authentisierung mittels Benutzername/Passwort vornehmen. Von da an kann er zukünftig auf die Nutzung der klassischen Credentials verzichten. Stattdessen kann er sich mit seinem Gerät anmelden.

Vorteile

Sind die Hürden einer erfolgreichen Registrierung genommen, kann auf einen relativ simplen und leicht nachvollziehbaren Mechanismus zwecks Authentisierung zurückgegriffen werden. Benutzer müssen sich nicht mit zig unterschiedlichen Authentisierungsformen und individuellen Implementierungen auseinandersetzen. Der Login im Online-Banking dürfte weitestgehend gleich funktionieren, wie bei Webmail oder einem Webforum auch. Gerade Gelegenheitsnutzer dürften sich durch die Simplifizierung im täglichen Umgang überzeugen lassen.

Die Nutzung eines asymmetrischen Verfahrens steigert die Sicherheit des Ablaufs einer Authentisierung massgeblich. Ein einfacher Diebstahl von Credentials zwecks Wiederverwendung (Re-Use-Attack) wird durch die kryptografische Beschaffenheit des Mechanismus verhindert.

Da jeweils für jeden Dienst eine neues Schlüsselpaar definiert wird, lassen sich auch sogenannte Birthday-Attacken verhindern. Es ist nämlich nicht mehr möglich, dass für die Authentisierung zwei unterschiedlicher Dienste die gleichen Credentials eingesetzt werden. Ein Data Breach bei einem Dienst hat somit keine direkten Auswirkungen auf die sichere Authentisierung eines anderen Dienstes. Die zunehmende Anzahl der Datenbreaches bzw. das gesteigerte Interesse an diesen macht dies nämlich zu einem echten Problem.

Kritik

Die Registrierung wird immer über einen alternativen Kanal bzw. einen alternativen Weg stattfinden müssen. Typischerweise wird dies über Benutzername/Passwort geschehen. Ein Angreifer kann während dieser Phase die Registrierung mitlesen, manipulieren oder stören. Hierbei handelt es sich um das klassische Problem symmetrischer Verschlüsselung: Wie kann zu beginn der das Pre-Shared Secret (der Schlüssel) auf sichere Weise ausgetauscht werden?

In der Pressemitteilung von W3C kommt der Executive Director der FIDO Alliance zu Wort und vermeldet, dass mit WebAuthn endlich phishing-resistente Authentisierung eingeführt werden kann (“phishing-resistant FIDO Authentication”). Dies ist fachlich inkorrekt, denn nach wie vor können Benutzer mittels Phishing dazu bewegt werden, eine Authentisierung teilweise oder vollumfänglich durchzuführen. Dies haben wir im Rahmen vieler Kundenprojekte immer wieder bewiesen. Das Heranziehen eines weiteren Faktors erschwert lediglich die Reproduzierbarkeit eines Angriffs.

Nach wie vor existiert auch das Risiko von Fehlern bei der Umsetzung im logischen Ablauf. Zum Beispiel ist der Anbieter eines Dienstes verantwortlich, das wiederholte Benutzen der gleichen erfolgreichen Authentiserung (Replay-Attack) zu erkennen und zu verhindern.

Viele Authentisierungsmechanismen, dazu gehören auch Merhfaktor-Lösungen, erlauben das Caching von Authentisierungsdaten. So könnte ein USB-Stick als zusätzlicher Faktor so konfiguriert werden, dass eine Authentisierung mittels PIN oder Fingerabdruck nur alle 30 Minuten stattfinden muss. Ein wichtiges Element der Erhöhung des Komforts, die die gesamte Sicherheit aber – mindestens in diesem Zeitfenster – wieder zunichtemachen kann.

Hinzu kommt, dass mit jeder technischen Erweiterung die Codekomplexität eines Browsers erhöht wird. Damit steigt auch das Risiko von Programmierfehlern. Beobachtungen des Exploit-Handels zeigen klar auf, dass sowohl die Anzahl kritischer Schwachstellen in Browsern als auch das kommerzielle Risiko an diesen Schwachstellen stetig zunimmt.

Nicht zu vergessen ist, dass die Architektur von WebAuthn Risiken für die Privatsphäre eines Nutzers mit sich bringt. Durch die systematische Auswertung von Attestation Keys können Benutzer über verschiedene Dienste hinweg verfolgt und protokolliert werden. Der Standard sieht hier gewisse Massnahmen vor, um eine solche Auswertung zu erschweren. Dies erfordert eine entsprechende Anpassung bei der Implementierung durch die jeweiligen Produktehersteller. Es bleibt abzuwarten, ob diese sich aktiv für die Privatsphäre ihrer Kunden einsetzen werden.

Fazit

Strenge Authentisierung ist der richtige Weg, um mit einer Vielzahl altbekannter und stetig aktueller Gefahren umgehen zu können. Dass solche Mechanismen mittlerweile selbstverständlich in populären Diensten angeboten und durch die Anwender auch genutzt werden, ist ein klar positiver Trend.

Mit WebAuthn versucht man diese Standardisierung im Web voranzutreiben. Dabei lagert man aber einen Grossteil der Logik beim Client – vorzugsweise im Webbrowser – aus. Diese Zunahme der Software-Komplexität wird zur Erhöhung der Angriffsfläche eines Elements beitragen, das schon jetzt im Fokus von Angreifern ist.

WebAuthn wird Probleme lösen können, aber ebenso einige neue einführen. Es bleibt zu hoffen, dass die Vorteile überwiegen können. Ob dies der Fall sein wird, werden wir wohl erst in 1-2 Jahren sehen.

Über den Autor

Marc Ruef

Marc Ruef ist seit Ende der 1990er Jahre im Cybersecurity-Bereich aktiv. Er hat vor allem im deutschsprachigen Raum aufgrund der Vielzahl durch ihn veröffentlichten Fachpublikationen und Bücher – dazu gehört besonders Die Kunst des Penetration Testing – Bekanntheit erlangt. Er ist Dozent an verschiedenen Hochschulen, darunter ETH, HWZ, HSLU und IKF. (ORCID 0000-0002-1328-6357)

Links

Sie wollen die Awareness Ihrer Benutzer prüfen?

Lassen Sie durch uns einen Social Engineering Test durchführen!

×
Cyber Threat Intelligence

Cyber Threat Intelligence

Marc Ruef

3D Printing

3D Printing

Marc Ruef

Contact Tracing App DP3T

Contact Tracing App DP3T

Marc Ruef

Sie wollen mehr?

Weitere Artikel im Archiv

Sie brauchen Unterstützung bei einem solchen Projekt?

Unsere Spezialisten kontaktieren Sie gern!

Sie wollen mehr?

Weitere Artikel im Archiv