2FA - Cos'è e perché è importante l'autenticazione a due fattori

L'autenticazione a due fattori è un ulteriore elemento che protegge i nostri accessi online, risultando a volte anche obbligatoria.

Avatar di Andrea Ferrario

a cura di Andrea Ferrario

Editor in Chief

2FA è l’acronimo di “two-factor authentication”, e tutti noi, più o meno consapevolmente, ci abbiamo a che fare, qualcuno più frequentemente di altri. In questo articolo, vogliamo parlare di cosa si tratta, come funziona, quali tipi di 2FA esistono, quanto questo metodo è sicuro, quando attivarlo e quando è possibile farne a meno.

Lo scopo della two-factor authentication proteggere gli utenti dai malintenzionati che vorrebbero rubare i dati di accesso a un sistema o servizio a cui siamo iscritti e, di conseguenza, accedere spacciandosi per noi o vendere i dati a qualche altra persona. Se ad esempio venisse violata la nostra casella di posta elettronica, è possibile che il responsabile dell’attacco recuperi dalla nostra mail altre informazioni, o che usi il nostro indirizzo recuperare ulteriori informazioni sfruttando la nostra identità. E se una situazione di questa si verifica con il nostro conto bancario, potete immaginare le nefaste conseguenze.

Oggi esistono vari servizi che obbligano all’uso della 2FA, in ambito home banking, ad esempio, mentre per altri è ancora a uso “volontario”. È doveroso sottolineare che proteggere l’accesso alla banca con la 2FA non ci mette totalmente al sicuro, dato che se il nostro account di e-mail viene compromesso, l’autore dell’attacco potrebbe spacciarsi per noi e, ad esempio, effettuare il reset degli accessi verso un altro servizio. Potrebbe recuperare informazioni che permettono di operare con i servizi stessi della banca, o i dati della carta di credito; d’altronde, molto spesso le mail vengono utilizzate un po’ per tutto, senza pensare al fatto che, forse, determinati tipi di dati non dovrebbero essere gestiti e trasmessi tramite una semplice mail.

La quantità di attacchi informatici che permettono agli hacker di recuperare informazioni di accesso ai servizi è sempre più alta, negli ultimi due anni i numeri sono aumentati a dismisura, complice anche il COVID che ha favorito molto la diffusione dello smart working, con una quantità immensa di persone costrette a lavorare da casa, su sistemi non protetti e senza la conoscenza informatica di base per evitare problemi. Insomma, è un problema reale che neanche gli utenti più esperti dovrebbero sottovalutare: se consideriamo che vengono colpite grandi aziende con esperti e livelli di sicurezza ben superiori a quelli che potremmo adoperare noi “comuni mortali”, non c’è proprio nulla su cui scherzare. Quindi la 2FA è una barriera di sicurezza importante e obbligatoria, quantomeno per alcuni servizi cruciali.

Quando si parla della two-factor authentication molti pensano, probabilmente, al classico PIN mandato via SMS da inserire in un apposito spazio sul sito web o applicazione. In realtà “two-factor authentication” non significa “autenticazione con SMS”, ma semplicemente “autenticazione a due fattori” e questi “due fattori” possono essere diverse cose. Per essere più precisi, il primo fattore è quasi sempre la password, legata a un nome utente, mentre il secondo fattore può essere scelto tra diverse opportunità.

Che tipo di 2FA esistono

I fattori di autenticazione si suddividono in tre macro gruppi:

1. Qualcosa che si conosce2. Qualcosa che si possiede3. Qualcosa che è parte di sé

All’interno del primo gruppo, cioè qualcosa che si conosce, ricadono identificativi come le password, la risposta a una domanda di sicurezza, un PIN personale o anche un SMS, o meglio, una OTP (one-time password) inclusa nell’SMS o qualsiasi altro tipo di comunicazione ricevuta. Infatti, il numero che arriva tramite messaggio è identificato come una “password a scadenza”, cioè una password che può essere usata una sola volta.

Sebbene possa sembrare logico che gli SMS appartengano al primo gruppo (d’altronde arrivano sul vostro smartphone), in realtà non è così. Infatti, gli SMS possono essere inviati su più dispositivi ad è possibile intercettarli. Inoltre, per riceverli non occorre necessariamente effettuare l’accesso esclusivo a un singolo dispositivo.

Il secondo gruppo, cioè qualcosa che possedete, è legato a un dispositivo fisico in vostro possesso. Quindi può essere una chiavetta USB, un chip in una carta di credito, un dispositivo che mostra dei numeri come i generatori di OTP un tempo consegnati dalle banche ai propri clienti e oggi ormai sostituiti dalle app per smartphone. E, sempre a proposito di app, ci sono gli authenticator, di cui forse il più famoso è quello realizzato da Google: basta associare un account e verrà generato un codice numerico che viene rinnovato con una cadenza regolare.

