È stato descritto un attacco sorprendentemente efficace che sfrutta una caratteristica delle chiavi FIDO2 per aggirare la loro protezione: ribattezzato PoisonSeed nel recente report pubblicato dalla società di sicurezza Expel, utilizza un meccanismo legittimo di accesso cross-device tramite QR code per ingannare gli utenti e ottenere accesso non autorizzato ai loro account.
Le chiavi FIDO2, lo ricordiamo, sono oggi considerate tra i metodi di autenticazione più sicuri disponibili: utilizzano standard aperti come WebAuthn e CTAP2 per garantire che l’autenticazione sia non solo crittograficamente forte, ma anche resistente agli attacchi di phishing e man-in-the-middle.
È bene precisare, tuttavia, che il metodo di compromissione scoperto non sfrutta alcuna falla nell’implementazione FIDO. Piuttosto, sfrutta una funzionalità legittima per declassare il processo di autenticazione.
L’attacco PoisonSeed è basato su tecniche di social engineering, ovvero sull’inganno psicologico dell’utente.
Non sfrutta vulnerabilità nel protocollo FIDO o nelle chiavi hardware, ma manipola il comportamento dell’utente sfruttando una funzione progettata per migliorare l’usabilità. Ecco una descrizione dettagliata suddivisa in cinque fasi.
Tutto inizia con una classica esca di phishing: l’utente riceve un’e-mail che lo invita a visitare una falsa pagina di login.
Questa pagina replica fedelmente l’interfaccia di noti servizi di sistemi federati.
Quando l’utente inserisce le proprie credenziali (tipicamente e-mail e password), queste vengono immediatamente trasmesse al server dell’attaccante.
Il sito di phishing agisce come un reverse proxy: usa le credenziali rubate per avviare una vera sessione di accesso presso il servizio legittimo.
Tuttavia, la procedura viene bloccata dalla richiesta del secondo fattore di autenticazione, che in questo caso è una chiave FIDO registrata all’account.
A questo punto l’attaccante sfrutta una funzione prevista dallo standard FIDO, ovvero la possibilità di accedere da un dispositivo privo di chiave fisica tramite autenticazione cross-device.
In questo scenario, il server legittimo fornisce un QR code che può essere scansionato da un dispositivo già registrato dell’utente (ad esempio il suo smartphone).
Il phishing kit cattura il QR code generato dalla piattaforma reale e lo mostra all’utente nella finta pagina di login.
L’utente, non sospettando nulla, scansiona il codice con il proprio dispositivo pensando che si tratti di un normale passaggio di verifica.
Con la scansione del QR code, l’utente autentica in realtà la sessione avviata dall’attaccante.
Senza rendersene conto, ha fornito il secondo fattore per un accesso remoto controllato da un attore malevolo.
Come visto questo attacco non sfrutta bug nel protocollo FIDO né debolezze nei dispositivi hardware. Al contrario, utilizza un meccanismo legittimo, progettato per agevolare l’accesso da dispositivi differenti trasformandolo in un punto debole.
L’efficacia di PoisonSeed sta nel fatto che:
È, a tutti gli effetti, un attacco che dimostra come anche i sistemi considerati più avanzati possano essere aggirati se si riesce a manipolare con successo il comportamento dell’utente.
Expel ha, inoltre, affermato di aver osservato anche un altro incidente in cui un autore della minaccia avrebbe registrato la propria chiave FIDO dopo aver compromesso un account tramite un’e-mail di phishing e aver reimpostato la password dell’utente.
Il nome PoisonSeed è stato assegnato dagli analisti di Expel a un gruppo di attori malevoli già attivi in precedenza nel campo del furto di criptovalute.
Tuttavia, con questa nuova tecnica, il gruppo ha spostato la propria attenzione verso obiettivi aziendali e infrastrutture critiche.
I bersagli principali sembrano essere ambienti Enterprise che utilizzano sistemi di autenticazione federata con MFA avanzato.
Sebbene l’attacco sia efficace, esistono diverse misure che possono ridurne l’impatto o prevenirne il successo.
L’attacco PoisonSeed rappresenta una svolta nel panorama della sicurezza informatica: i criminal hacker hanno scoperto come declassare l’autenticazione con chiave FIDO.
Ciò dimostra che anche i sistemi di autenticazione più robusti possono essere resi inefficaci se l’utente viene manipolato nel modo giusto.
La lezione fondamentale è che la sicurezza non è mai solo una questione tecnica, ma è anche, e soprattutto, una questione di esperienza utente, formazione e consapevolezza.
Sebbene l’adozione di chiavi FIDO rappresenti un valido strumento di protezione degli account non può essere comunque considerata una soluzione infallibile.
Le organizzazioni devono pertanto integrare tale soluzione con strategie di mitigazione, monitoraggio e informazione adeguate.
Alcuni Identity Provider (IdP) SPID e di sistemi simili (CIE, Carta Identità Elettronica), per semplificare il login utente da PC desktop, offrono l’accesso direttamente tramite scansione di QR code usando l’app mobile.
Pertanto, una variante dell’attacco PoisonSeed basata sul QR relay piuttosto che su un reverse proxy potrebbe teoricamente colpire questi sistemi di autenticazione. In un ipotetico scenario di attacco la minaccia si potrebbe palesare se l’attaccante riuscisse a:
In pratica poiché il QR code SPID/CIE ha una validità di 120 sec, lo scenario d’attacco dovrebbe concludersi entro questo lasso di tempo.
Ad oggi non sono stati riscontrati attacchi all’identità digitale italiana tramite sistemi di QR relay così concepiti.