Quando si devono proteggere le informazioni contenute in un qualunque account, il proprio conto corrente online o altri dati riservati non è più sufficiente affidarsi alla coppia nome utente e password.
Username e password altrui sono dati che i criminali informatici possono in qualche modo riuscire a scoprire: si pensi alla semplicità con cui è possibile trovare le password salvate in un PC. Basta che la vittima esegua un malware sul suo sistema che sottrae tali informazioni e le trasmette ai sistemi sotto il controllo degli aggressori oppure è sufficiente che caschi nella trappola tesa dagli autori di un attacco phishing. Risorse protette con i soli nomi utente e password sarebbero così alla mercé di sconosciuti.
Cos’è l’autenticazione a due fattori
L’autenticazione a due fattori permette di abbinare all’utilizzo dei nomi utente e password corretti anche un’informazione aggiuntiva della quale gli aggressori non possono facilmente impossessarsi.
I servizi protetti con l’autenticazione a due fattori o 2FA chiedono l’uso due strumenti tra “una cosa che si conosce” (una password o un PIN), “una cosa che si possiede” (uno smartphone, un’apposita applicazione o un oggetto fisico come un token) e “una cosa che contraddistingue univocamente la nostra persona” come l’impronta digitale, l’iride, il timbro vocale e così via (biometria).
Con l’autenticazione a due fattori di solito “una cosa che si conosce” come la password di un account utente viene abbinata con “una cosa che si possiede” o con l’utilizzo di un parametro biometrico.
Si pensi a un ipotetico aggressore: anche se egli conoscesse nome utente e password corretti di un’altra persona per accedere a un determinato servizio questi non potrebbe superare il controllo sul secondo fattore non essendo in possesso, ad esempio, né dello smartphone dell’utente né, evidentemente, dell’impronta digitale o di altre caratteristiche biometriche della vittima.
Il fattore di possesso viene spesso verificato inviando un SMS anche se tra tutte le soluzioni è una delle meno sicure: si pensi agli attacchi SIM swap in continua crescita: l’aggressore che già conosce nome utente e password corretti può “intercettare” l’SMS usato per l’autenticazione a due fattori e superare la verifica aggiuntiva.
Già qualche anno fa parlavamo del sistema per l’autenticazione a due fattori più sicuro.
Oltre all’utilizzo dell’impronta digitale, come secondo fattore si può installare un’app per l’autenticazione a due fattori oppure servirsi di una chiavetta FIDO2 o token USB/NFC.
Sono sempre di più i servizi che supportano l’autenticazione a due fattori: anzi, alcuni di essi ne richiedono obbligatoriamente l’attivazione.
Google ha reso obbligatoria la sua verifica in due passaggi dal 9 novembre 2021 su molti account ed è oggi fondamentale usare 2FA per l’online banking e in generale per proteggere tutti gli account che ospitano dati riservati e informazioni sensibili.
Alcune aziende permettono di installare particolari app (nel caso di Google il meccanismo è integrato tra i servizi di Android) che consentono di fruire di una forma semplificata di autenticazione a due fattori: dopo aver effettuato il login da un dispositivo sconosciuto al servizio (mai usato in precedenza) con le credenziali corrette, viene chiesto di confermare un numero che appare sullo smartphone oppure di autorizzare l’accesso dal dispositivo mobile.
Molto comune è l’utilizzo della OTP (one-time-password) come secondo fattore: per accedere al servizio è necessario indicare, oltre a nome utente e password corretti, anche un codice “una tantum” che appare nell’app installata su smartphone. Tale codice ha una validità limitata nel tempo (tipicamente 60 secondi): bisogna quindi essere veloci a digitarlo.
Spesso il fornitore di un servizio online offre all’utente la facoltà di scegliere quale meccanismo per l’autenticazione a due fattori egli preferisce e intende usare.
Ove possibile è ragionevole attivare più di un secondo fattore in modo che se si avessero problemi con un meccanismo di autenticazione a due fattori se ne può usare uno alternativo precedentemente configurato.
Si prenda ad esempio la seguente pagina di configurazione di un account Google. Come si vede nell’esempio si è configurato l’utilizzo di un token, del meccanismo che prevede la conferma dell’accesso e di un numero mostrati sullo smartphone (“Messaggi di Google“), dell’autorizzazione mediante SMS/chiamata vocale e infine di un’app (in questo caso Google Authenticator) che genera codici OTP.
Google, infine, non richiede il secondo fattore sui dispositivi attendibili ovvero quelli che tipicamente si usano per accedere all’account.
Autenticazione a due fattori con i codici OTP
Gli OTP sono codici monouso che vengono generati usando apposite app di autenticazione installate su smartphone ma anche in Windows e macOS. Ecco le principali:
– App di autenticazione per Android: Google Authenticator, Microsoft Authenticator, Cisco Duo Mobile, FreeOTP, andOTP, Twilio Authy.
– App di autenticazione per iOS: OTP auth, Step Two, Twilio Authy, Google Authenticator, Microsoft Authenticator, Cisco Duo Mobile, FreeOTP, strumento di autenticazione integrato in iOS.
– App di autenticazione per Windows: WinAuth, Twilio Authy.
– App di autenticazione per macOS: Step Two, Twilio Authy, OTP Auth (solo a pagamento).
Sicurezza del dispositivo usato per l’autenticazione a due fattori e backup dei dati
Installare un’app per l’autenticazione a due fattori e farne sempre uso per accedere ai propri account è certamente buona cosa ma è essenziale l’aspetto della sicurezza.
È essenziale che il dispositivo mobile usato come secondo fattore sia protetto con un PIN o una password complessi: diversamente un aggressore che venisse in possesso dello smartphone potrebbe accedere all’app di autenticazione che genera i codici OTP corretti.
Soprattutto se si utilizzassero app che permettono di esportare facilmente i token di autenticazione (Google Authenticator, andOTP, OTP auth e WinAuth) è importante bloccare l’accesso a queste applicazioni ad esempio con il controllo biometrico.
Dopo aver attivato l’autenticazione a due fattori, l’app che genera gli OTP crea una chiave segreta. A partire da quest’ultima vengono generati i vari codici monouso.
Per non trovarsi in difficoltà nel caso in cui si perdesse lo smartphone, è una buona idea esportare il codice QR che permette di importare altrove i token usati per la generazione dei codici OTP e salvarlo in un luogo sicuro (ad esempio in un volume creato con VeraCrypt oppure in un password manager).
In alternativa, ove previsto, è possibile esportare la chiave segreta e custodirla in un password manager sicuro, su un altro dispositivo sotto il proprio esclusivo controllo.
Alcune app per l’autenticazione a due fattori permettono di effettuare il backup dei token sul cloud e di sincronizzarli con gli altri dispositivi.
Se si fosse “allergici” a una soluzione del genere e si preferisse non scomodare server remoti per la memorizzazioni dei token, si possono installare le applicazioni su più dispositivi: esportando la chiave segreta o il codice QR quindi reimportando queste informazioni sull’altro dispositivo verrà generato lo stesso OTP.
Cosa succede se si perde lo smartphone con l’app di autenticazione
Se si fosse effettuato il backup dei token o l’app di autenticazione fosse installata su un altro dispositivo in proprio possesso, nessun problema. Nel caso in cui non si potesse più mettere le mani sullo smartphone perso è possibile disporne la cancellazione del contenuto da remoto usando servizi come Trova il mio dispositivo di Google oppure Dov’è di Apple.
Se comunque si fosse ancora “loggati” su un altro dispositivo con l’account utente per la cui gestione si usa lo smartphone perso come secondo fattore, allora si può accedere alle impostazioni e provare ad assegnare il ruolo di secondo fattore a un altro dispositivo.
Alcuni servizi mostrano anche la chiave segreta o il codice QR dell’autenticatore nelle impostazioni. In questo caso basta inserire la chiave segreta o scansionare il codice QR nell’app di autenticazione installata sul nuovo dispositivo.
Se non si fosse “loggati” e non si potesse più usare lo smartphone con l’app di autenticazione, ormai perduto, si può tentare il ripristino dell’accesso all’account.
Google, Microsoft, Facebook e così via consentono di recuperare l’accesso usando meccanismi di autenticazione alternativi: anziché utilizzare l’autenticazione a due fattori si può fare clic su Prova un altro metodo (o una voce simile) al momento del login.
Se la perdita dello smartphone con l’app di autenticazione bloccasse l’accesso all’account allora ci si dovrà necessariamente rivolgere al gestore del servizio che chiederà, attraverso una serie di passaggi, di dimostrare di essere il legittimo proprietario dell’account.