In quest’ultimo caso, nonostante l’applicazione non sia un oggetto tangibile, il fatto che sia installata su un dispositivo che voi possedete, la fa rientrare comunque in questo gruppo. Se installate l’app su un altro smartphone, non significa che potete usarla per effettuare gli accessi, dato che è soggetta ad autorizzazione e in qualche modo si lega in maniera indissolubile all’hardware dello smartphone; non può essere copiata e incollata su un altro dispositivo e se anche fosse, non funzionerà.

Il terzo gruppo, qualcosa che è parte di sé, potrebbe sembrare il più difficile da comprendere, ma in realtà è il più semplice, dato che stiamo parlando di dati biometrici. Una vostra impronta digitale, il riconoscimento dell’iride o della retina, una scansione del DNA, la voce, il riconoscimento facciale, insomma, parti del vostro corpo.

Questo gruppo in realtà può essere usato anche come primo e unico fattore di autenticazione, e in realtà lo facciamo, dato che molti di noi usano il polpastrello o il riconoscimento del viso per sbloccare il telefono o evitare di digitare ogni volta la password o un pin.

L’abbinamento di due qualsiasi di questi fattori definisce un'autenticazione a due fattori, e aumenta di molto il livello di sicurezza. Va da sé che usare una password semplice e il riconoscimento del volto non è una scelta troppo saggia: se avete qualcuno a fianco che vi prende il telefono, ve lo mette davanti alla faccia e poi inserisce la password poiché è troppo ovvia, allora nemmeno l’autenticazione a due fattori vi aiuterà a stare al sicuro. Certo, è un caso davvero paradossale, ma rende l’idea del perché sia così importante scegliere sempre password complesse, indipendentemente dai metodi di autenticazione aggiuntivi.

Come funziona tecnicamente la 2FA

Lo schema logico di funzionamento della 2FA è identico per qualsiasi approccio si vuole seguire, quindi si richiede prima una password abbinata a un nome utente, se la password è corretta allora si passa al secondo fattore di autenticazione, che sia un pin, una OTP ricevuta tramite SMS, il click sulla notifica di un’app presente nello smartphone o la scansione del proprio volto tramite le fotocamere frontali.

Qualunque fattore di autenticazione è ulteriormente protetto dal fattore tempo e posizione. Cioè, per soddisfare la richiesta, l’operazione, la password o altro, deve essere fornita entro una trentina di secondi, ed è possibile effettuare solo alcuni tentativi, solitamente tre. Se non si fornisce la risposta in tempo o si sbaglia tre volte, il sistema si blocca. Il meccanismo in questione è necessario per evitare gli attacchi con “forza bruta”: senza di esso, un malintenzionato potrebbe creare un sistema che prova a inserire infinite password e infiniti dati biometrici, riuscendo prima o poi a trovare la combinazione corretta. La tecnica è nota appunto come “brute force” e questa limitazione temporale blocca tale tentativo.

Inoltre, spesso c’è anche una protezione da “posizione”, cioè in base al dispositivo e dove si trova. Se si cerca di effettuare l’accesso da una posizione geografica inusuale, che può essere identificata da dati GPS o anche semplicemente da indirizzi IP, che dicono dove, più o meno, si trova il dispositivo che sta cercando di effettuare l’accesso, allora il tentativo viene neutralizzato. Poiché se, per i dati immagazzinati dal sistema, il dispositivo che solitamente fa l’accesso si trova in Italia, e arriva una richiesta di accesso dall’Australia, verrà richiesta un’ulteriore conferma prima che l’accesso venga consentito. Certo, può capitare di trovarsi in viaggio, ma è sempre bene avere un meccanismo di difesa in più, in modo di evitare scenari spiacevoli. Inoltre, quando si parla di “posizione”, si identifica anche il dispositivo e generalmente ogni volta che si effettua l’accesso da un nuovo computer o uno smartphone, il sistema blocca l’accesso e chiede una conferma, al fine di confermare che si tratti effettivamente del legittimo titolare dell’account che ha cambiato dispositivo e non un malintenzionato che cerca di ottenere l’accesso in modo illegittimo.

Chi viaggia o chi usa diversi dispositivi si sarà trovato spesso in questa situazione, che a volte si può verificare anche senza aver attivato un sistema di 2FA.

Se vi chiedete invece come funziona tecnicamente un’applicazione con Google Authenticator, Authy o qualsiasi altra app per la 2FA, il token fisico che vi dava la banca o, ancora, la OTP via SMS, tutto è basato su due fattori principali: una funzione matematica e il tempo.

