2025-11-14T09:58:11.521609

Passwords and FIDO2 Are Meant To Be Secret: A Practical Secure Authentication Channel for Web Browsers

Gautam, Yadav, Smith et al.
Password managers provide significant security benefits to users. However, malicious client-side scripts and browser extensions can steal passwords after the manager has autofilled them into the web page. In this paper, we extend prior work by Stock and Johns, showing how password autofill can be hardened to prevent these local attacks. We implement our design in the Firefox browser and conduct experiments demonstrating that our defense successfully protects passwords from XSS attacks and malicious extensions. We also show that our implementation is compatible with 97% of the Alexa top 1000 websites. Next, we generalize our design, creating a second defense that prevents recently discovered local attacks against the FIDO2 protocols. We implement this second defense into Firefox, demonstrating that it protects the FIDO2 protocol against XSS attacks and malicious extensions. This defense is compatible with all websites, though it does require a small change (2-3 lines) to web servers implementing FIDO2.
academic

Passwörter und FIDO2 sind zum Geheimhalten gedacht: Ein praktischer sicherer Authentifizierungskanal für Webbrowser

Grundlegende Informationen

  • Papier-ID: 2509.02289
  • Titel: Passwords and FIDO2 Are Meant To Be Secret: A Practical Secure Authentication Channel for Web Browsers
  • Autoren: Anuj Gautam (University of Tennessee), Tarun Yadav (Brigham Young University), Garrett Smith (Brigham Young University), Kent Seamons (Brigham Young University), Scott Ruoti (University of Tennessee)
  • Klassifizierung: cs.CR (Kryptographie und Sicherheit)
  • Veröffentlichungskonferenz: CCS '25 (ACM SIGSAC Conference on Computer and Communications Security)
  • Papierlink: https://arxiv.org/abs/2509.02289

Zusammenfassung

Passwortmanager bieten Benutzern erhebliche Sicherheitsvorteile, aber bösartige Client-Skripte und Browser-Erweiterungen können Passwörter stehlen, nachdem der Passwortmanager diese automatisch in Webseiten ausfüllt. Dieses Papier erweitert die vorherige Arbeit von Stock und Johns und zeigt, wie das automatische Ausfüllen von Passwörtern gehärtet werden kann, um diese lokalen Angriffe zu verhindern. Die Autoren implementierten ihr Design im Firefox-Browser und führten Experimente durch, die belegen, dass die Abwehr Passwörter erfolgreich vor XSS-Angriffen und bösartigen Erweiterungen schützt. Die Forschung zeigt auch, dass die Implementierung mit 97% der Top-1000-Websites der Alexa-Liste kompatibel ist. Darüber hinaus verallgemeinerten die Autoren das Design und erstellten einen zweiten Abwehrmechanismus, um kürzlich entdeckte lokale Angriffe auf das FIDO2-Protokoll zu verhindern.

Forschungshintergrund und Motivation

Kernproblem

Passwortmanager weisen eine offensichtliche Sicherheitslücke auf: Passwörter sind anfällig für Diebstahl in dem Zeitraum zwischen dem automatischen Ausfüllen im Browser und der Übertragung zur Website. Dies umfasst Diebstahl durch folgende Bedrohungen:

  1. Web-Tracker: Können Passwortinformationen möglicherweise unbeabsichtigt erfassen
  2. Injektionsangriffe (wie XSS): Bösartige Skripte können Passwörter direkt aus dem DOM auslesen
  3. Bösartige Browser-Erweiterungen: Erweiterungen mit entsprechenden Berechtigungen können auf Webseiteninhalte und Netzwerkanfragen zugreifen
  4. Kompromittierte JavaScript-Bibliotheken: Bösartige Code-Injektionen durch Supply-Chain-Angriffe

Bedeutung des Problems

  • Diese Angriffe sind relativ verbreitet; Forschungen zeigen, dass mindestens 2-3% beliebter Websites Web-Tracker enthalten, die Passwörter preisgeben
  • XSS-Angriffe werden weiterhin von OWASP als eines der Top-10-Sicherheitsrisiken für Webanwendungen aufgeführt
  • Das Problem bösartiger Browser-Erweiterungen nimmt zu; Tausende von Erweiterungen mit ausreichenden Berechtigungen für solche Angriffe existieren im Chrome Web Store

Einschränkungen bestehender Ansätze

