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
Le Password e FIDO2 Devono Rimanere Segrete: Un Canale di Autenticazione Sicuro Pratico per i Browser Web
Titolo: Le Password e FIDO2 Devono Rimanere Segrete: Un Canale di Autenticazione Sicuro Pratico per i Browser Web
Autori: 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)
Classificazione: cs.CR (Crittografia e Sicurezza)
Conferenza di Pubblicazione: CCS '25 (ACM SIGSAC Conference on Computer and Communications Security)
I gestori di password forniscono vantaggi di sicurezza significativi agli utenti, ma script client malevoli e estensioni del browser possono rubare le password dopo che il gestore le ha compilate automaticamente nelle pagine web. Questo articolo estende il lavoro precedente di Stock e Johns, dimostrando come rafforzare la compilazione automatica delle password per prevenire questi attacchi locali. Gli autori hanno implementato il loro design nel browser Firefox e condotto esperimenti che dimostrano che la difesa protegge con successo le password dagli attacchi XSS e dalle estensioni malevole. La ricerca mostra inoltre che l'implementazione è compatibile con il 97% dei primi 1000 siti web di Alexa. Inoltre, gli autori generalizzano il design, creando un secondo meccanismo di difesa per prevenire gli attacchi locali recentemente scoperti contro il protocollo FIDO2.
I gestori di password presentano una vulnerabilità di sicurezza evidente: le password sono vulnerabili al furto durante il periodo tra la compilazione automatica nel browser e la trasmissione al sito web. Ciò include il furto dalle seguenti minacce:
Tracker Web: Potrebbero raccogliere involontariamente informazioni sulle password
Attacchi di Iniezione (come XSS): Script malevoli possono leggere direttamente le password dal DOM
Estensioni del Browser Malevole: Le estensioni con permessi appropriati possono accedere ai contenuti delle pagine web e alle richieste di rete
Librerie JavaScript Compromesse: Iniezione di codice malevolo derivante da attacchi alla catena di approvvigionamento
Questi attacchi sono relativamente diffusi; la ricerca mostra che almeno il 2-3% dei siti web popolari contiene tracker web che perdono password
Gli attacchi XSS continuano ad essere elencati da OWASP tra i 10 principali rischi di sicurezza delle applicazioni web
Il problema delle estensioni del browser malevole è in crescita, con migliaia di estensioni nel Chrome Web Store che dispongono di permessi sufficienti per condurre tali attacchi
Stock e Johns hanno proposto un protocollo di protezione delle password basato sulla sostituzione di nonce un decennio fa, ma il protocollo non era compatibile con i design moderni dei browser. Anche il browser Firefox, dove il protocollo funzionava all'epoca, ha rapidamente rimosso la funzionalità correlata, impedendo l'adozione del protocollo e lo sviluppo della ricerca successiva.
Implementazione di un'API pratica di sostituzione delle password basata su nonce: Modifica dei browser moderni per supportare un'implementazione funzionante del protocollo di Stock e Johns
Estensione del Modello di Minaccia: Identificazione e affrontamento della minaccia delle estensioni del browser malevole non considerate dal protocollo originale
Canale Sicuro FIDO2: Generalizzazione del design al protocollo FIDO2 per proteggere gli attacchi locali recentemente scoperti
Verifica della Distribuzione Pratica: Implementazione e valutazione in Firefox, dimostrando la compatibilità con il 97% dei siti web principali
Progettare un canale browser sicuro che consenta ai gestori di password di trasmettere in modo sicuro le password ai siti web, impedendo agli script DOM o alle estensioni del browser di accedere al contenuto della password effettiva.
Elaborazione delle Richieste: Il server posiziona il payload FIDO2 effettivo nell'intestazione webauthn_request, la risposta della pagina contiene valori falsi
Intercettazione dell'Intestazione: Il browser rimuove le intestazioni sensibili prima che le estensioni possano accedervi
Sostituzione dell'API: Sostituzione dei valori falsi con valori effettivi all'interno dell'API webAuthn
Protezione della Risposta: I valori di ritorno dell'API vengono sostituiti con valori falsi, con i valori effettivi archiviati in modo sicuro
Trasmissione Finale: Quando si invia una richiesta all'endpoint specificato, i valori falsi vengono sostituiti con la risposta FIDO2 effettiva
Questo articolo fornisce per la prima volta un'implementazione funzionante del protocollo di Stock e Johns, colmando un vuoto di ricerca di dieci anni in questo campo, ed estende la protezione al protocollo FIDO2.
Questo articolo cita 47 riferimenti correlati, principalmente includenti:
Articolo del protocollo di sostituzione di nonce originale di Stock e Johns
Ricerca correlata sull'analisi della sicurezza dei gestori di password
Ricerca empirica sulle minacce di sicurezza delle estensioni del browser
Letteratura sull'analisi della sicurezza del protocollo FIDO2
Ricerca sullo stato attuale dei tracker web e degli attacchi XSS
Valutazione Complessiva: Questo è un articolo di sicurezza dei sistemi con importante valore pratico che ha trasformato con successo il design teorico in un sistema prototipo funzionante, verificandone l'efficacia attraverso esperimenti completi. L'articolo non solo risolve un importante problema di sicurezza nel mondo reale, ma apre anche nuove direzioni per la ricerca futura. Nonostante le sfide persistenti nella distribuzione e nella compatibilità, il suo contributo tecnico e il suo valore pratico lo rendono un progresso importante nel campo della sicurezza dei browser.