FIDO2: Online-Sicherheit ohne Passwörter verbessern
Entdecke, wie FIDO2 die Online-Authentifizierung verbessert und Sicherheitsprobleme angeht.
Marco Casagrande, Daniele Antonioli
― 6 min Lesedauer
Inhaltsverzeichnis
- Wie FIDO2 funktioniert
- Das Problem mit der Sicherheit
- 1. Client-Impersonationsangriffe (CI)
- 2. API-Verwirrungsangriffe (AC)
- Wie Angriffe funktionieren und ihre Folgen
- Angriffe in unmittelbarer Nähe
- Remote-Angriffe
- Die Sicherheitsanfälligkeiten hinter den Angriffen
- Angriffe haben echte Konsequenzen
- Was kann getan werden, um es zu beheben
- Auswirkungen in der realen Welt bei der Umsetzung von Lösungen
- Fazit: Die Zukunft der FIDO2-Sicherheit
- Originalquelle
FIDO2 ist ein moderner Standard für die Online-Authentifizierung. Er hilft den Leuten, sich ohne traditionelle Passwörter einzuloggen, was super ist, denn wir wissen alle, wie schwierig es sein kann, sich diese kniffligen Kombinationen aus Buchstaben, Zahlen und speziellen Symbolen zu merken. Stattdessen nutzt FIDO2 Kryptografie – das ist fancy für Mathe, die alles sicher macht.
FIDO2 besteht aus zwei Hauptkomponenten: WebAuthn, das dafür sorgt, dass Webbrowser mit Servern quatschen können, und CTAP (Client to Authenticator Protocol), das Geräte wie USB-Sticks oder Handys als Authentifikatoren verwenden lässt. Stell dir einen USB-Stick als deinen Türsteher für den Online-Club vor – er hält die bösen Jungs draussen und lässt dich rein.
Wie FIDO2 funktioniert
In der FIDO2-Welt gibt es vier Hauptakteure: den Nutzer, den Authentifikator, den Client (wie einen Webbrowser) und die vertrauende Partei (wie eine Website oder einen Dienst).
- Nutzer: Die Person, die sich einloggen will.
- Authentifikator: Ein Gerät, das sicheren Zugang bietet, wie ein Sicherheitsschlüssel.
- Client: Die Schnittstelle (wie ein Browser), mit der der Nutzer interagiert.
- Vertrauende Partei: Der Online-Dienst, der die Zugangsdaten des Nutzers überprüft.
Wenn du dich bei einem Dienst einloggen willst, verbindest du deinen Authentifikator mit dem Client. Der Client sendet eine Anfrage an die vertrauende Partei, die deine Identität überprüft. Wenn alles passt, bist du drin! Kein Passwort nötig.
Das Problem mit der Sicherheit
Obwohl FIDO2 fantastisch klingt, ist es nicht ohne Probleme. Im Laufe der Zeit haben Sicherheitsexperten einige Schwachstellen gefunden, die Angreifern ermöglichen könnten, das System zu umgehen. Diese Schwachstellen können in verschiedenen Angriffen benutzt werden, und hier sind zwei Arten, die identifiziert wurden:
1. Client-Impersonationsangriffe (CI)
Stell dir vor, jemand schleicht sich in ein Konzert, indem er vorgibt, der offizielle Ticket-Checker zu sein. So ähnlich läuft das bei Client-Impersonationsangriffen.
Bei diesen Angriffen können Angreifer einen Authentifikator dazu bringen, zu denken, dass sie der legitime Client sind. Sie können den Authentifikator zurücksetzen und sogar wichtige Zugangsdaten löschen, ohne dass der Nutzer etwas ahnt. Das klingt vielleicht wie aus einem Spionagefilm, passiert aber wirklich.
2. API-Verwirrungsangriffe (AC)
Jetzt reden wir über API-Verwirrungsangriffe. Das ist wie ein Kellner, der deine Bestellung vermasselt, aber statt eines Cheeseburgers dir einen Salat bringt, den du gar nicht bestellt hast. In der Tech-Welt bedeutet das, dass Angreifer Nutzer dazu bringen können zu denken, sie rufen eine sichere API auf, aber stattdessen greifen sie auf eine schädliche zu.
Diese Angreifer können auch dieselbe Methode benutzen, um Nutzerdaten zu leaken oder sogar Zugangsdaten zu löschen, während der Nutzer denkt, er kümmert sich einfach um seine gewohnten Geschäfte.
Wie Angriffe funktionieren und ihre Folgen
Die beiden oben genannten Angriffsarten können auf verschiedene Weisen ausgeführt werden. Am auffälligsten können sie aus der Ferne oder in unmittelbarer Nähe durchgeführt werden. Hier ist ein kurzer Überblick, wie sie funktionieren:
Angriffe in unmittelbarer Nähe
Bei Angriffen in unmittelbarer Nähe muss ein Angreifer in der Nähe des Nutzers sein. Denk daran wie an einen Taschendieb, der versucht, dir in einem überfüllten Raum das Portemonnaie zu stehlen. Mit Werkzeugen wie NFC-Lesegeräten können Angreifer die Verbindung zwischen dem Gerät des Nutzers und dem Authentifikator manipulieren.
Sie können Befehle ausführen, von denen der Nutzer nichts weiss, was zu Löschungen von Zugangsdaten oder unbefugtem Zugang führt.
Remote-Angriffe
Remote-Angriffe sind wie das Taschendiebstahl aus der Ferne. Diese brauchen nicht, dass der Angreifer physisch in der Nähe des Nutzers ist. Stattdessen können sie eine schädliche App oder ein Gerät steuern, das über das Internet oder Bluetooth mit dem Authentifikator verbunden ist.
In beiden Szenarien ist das Hauptproblem, dass die Angriffe ohne Interaktion oder Wissen des Nutzers ablaufen können, was sie besonders heimlich und gefährlich macht.
Die Sicherheitsanfälligkeiten hinter den Angriffen
Hinter diesen Angriffen stehen mehrere Schwachstellen im FIDO2-Design. Hier sind einige wichtige Schwächen:
-
Fehlende Client-Authentifizierung: Der Client muss dem Authentifikator nicht beweisen, wer er ist. Das bedeutet, dass jeder sich verbinden kann.
-
Kein visuelles Feedback: Nutzer erhalten keine visuelle Bestätigung, wenn ein API-Aufruf getätigt wird. Das macht es schwer für sie zu wissen, ob etwas Verdächtiges passiert.
-
Umgehung der Nutzerpräsenz: Wenn Geräte über NFC kommunizieren, kann es manchmal Sicherheitsprüfungen umgehen, die sicherstellen sollen, dass der Nutzer anwesend ist. Das ist wie jemandem Zugang zu einem Club zu gewähren, nur weil er aus der Ferne dem Türsteher zugewunken hat.
-
Schwache Zugangsdatenrichtlinien: Einige vertrauende Parteien erlauben schwächere Schutzmassnahmen für Zugangsdaten, was es Angreifern leichter macht, Systeme auszunutzen.
Angriffe haben echte Konsequenzen
Die Auswirkungen dieser Schwachstellen sind ernst. Angreifer können wertvolle Zugangsdaten löschen, Nutzer verfolgen oder Authentifikatoren unresponsiv machen. Das kann verhindern, dass Nutzer auf ihre Konten oder Dienste zugreifen können, was zu Frustration und einem Verlust des Zugangs führt.
Wenn ein Angreifer beispielsweise es schafft, einen Authentifikator zurückzusetzen, könnte der Nutzer den Zugang zu allen seinen FIDO2-Zugangsdaten verlieren und aus mehreren Konten ausgesperrt werden. Ausserdem kann das Verfolgen von Nutzern zu Datenschutzverletzungen führen, bei denen sensible Informationen über ihr Online-Verhalten offengelegt werden.
Was kann getan werden, um es zu beheben
Gott sei Dank können Massnahmen ergriffen werden, um diese Schwachstellen zu beheben. Hier sind einige vorgeschlagene Lösungen:
-
Client-Authentifizierung: Klienten sollten verpflichtet sein, ihre Identität zu beweisen, bevor sie mit Authentifikatoren kommunizieren können.
-
Visuelles Feedback: Authentifikatoren sollten anzeigen, wenn ein API-Aufruf erfolgt, damit die Nutzer wissen, was gerade passiert.
-
Strengere Autorisierungsprüfungen: Führen Sie robustere Prüfungen für kritische Operationen wie die Löschung von Zugangsdaten oder Werkseinstellungen ein.
-
Dynamische Zugangsdatenrichtlinien: Implementieren Sie Richtlinien, die die Benutzeridentifikatoren und Zugangsdaten häufig ändern, um das Verfolgen über auffindbare Zugangsdaten zu mindern.
-
Ratenbegrenzung: Begrenzen Sie die Anzahl der API-Aufrufe, die in kurzer Zeit getätigt werden können, um Denial-of-Service-Angriffe zu verhindern.
Auswirkungen in der realen Welt bei der Umsetzung von Lösungen
Die Einführung dieser Lösungen kann mit einigen Herausforderungen einhergehen. Nutzer müssen sich möglicherweise an zusätzliche Schritte im Authentifizierungsprozess gewöhnen, was manchmal belastend sein kann.
Aber das Ganze lohnt sich für mehr Sicherheit. Wenn das System strenger wird, können die Nutzer sicherere Online-Erlebnisse geniessen, ohne sich um unbefugten Zugang oder Diebstahl von Zugangsdaten sorgen zu müssen.
Fazit: Die Zukunft der FIDO2-Sicherheit
Die Entwicklung von FIDO2 und seine kontinuierlichen Verbesserungen zeigen das Engagement der Tech-Community für sichere Online-Erlebnisse. Auch wenn es Schwachstellen gibt, ist der proaktive Ansatz zur Identifizierung und Behebung dieser Probleme entscheidend.
Durch die Betonung von Sicherheitsmassnahmen können wir auf eine Zukunft hinarbeiten, in der die Online-Authentifizierung nicht nur passwortlos, sondern auch sicher und zuverlässig ist. Schliesslich will niemand das nächste ahnungslose Opfer von digitalem Taschendiebstahl werden!
Während die Technologie weiterhin voranschreitet, wird es entscheidend sein, potenzielle Risiken im Blick zu behalten, damit die Nutzer die Vorteile von Onlinediensten nutzen können, ohne Sicherheitsbedrohungen zum Opfer zu fallen.
Titel: CTRAPS: CTAP Client Impersonation and API Confusion on FIDO2
Zusammenfassung: FIDO2 is the standard technology for single-factor and second-factor authentication. It is specified in an open standard, including the WebAuthn and CTAP application layer protocols. We focus on CTAP, which allows FIDO2 clients and hardware authenticators to communicate. No prior work has explored the CTAP Authenticator API, a critical protocol-level attack surface. We address this gap by presenting the first security and privacy evaluation of the CTAP Authenticator API. We uncover two classes of protocol-level attacks on CTAP that we call CTRAPS. The client impersonation (CI) attacks exploit the lack of client authentication to tamper with FIDO2 authenticators. They include zero-click attacks capable of deleting FIDO2 credentials, including passkeys, without user interaction. The API confusion (AC) attacks abuse the lack of protocol API enforcements and confound FIDO2 authenticators, clients, and unaware users into calling unwanted CTAP APIs while thinking they are calling legitimate ones. The presented eleven attacks are conducted either in proximity or remotely and are effective regardless of the underlying CTAP transport. We detail the eight vulnerabilities in the CTAP specification, enabling the CTRAPS attacks. Six are novel and include unauthenticated CTAP clients and trackable FIDO2 credentials. We release CTRAPS, an original toolkit, to analyze CTAP and conduct the CTRAPS attacks. We confirm the attacks practicality on a large scale by exploiting six popular authenticators, including a FIPS-certified one from Yubico, Feitian, SoloKeys, and Google, and ten widely used relying parties, such as Microsoft, Apple, GitHub, and Facebook. We present eight practical and backward-compliant countermeasures to fix the attacks and their root causes. We responsibly disclosed our findings to the FIDO alliance and the affected vendors.
Autoren: Marco Casagrande, Daniele Antonioli
Letzte Aktualisierung: Dec 3, 2024
Sprache: English
Quell-URL: https://arxiv.org/abs/2412.02349
Quell-PDF: https://arxiv.org/pdf/2412.02349
Lizenz: https://creativecommons.org/licenses/by/4.0/
Änderungen: Diese Zusammenfassung wurde mit Unterstützung von AI erstellt und kann Ungenauigkeiten enthalten. Genaue Informationen entnehmen Sie bitte den hier verlinkten Originaldokumenten.
Vielen Dank an arxiv für die Nutzung seiner Open-Access-Interoperabilität.