Close

Protocollo OAuth 2.0: esperti scoprono due falle

Vediamo quali sono e quali rischi comportano per gli utenti
Dito che punta schermo digitale per le falle in oauth 2.0
Tempo di lettura: 2 minuti

Indice dei contenuti

di Pierluigi Paganini*

Un gruppo di esperti ha scoperto due falle di sicurezza nel protocollo di autenticazione OAuth 2.0 che potrebbero consentire a un attaccante di rubare impersonare le vittime.

Cos’è il protocollo OAuth

Il protocollo di autenticazione OAuth 2.0 è oggi ampiamente usato da molti siti di social networking. Ogni giorno miliardi di utenti lo usano per accreditarsi a tali piattaforme in maniera più o meno consapevole.

OAuth è un protocollo aperto, sviluppato nel 2006, che definisce i processi di autenticazione per applicazioni desktop e mobile. La sua popolarità è dovuta principalmente alla possibilità di consentire ad applicazioni differenti di interagire scambiando dati in maniera sicura.

OAuth consente ai service provider l’accesso sicuro di terze parti ai dati degli utenti. In pratica consente a un utente di dare l’accesso alle sue informazioni archiviate nei sistemi di un particolare service provider, a un altro servizio, detto anche consumer, senza tuttavia condividere la sua identità.

Nel 2012 è stata resa pubblica la verisone OAuth 2.0 dello standard. Uno standard oggi implementato nella maggior parte dei framework usati dai principali gruppi di sviluppo con l’intento di offrire ulteriori funzionalità di autenticazione e autorizzazione.

oauth, schema passaggi protocollo

Lo studio dei ricercatori e le falle scoperte

Secondo i ricercatori Daniel Fett, Ralf Küsters e Guido Schmitz delll’Università di Treviri, il protocollo è affetto da due vulnerabilità critiche. Queste potrebbero essere sfruttate da malintenzionati per sovvertire il processo di autenticazione Single Sign-On e rubare le credenziali dell’ignaro utente.

I ricercatori hanno descritto in un paper un paio di scenari di attacco. Nel primo, noto come “HTTP 307 Temporary Redirect”, i gestori di identità (IDP) inavvertitamente inoltrano le credenziali utente (ad esempio, nome utente e password) all’attaccante. Nel secondo scenario, invece, l’utente malintenzionato può impersonare la vittima e accedere ai suoi dati.

“Questa grave tipologia di attacco è causata da un difetto logico nel protocollo OAuth 2.0 e dipende dalla presenza di IDP dannosi”, spiega il paper, approfondendo uno scenario di attacco.

Approfondendo lo scenario di attacco “HTTP 307 Temporary Redirect”, i ricercatori hanno spiegato che un utente malintenzionato può sfruttare le falle per catturare le credenziali dell’utente quando questo prova ad accedere al gestore di identità.

“In questo attacco, l’attaccante cattura le credenziali dell’utente quando l’utente accede a un IdP che utilizza il codice di stato di reindirizzamento HTTP sbagliato”.

Per ovviare al problema, gli esperti suggeriscono di consentire solo codici HTTP 303 previsti dal protocollo OAuth, dal momento che “il reindirizzamento 303 definisce in modo univoco di abbandonare il corpo di una richiesta HTTP POST”.

Nel secondo scenario di attacco, soprannominato IdP Mix-Up, l’attaccante confonde il richiedente in merito a quale gestore di identità debba gestire l’avvio del processo di autorizzazione. In questo è possibile rubare un codice di autenticazione o il token di accesso a un servizio e impersonare la vittima. L’attaccante in pratica si frappone tra il richiedente e il gestore di identità (man-in-the-middle) per ottenere il codice di autorizzazione o il token di accesso.

Anche in questo caso i ricercatori forniscono un suggerimento per risolvere il problema, OAuth deve includere l’identità del gestore di identità nel reindirizzamento.


*Pierluigi Paganini

Membro Gruppo di Lavoro Cyber G7 2017 presso Ministero degli Esteri
Membro Gruppo Threat Landscape Stakeholder Group ENISA
Collaboratore SIPAF presso il Mef

TAG