Stock und Johns schlugen vor zehn Jahren ein auf Nonces basierendes Passwortschutzprotokoll vor, aber dieses Protokoll war mit modernem Browser-Design nicht kompatibel. Selbst der Firefox-Browser, auf dem es damals funktionierte, entfernte schnell die relevanten Funktionen, was die Übernahme des Protokolls und die Entwicklung nachfolgender Forschungen verhinderte.

Kernbeiträge

  1. Implementierung einer praktischen Nonce-basierten Passwort-Substitutions-API: Modifizierung moderner Browser zur Unterstützung einer funktionierenden Implementierung des Stock-und-Johns-Protokolls
  2. Erweiterung des Bedrohungsmodells: Identifikation und Behebung von Bedrohungen durch bösartige Browser-Erweiterungen, die das ursprüngliche Protokoll nicht berücksichtigte
  3. FIDO2-Sicherheitskanal: Verallgemeinerung des Designs auf das FIDO2-Protokoll zur Abwehr kürzlich entdeckter lokaler Angriffe
  4. Validierung der praktischen Bereitstellung: Implementierung und Bewertung in Firefox mit Nachweis der Kompatibilität mit 97% der wichtigsten Websites

Methodische Details

Aufgabendefinition

Entwerfen eines sicheren Browser-Kanals, der es Passwortmanagern ermöglicht, Passwörter sicher an Websites zu übertragen, ohne dass DOM-Skripte oder Browser-Erweiterungen Zugriff auf die tatsächlichen Passwortinhalte erhalten.

Architektur des Passwortschutzdesigns

Kern-API-Design

Erweiterung der vorhandenen WebRequest-API durch Hinzufügen einer neuen onRequestCredentials-Phase:

onRequestCredentials → onBeforeRequest → onBeforeSendHeaders → onSendHeaders → ...

Arbeitsablauf

  1. Nonce-Injektion: Der Passwortmanager füllt die Webseite mit einer zufälligen Passwort-Nonce statt des echten Passworts aus
  2. Callback-Registrierung: Gleichzeitige Registrierung eines onRequestCredentials-Callback-Handlers
  3. Sicherheitsprüfung: Bei der Seitenübermittlung werden folgende Sicherheitsüberprüfungen durchgeführt:
    • Überprüfung, dass die Webseite nicht in einem iFrame angezeigt wird
    • Verifizierung, dass der Übermittlungskanal eine sichere HTTPS-Verbindung verwendet
    • Bestätigung, dass der Origin dem Passwortmanager-Eintrag entspricht
    • Überprüfung, dass die Nonce nicht in GET-Parametern enthalten ist
    • Überprüfung der Feldnamengültigkeit
  4. Sichere Substitution: Wenn die Überprüfung erfolgreich ist, ersetzt der Browser die Nonce im FormSubmission-Objekt durch das echte Passwort

Design zur Abwehr bösartiger Erweiterungen

Um die Bedrohung durch bösartige Erweiterungen zu bekämpfen, wurden zwei kritische Änderungen vorgenommen:

  1. Verschiebung von onRequestCredentials nach allen Phasen, die auf requestBody zugreifen können
  2. Anzeige des requestBody vor der Substitution für Erweiterungen, wobei das echte Passwort verborgen bleibt

FIDO2-Sicherheitskanal-Design

Bedrohungsmodell

Das FIDO2-Protokoll ist mit zwei Arten lokaler Angriffe konfrontiert:

  1. DOM-Wertmodifikation: Umschreiben von webAuthn-API-Aufrufen durch bösartiges JavaScript
  2. Anfrage-Antwort-Abfangung: Abfangung von HTTP-Anfragen und -Antworten durch Erweiterungen

Schutzmechanismus

  1. Anfrageverarbeitung: Der Server platziert die echte FIDO2-Nutzlast im webauthn_request-Header, die Seitenantwort enthält Scheinfwerte
  2. Header-Abfangung: Der Browser entfernt sensible Header, bevor Erweiterungen darauf zugreifen können
  3. API-Substitution: Echte Werte ersetzen Scheinfwerte innerhalb der webAuthn-API
  4. Antwortschutz: Von der API zurückgegebene Werte werden durch Scheinfwerte ersetzt, echte Werte werden sicher gespeichert
  5. Endgültige Übertragung: Bei der Übermittlung einer Anfrage an den angegebenen Endpunkt werden Scheinfwerte durch die echte FIDO2-Antwort ersetzt