Quando attivate Google Authenticator sullo smartphone ed effettuate l’accesso o l’inserimento di una nuova app, quello che avviene è un “collegamento” tra il vostro dispositivo e il server online che gestisce e genera i vari codici di accesso, creando degli hash, ovvero lunghi identificativi collegati tra loro tramite una funzione matematica. In sostanza, si genera un codice sfruttando una combinazione tra un messaggio e una chiave segreta. Ogni volta che viene usato un codice (e, quindi, viene trasferita questa informazione), il sistema applica la funzione matematica per ottenere un risultato di verifica, e se questo risultato è corretto, cioè è la “risposta attesa”, allora significa che il codice inviato è valido e permetterà l’accesso. Il processo è simile, nell’approccio, a quello della crittografia con chiave privata, la base è sempre matematica, probabilmente fin troppo complessa da discutere in questa sede, ma l’idea è praticamente la stessa.

Quando abilitare la 2FA e per cosa

Sulla carta, abilitare l’autenticazione multi-fattore garantisce la massima sicurezza, soprattutto se consideriamo la recrudescenza degli attacchi informatici degli ultimi tempi. Proteggere non solo l’home banking, ma anche la posta, i social e qualsiasi altra app che richieda un account è un suggerimento più che sensato. D’altronde, un’app come Google Authenticator è utilizzabile in una vastissima gamma di situazioni.

Ciononostante, è opportuno evidenziare che la 2FA a volte potrebbe arrecare più disagi che benefici. Ad esempio, in caso di smarrimento, guasto irreversibile o furto del vostro smartphone, perderete l’accesso all’app. Il furto potrebbe essere lo scenario peggiore, soprattutto se non proteggete l’accesso al telefono con password e sistema biometrico.

Detto questo, c’è un ulteriore possibile disagio: se attivate l’autenticazione multi-fattore e non potete accedere all’informazione sul secondo fattore di autenticazione, non potrete risolvere il problema installando l’applicazione su un secondo smartphone per fare un login, dato che l’obiettivo è proprio quello di proteggervi, e quindi occorre limitare il campo d’azione. Di conseguenza, è fondamentale che, quando attivate la 2FA, inseriate tutte le informazioni di contatto, senza dimenticare di stampare i codici di backup, laddove disponibili, e nasconderli in un posto sicuro. Fra le altre precauzioni, nemmeno così scontate, c’è anche quella di fare in modo di non perdere le password e gli username di accesso. Esistono, anche nelle ipotesi in cui non avete preso alcuna precauzione, modi di recuperare i vostri accessi, ma le procedure di verifica e autenticazione sono lunghe, letteralmente da mal di testa.

In ogni caso, quanto detto finora non significa che non dobbiate usare la 2FA per paura di perdere tutto e avere problemi di accesso in momenti successivi. Più semplicemente, il consiglio è questo: assicuratevi di eseguire in modo corretto tutte le procedure e scegliete il fattore di autenticazione più adatto a voi. Se vi preoccupa la privacy, scegliete l’invio dell’SMS con una OTP sul telefono e avrete sicurezza e pochi grattacapi.

Occorre inserire un codice ogni volta?

Attivare la 2FA non significa che ogni volta, prima di accedere a un servizio, dovrete spendere 10 minuti a districarvi fra i vari codici. In primo luogo, i processi sono veloci, inoltre, per molti servizi, una volta che avrete fatto l’accesso, l’autenticazione a due fattori vi verrà chiesta solo ogni tanto. Cioè, ad esempio, vi verrà chiesta solo se fate l’accesso da un altro dispositivo oppure ogni tot settimane. Ciò non vale per i servizi più critici, come l’accesso a una banca che ve lo chiede sempre, ma, possibilmente per aprire la mail, dovrete autenticarvi solo ogni tanto, in base alle impostazioni scelte. In sostanza, abilitare la 2FA non vi rovinerà la vita, pertanto vi consigliamo di farlo ogni volta che vi è possibile.

Con la 2FA si possono usare password semplici?

La 2FA non sostituisce e non deve sostituire la creazione di password complesse. È vero che, tecnicamente, il multi fattore serve proprio a bloccare chi è riuscito comunque a ottenere una vostra password, poiché pone una seconda barriera. Tuttavia, se quando uscite di casa chiudete la porta a chiave anche se avete l’allarme, allora create una password complessa e abbinatela a una 2FA, per stare più sicuri.

Inoltre, la 2FA vi offre anche un ulteriore vantaggio, cioè vi dice quando qualcuno sta cercando di entrare nel vostro account. Se vi rubano la password e non avete la 2FA, qualcuno entrerà nel vostro account e non ve ne accorgerete. Se invece avete la 2FA, vi arriverà una notifica, e verrete a conoscenza del tentativo di accesso al vostro account. Tale tentativo sarà fallito, e voi saprete che dovrete cambiare la password poiché è compromessa.