Che cos’è l’autenticazione a due fattori e perché viene utilizzata?
L’autenticazione a due fattori (2FA), a volte indicata come verifica in due passaggi o autenticazione a due fattori, è un processo di sicurezza in cui gli utenti forniscono due diversi fattori di autenticazione per verificare se stessi.
2FA è implementato per proteggere meglio sia le credenziali di un utente che le risorse a cui l’utente può accedere. L’autenticazione a due fattori fornisce un livello di sicurezza superiore rispetto ai metodi di autenticazione che dipendono dall’autenticazione a fattore singolo (SFA), in cui l’utente fornisce un solo fattore, in genere una password o un codice di accesso. I metodi di autenticazione a due fattori si basano su un utente che fornisce una password come primo fattore e un secondo fattore diverso, di solito un token di sicurezza o un fattore biometrico, come un’impronta digitale o una scansione facciale.
L’autenticazione a due fattori aggiunge un ulteriore livello di sicurezza al processo di autenticazione rendendo più difficile per gli aggressori accedere ai dispositivi di una persona o agli account online perché, anche se la password della vittima viene violata, una password da sola non è sufficiente per passare il controllo di autenticazione.
L’autenticazione a due fattori è stata a lungo utilizzata per controllare l’accesso a sistemi e dati sensibili. I fornitori di servizi online utilizzano sempre più 2FA per proteggere le credenziali dei propri utenti dall’utilizzo da parte di hacker che hanno rubato un database di password o utilizzato campagne di phishing per ottenere le password degli utenti.
Questo articolo fa parte di
Che cos’è la gestione delle identità e degli accessi? Guida a I
- Che comprende anche:
- Come costruire un’architettura effective efficace
- 4 best practice essenziali per la gestione delle identità e degli accessi
- 5 trends trends shaping the future of security
Quali sono i fattori di autenticazione?
Esistono diversi modi in cui qualcuno può essere autenticato utilizzando più di un metodo di autenticazione. Attualmente, la maggior parte dei metodi di autenticazione si basa su fattori di conoscenza, come una password tradizionale, mentre i metodi di autenticazione a due fattori aggiungono un fattore di possesso o un fattore di inherence.
I fattori di autenticazione, elencati in ordine approssimativo di adozione per l’elaborazione, includono quanto segue:
- Un fattore di conoscenza è qualcosa che l’utente conosce, come una password, un numero di identificazione personale (PIN) o qualche altro tipo di segreto condiviso.
- Un fattore di possesso è qualcosa che l’utente ha, come una carta d’identità, un token di sicurezza, un cellulare, un dispositivo mobile o un’app per smartphone, per approvare le richieste di autenticazione.
- Un fattore biometrico, noto anche come fattore di inherence, è qualcosa di inerente al sé fisico dell’utente. Questi possono essere attributi personali mappati da caratteristiche fisiche, come le impronte digitali autenticate tramite un lettore di impronte digitali. Altri fattori di inerenza comunemente usati includono il riconoscimento facciale e vocale o la biometria comportamentale, come la dinamica dei tasti, l’andatura o i modelli vocali.
- Un fattore di posizione è solitamente indicato dalla posizione da cui viene effettuato un tentativo di autenticazione. Ciò può essere applicato limitando i tentativi di autenticazione a dispositivi specifici in una particolare posizione o tracciando l’origine geografica di un tentativo di autenticazione in base all’indirizzo del protocollo Internet di origine o altre informazioni di geolocalizzazione, come i dati del sistema di posizionamento globale (GPS), derivati dal telefono cellulare dell’utente o da un altro dispositivo.
- Un fattore tempo limita l’autenticazione dell’utente a una finestra temporale specifica in cui è consentito l’accesso e limita l’accesso al sistema al di fuori di tale finestra.
La stragrande maggioranza dei metodi di autenticazione a due fattori si basa sui primi tre fattori di autenticazione, sebbene i sistemi che richiedono maggiore sicurezza possano utilizzarli per implementare l’autenticazione a più fattori (MFA), che può contare su due o più credenziali indipendenti per un’autenticazione più sicura.
Come funziona l’autenticazione a due fattori?
L’abilitazione dell’autenticazione a due fattori varia a seconda dell’applicazione o del fornitore specifico. Tuttavia, i processi di autenticazione a due fattori coinvolgono lo stesso processo generale e multistep:
- All’utente viene richiesto di accedere dall’applicazione o dal sito web.
- L’utente inserisce ciò che sa-di solito, nome utente e password. Quindi, il server del sito trova una corrispondenza e riconosce l’utente.
- Per i processi che non richiedono password, il sito web genera una chiave di sicurezza univoca per l’utente. Lo strumento di autenticazione elabora la chiave e il server del sito la convalida.
- Il sito richiede quindi all’utente di avviare il secondo passaggio di accesso. Anche se questo passaggio può assumere una serie di forme, l’utente deve dimostrare di avere qualcosa che solo loro avrebbero, come la biometria, un token di sicurezza, una carta d’identità, uno smartphone o altro dispositivo mobile. Questo è il fattore di inherence o possession.
- Quindi, l’utente potrebbe dover inserire un codice monouso generato durante il passaggio quattro.
- Dopo aver fornito entrambi i fattori, l’utente viene autenticato e concesso l’accesso all’applicazione o al sito web.
Elementi di autenticazione a due fattori
L’autenticazione a due fattori è una forma di MFA. Tecnicamente, è in uso ogni volta che sono necessari due fattori di autenticazione per accedere a un sistema o servizio. Tuttavia, l’utilizzo di due fattori della stessa categoria non costituisce 2FA. Ad esempio, richiedere una password e un segreto condiviso è ancora considerato SFA in quanto entrambi appartengono al tipo di fattore di autenticazione knowledge.
Per quanto riguarda i servizi SFA, i nomi utente e le password non sono i più sicuri. Un problema con l’autenticazione basata su password è che richiede conoscenza e diligenza per creare e ricordare password complesse. Le password richiedono protezione da molte minacce interne, come le note adesive noncuranza memorizzati con credenziali di accesso, vecchi dischi rigidi e exploit di ingegneria sociale. Le password sono anche preda di minacce esterne, come gli hacker che utilizzano attacchi a forza bruta, dizionario o rainbow table.
Dato abbastanza tempo e risorse, un utente malintenzionato può solitamente violare i sistemi di sicurezza basati su password e rubare dati aziendali. Le password sono rimaste la forma più comune di SFA a causa del loro basso costo, facilità di implementazione e familiarità.
Le domande a risposta multipla possono fornire maggiore sicurezza, a seconda di come vengono implementate, e i metodi di verifica biometrica standalone possono anche fornire un metodo più sicuro di SFA.
Tipi di prodotti di autenticazione a due fattori
Esistono molti dispositivi e servizi diversi per l’implementazione di 2FA — dai token alle carte di identificazione a radiofrequenza (RFID) alle app per smartphone.
I prodotti di autenticazione a due fattori possono essere suddivisi in due categorie:
- token che vengono dati agli utenti da utilizzare durante l’accesso; e
- infrastruttura o software che riconosce e autentica l’accesso per gli utenti che utilizzano correttamente i loro token.
I token di autenticazione possono essere dispositivi fisici, come portachiavi o smart card, oppure possono esistere nel software come app mobili o desktop che generano codici PIN per l’autenticazione. Questi codici di autenticazione, noti anche come one-Time passwords (OTP), sono generalmente generati da un server e possono essere riconosciuti come autentici da un dispositivo di autenticazione o da un’app. Il codice di autenticazione è una breve sequenza collegata a un particolare dispositivo, utente o account e può essere utilizzato una sola volta come parte di un processo di autenticazione.
Le organizzazioni devono distribuire un sistema per accettare, elaborare e consentire o negare l’accesso agli utenti che si autenticano con i loro token. Questo può essere distribuito sotto forma di software server o un server hardware dedicato, nonché fornito come servizio da un fornitore di terze parti.
Un aspetto importante di 2FA è garantire all’utente autenticato l’accesso a tutte le risorse per cui l’utente è approvato e solo a quelle risorse. Di conseguenza, una funzione chiave di 2FA collega il sistema di autenticazione con i dati di autenticazione di un’organizzazione. Microsoft fornisce alcune delle infrastrutture necessarie per le organizzazioni per supportare 2FA in Windows 10 attraverso Windows Hello, che può operare con gli account Microsoft, così come autenticare gli utenti tramite Microsoft Active Directory, Azure AD o Fast IDentity Online (FIDO).
Come funzionano i token hardware 2FA
I token hardware per 2FA sono disponibili per supportare diversi approcci all’autenticazione. Un popolare token hardware è YubiKey, un piccolo dispositivo USB (Universal Serial Bus) che supporta OTP, crittografia e autenticazione a chiave pubblica e il protocollo Universal 2nd Factor sviluppato dalla FIDO Alliance. I token YubiKey sono venduti da Yubico Inc., con sede a Palo Alto, California.
Quando gli utenti con YubiKey accedono a un servizio online che supporta OTP – come Gmail, GitHub o WordPress-inseriscono il loro YubiKey nella porta USB del loro dispositivo, inseriscono la loro password, fanno clic nel campo YubiKey e toccano il pulsante YubiKey. YubiKey genera un OTP e lo inserisce nel campo.
L’OTP è una password monouso di 44 caratteri; i primi 12 caratteri sono un ID univoco che rappresenta la chiave di sicurezza registrata con l’account. I restanti 32 caratteri contengono informazioni crittografate utilizzando una chiave nota solo al dispositivo e ai server di Yubico, stabilita durante la registrazione iniziale dell’account.
L’OTP viene inviato dal servizio online a Yubico per il controllo dell’autenticazione. Una volta convalidato l’OTP, il server di autenticazione Yubico invia un messaggio che conferma che questo è il token giusto per questo utente. 2FA è completo. L’utente ha fornito due fattori di autenticazione: la password è il fattore di conoscenza e il YubiKey è il fattore di possesso.
Autenticazione a due fattori per dispositivi mobili
Gli smartphone offrono una varietà di funzionalità 2FA, consentendo alle aziende di utilizzare ciò che funziona meglio per loro. Alcuni dispositivi possono riconoscere le impronte digitali, utilizzare la fotocamera integrata per il riconoscimento facciale o la scansione dell’iride e utilizzare il microfono per il riconoscimento vocale. Gli smartphone dotati di GPS possono verificare la posizione come fattore aggiuntivo. Voice o Short Message Service (SMS) può anche essere utilizzato come canale per l’autenticazione out-of-band.
Un numero di telefono attendibile può essere utilizzato per ricevere i codici di verifica tramite SMS o telefonata automatica. Un utente deve verificare almeno un numero di telefono attendibile per iscriversi a mobile 2FA.
Apple iOS, Google Android e Windows 10 hanno tutte app che supportano 2FA, consentendo al telefono stesso di fungere da dispositivo fisico per soddisfare il fattore di possesso. Duo Sicurezza, con sede a Ann Arbor, Mich., e acquistato da Cisco nel 2018 per billion 2.35 miliardi, ha una piattaforma che consente ai clienti di utilizzare i loro dispositivi di fiducia per 2FA. La piattaforma di Duo stabilisce innanzitutto che un utente è attendibile prima di verificare che il dispositivo mobile possa essere considerato attendibile come fattore di autenticazione.
Le app di autenticazione sostituiscono la necessità di ottenere un codice di verifica tramite testo, chiamata vocale o e-mail. Ad esempio, per accedere a un sito Web o a un servizio basato sul Web che supporta Google Authenticator, gli utenti digitano il nome utente e la password, un fattore di conoscenza. Agli utenti viene quindi richiesto di inserire un numero di sei cifre. Invece di dover attendere alcuni secondi per ricevere un messaggio di testo, un autenticatore genera il numero per loro. Questi numeri cambiano ogni 30 secondi e sono diversi per ogni login. Inserendo il numero corretto, gli utenti completano il processo di verifica e dimostrano il possesso del dispositivo corretto-un fattore di proprietà.
Questi e altri prodotti 2FA offrono informazioni sui requisiti minimi di sistema necessari per implementare 2FA.
Notifiche push per 2FA
Una notifica push è un’autenticazione senza password che verifica un utente inviando una notifica direttamente a un’app sicura sul dispositivo dell’utente, avvisando l’utente che è in corso un tentativo di autenticazione. L’utente può visualizzare i dettagli del tentativo di autenticazione e approvare o negare l’accesso, in genere, con un solo tocco. Se l’utente approva la richiesta di autenticazione, il server riceve tale richiesta e accede all’app Web.
Le notifiche push autenticano l’utente confermando che il dispositivo registrato con il sistema di autenticazione-di solito un dispositivo mobile-è in possesso dell’utente. Se un utente malintenzionato compromette il dispositivo, anche le notifiche push vengono compromesse. Le notifiche push eliminano minacce come attacchi man-in-the-middle, accessi non autorizzati e attacchi di social engineering.
Mentre le notifiche push sono più sicure di altre forme di metodi di autenticazione, ci sono ancora rischi per la sicurezza. Ad esempio, gli utenti potrebbero approvare accidentalmente una richiesta di autenticazione fraudolenta perché sono abituati a toccare Approva quando ricevono notifiche push.
L’autenticazione a due fattori è sicura?
Mentre l’autenticazione a due fattori migliora la sicurezza, gli schemi 2FA sono sicuri solo quanto il loro componente più debole. Ad esempio, i token hardware dipendono dalla sicurezza dell’emittente o del produttore. Uno dei casi più di alto profilo di un sistema compromesso a due fattori si è verificato in 2011 quando la società di sicurezza RSA Security ha riferito che i suoi token di autenticazione SecurID erano stati violati.
Il processo di recupero dell’account può anche essere sovvertito quando viene utilizzato per sconfiggere l’autenticazione a due fattori perché spesso reimposta la password corrente di un utente e invia una password temporanea per consentire all’utente di accedere di nuovo, bypassando il processo 2FA. Gli account Gmail aziendali dell’amministratore delegato di Cloudflare sono stati violati in questo modo.
Sebbene 2FA basato su SMS sia economico, facile da implementare e considerato facile da usare, è vulnerabile a numerosi attacchi. Il National Institute of Standards and Technology (NIST) ha scoraggiato l’uso di SMS nei servizi 2FA nella sua pubblicazione speciale 800-63-3: Linee guida sull’identità digitale. Il NIST ha concluso che le OTP inviate via SMS sono troppo vulnerabili a causa di attacchi di portabilità del numero di cellulare, attacchi contro la rete di telefonia mobile e malware che possono essere utilizzati per intercettare o reindirizzare i messaggi di testo.
Futuro dell’autenticazione
Gli ambienti che richiedono una maggiore sicurezza potrebbero essere interessati all’autenticazione a tre fattori, che in genere comporta il possesso di un token fisico e di una password utilizzati in combinazione con dati biometrici, come scansioni di impronte digitali o impronte vocali. Fattori come la geolocalizzazione, il tipo di dispositivo e l’ora del giorno vengono utilizzati anche per determinare se un utente deve essere autenticato o bloccato. Inoltre, gli identificatori biometrici comportamentali, come la lunghezza dei tasti di un utente, la velocità di digitazione e i movimenti del mouse, possono anche essere monitorati discretamente in tempo reale per fornire un’autenticazione continua invece di un singolo controllo di autenticazione una tantum durante l’accesso.
Affidarsi alle password come metodo principale di autenticazione, sebbene comune, spesso non offre più la sicurezza o l’esperienza utente richiesta dalle aziende e dai loro utenti. E, anche se gli strumenti di sicurezza legacy, come un gestore di password e MFA, tentano di affrontare i problemi di nomi utente e password, dipendono da un’architettura essenzialmente obsoleta: il database delle password.
Di conseguenza, molte organizzazioni si rivolgono all’autenticazione senza password. L’utilizzo di metodi come biometria e protocolli sicuri consente agli utenti di autenticarsi in modo sicuro nelle proprie applicazioni senza dover inserire password. Nel mondo degli affari, ciò significa che i dipendenti possono accedere al proprio lavoro senza dover inserire password e mantiene comunque il controllo totale su ogni accesso. L’uso della blockchain, ad esempio, attraverso l’identità decentralizzata o l’identità auto-sovrana, sta anche guadagnando attenzione come alternativa ai metodi di autenticazione tradizionali.