Experimentelle Einrichtung

Testumgebung

  • Browser: Mozilla Firefox 107.0 (Passwortschutz) und 104.0a1 (FIDO2-Schutz)
  • Passwortmanager: Modifizierte Version von Bitwarden
  • Test-Websites: 573 Websites mit Anmeldeseiten aus den Top-1000-Websites der Alexa-Liste

Bewertungsmetriken

  1. Kompatibilität: Prozentsatz der ordnungsgemäß funktionierenden Websites
  2. Sicherheit: Wirksamkeit des Schutzes vor DOM- und Erweiterungsangriffen
  3. Leistungsaufwand: Zunahme der Anfrageverarbeitungszeit

Vergleichsmethoden

  • Unmodifizierter Firefox-Browser als Baseline
  • Verwendung eines Proxy-Servers zur Aufzeichnung aller ausgehenden Netzwerkanfragen zum Vergleich

Experimentelle Ergebnisse

Hauptergebnisse

Kompatibilität des Passwortschutzes

  • 97% Kompatibilität: 554/573 Websites vollständig kompatibel
  • 2% teilweise kompatibel: 11/573 Websites schlagen fehl, da Passwort-Hashes im DOM berechnet werden
  • 1% nicht kompatibel: 8/573 Websites ändern das Passwortformat vor der Übermittlung

Sicherheitsvalidierung

  • Erfolgreiche Abwehr aller getesteten DOM-Angriffe (XSS, bösartige JavaScript-Injektionen)
  • Wirksame Blockierung von Passwortdiebstahl durch bösartige Erweiterungen über die webRequest-API
  • Identifikation und Abwehr von Reflexionsangriffsbedrohungen

Leistungsaufwand

  • Durchschnittliche Anfrageverarbeitungszeit bei erforderlicher Substitution: 4,5222 Sekunden
  • Substitutionsvorgangsdauer: 0,443 Sekunden (10,6% der Gesamtzeit)
  • Keine messbaren Leistungsauswirkungen, wenn keine Substitution erforderlich ist

FIDO2-Schutzergebnisse

  • 100% Website-Kompatibilität (erfordert 2-3 Zeilen Code-Änderungen auf der Serverseite)
  • Erfolgreiche Abwehr aller getesteten DOM- und Erweiterungsangriffe
  • Implementierung vollständiger Sitzungsverantwortlichkeit

Verwandte Arbeiten

Sicherheitsforschung zu Passwortmanagern

Bestehende Forschungen konzentrieren sich hauptsächlich auf die Gesamtsicherheit von Passwortmanagern, einschließlich:

  • Sicherheitsanalyse der Passwortgenerierung, -speicherung und -ausfüllung
  • Identifikation von Schwachstellen im automatischen Ausfüllprozess
  • Sicherheitsprobleme von Passwortmanagern auf mobilen Geräten

Browser-Sicherheitsmechanismen

Verwandte Browser-Sicherheitsforschungen umfassen:

  • Same-Origin-Policy und Content Security Policy
  • Berechtigungsmodell für Browser-Erweiterungen
  • WebAuthn- und FIDO2-Protokollsicherheit

Positionierung des Beitrags dieses Papiers

Dieses Papier bietet erstmals eine funktionsfähige Implementierung des Stock-und-Johns-Protokolls und schließt damit eine zehnjährige Forschungslücke in diesem Bereich, während es gleichzeitig auf den FIDO2-Protokollschutz ausgeweitet wird.

Schlussfolgerungen und Diskussion

Hauptschlussfolgerungen

  1. Praktikabilitätsnachweis: Erfolgreiche Implementierung eines sicheren Passwortübertragungskanals in modernen Browsern
  2. Breite Kompatibilität: Kompatibilität mit der überwiegenden Mehrheit der wichtigsten Websites mit hoher praktischer Bereitstellbarkeit
  3. Sicherheitsverbesserung: Wirksamer Schutz vor verschiedenen lokalen Angriffsbedrohungen
  4. Skalierbarkeit: Das Design ist auf andere Browser-Server-Interaktionen für Sicherheitsschutz übertragbar

Einschränkungen

  1. 3% Website-Inkompatibilität: Hauptsächlich aufgrund von Client-seitiger Passwortverarbeitung
  2. Leistungsaufwand: Substitutionsvorgänge verursachen gewisse Zeitkosten
  3. Browser-Modifikationsanforderungen: Erfordert die Übernahme von API-Änderungen durch Browser-Hersteller
  4. FIDO2-Servermodifikationen: Obwohl minimal, erfordert dennoch serverseitige Zusammenarbeit

Zukünftige Richtungen

  1. Verbesserung der Kompatibilität: Automatische Identifikation und Behandlung relevanter JavaScript durch Programmanalyse
  2. Erweiterung auf manuelle Eingabe: Schutz von Passwörtern, die von Benutzern manuell eingegeben werden
  3. Angriffserkennung: Nutzung des Nonce-Mechanismus zur Erkennung und Meldung von Angriffen
  4. Schutz anderer APIs: Erweiterung des Designs auf andere Browser-APIs wie Zwischenablage und Dateisystem

Tiefgreifende Bewertung

Stärken

  1. Hoher praktischer Wert: Löst ein echtes Sicherheitsproblem, das Millionen von Passwortmanager-Benutzern betrifft
  2. Vollständige technische Implementierung: Bietet eine vollständige Firefox-Implementierung und detaillierte Portierungsrichtlinien
  3. Umfassende Bewertung: Umfasst eine ganzheitliche Bewertung von Sicherheit, Kompatibilität und Leistung
  4. Theoretische Erweiterung: Erfolgreiche Verallgemeinerung des Konzepts auf das FIDO2-Protokoll
  5. Industrielle Rückmeldung: Erhielt positive Rückmeldungen von Browser-Herstellern und Passwortmanager-Teams

Mängel

  1. Bereitstellungsherausforderungen: Erfordert Zusammenarbeit von Browser-Herstellern mit Unsicherheiten bei der Verbreitung
  2. Kompatibilitätsprobleme: 3% der Websites weisen Kompatibilitätsprobleme auf
  3. Einschränkungen des Bedrohungsmodells: Schützt nicht vor Angriffen auf Betriebssystemebene oder TLS-Man-in-the-Middle-Angriffen
  4. Risiko der Benutzerverwirrtheit: Benutzer könnten durch die angezeigten zufälligen Passwörter verwirrt werden

Auswirkungen

  1. Akademischer Beitrag: Reaktivierung einer vor zehn Jahren stagnierenden Forschungsrichtung
  2. Praktischer Wert: Bietet sofortige Sicherheitsverbesserungen für Millionen von Benutzern
  3. Standardisierungspotenzial: Aussicht auf Standardisierung durch W3C zur Förderung breiter Übernahme
  4. Forschungsinspiration: Bietet ein Designparadigma für Sicherheitsschutz anderer Browser-APIs

Anwendungsszenarien

  1. Unternehmensumgebung: Bereitstellung in Unternehmen mit hohen Sicherheitsanforderungen
  2. Hochwertige Konten: Authentifizierung für wichtige Dienste wie Banken und Regierungsbehörden
  3. Sicherheitsbewusste Benutzer: Benutzergruppen mit höheren Anforderungen an Datenschutz und Sicherheit
  4. Forschungsprototyp: Bereitstellung einer Grundlagenplattform für weitere Browser-Sicherheitsforschung

Literaturverzeichnis

Dieses Papier zitiert 47 verwandte Literaturquellen, hauptsächlich einschließlich:

  • Originalarbeit zum Stock-und-Johns-Nonce-Substitutionsprotokoll
  • Verwandte Forschungen zur Sicherheitsanalyse von Passwortmanagern
  • Empirische Forschungen zu Sicherheitsbedrohungen durch Browser-Erweiterungen
  • Literatur zur Sicherheitsanalyse des FIDO2-Protokolls
  • Aktuelle Forschungen zu Web-Trackern und XSS-Angriffen

Gesamtbewertung: Dies ist ein Systemsicherheitspapier mit wichtigem praktischem Wert, das erfolgreich theoretische Designs in ein funktionierendes Prototypsystem umsetzt und dessen Wirksamkeit durch umfassende experimentelle Validierung nachweist. Das Papier löst nicht nur ein wichtiges reales Sicherheitsproblem, sondern eröffnet auch neue Forschungsrichtungen. Obwohl es bei Bereitstellung und Kompatibilität noch Herausforderungen gibt, machen seine technischen Beiträge und praktischen Werte es zu einem wichtigen Fortschritt im Bereich der Browser-Sicherheit.