L'autenticazione a due fattori (2FA) è un modo per verificare l'identità di un utente chiedendo due elementi di prova, come la password di un account online (il primo fattore) e un codice di accesso monouso generato da un'app di autenticazione (il secondo fattore).
La maggior parte delle persone ha familiarità con i sistemi di sicurezza 2FA basati su SMS. In questa versione, un'app invia un codice numerico al cellulare dell'utente al momento dell'accesso. L'utente deve inserire sia la password che il codice per procedere. Inserire solo l'uno o l'altro non è sufficiente per l'autenticazione.
La 2FA è la forma più comune di autenticazione a più fattori (MFA), che si riferisce a qualsiasi metodo di autenticazione in cui gli utenti devono fornire più di un fattore per dimostrare la propria identità.
Sebbene la 2FA sia spesso associata ai sistemi informatici, può proteggere anche asset e luoghi fisici. Ad esempio, un edificio con accesso riservato potrebbe richiedere alle persone di presentare un badge identificativo e di superare una scansione delle impronte digitali per entrare.
Secondo il report Cost of a Data Breach di IBM, le credenziali compromesse sono la causa più comune di violazione dei dati. Per gli attori delle minacce è relativamente facile rubare password tramite phishing, spyware o attacchi brute-force.
L'autenticazione a due fattori aiuta a rafforzare la sicurezza dell'account richiedendo un secondo fattore. Non solo gli hacker hanno bisogno di rubare due credenziali per entrare in un sistema, ma il secondo fattore è spesso molto difficile da violare. Spesso il secondo fattore include impronte digitali e dati biometrici, chiavi di sicurezza fisiche e codici di accesso temporanei.
I fattori di autenticazione sono le credenziali fornite dagli utenti per verificare la propria identità. I sistemi di autenticazione a due fattori utilizzano più tipi di fattori di autenticazione e i veri sistemi 2FA utilizzano due fattori di due tipi diversi.
L'utilizzo di due diversi tipi di fattori è considerato più sicuro rispetto all'utilizzo di due fattori dello stesso tipo perché gli hacker devono utilizzare metodi diversi per ottenere ciascun fattore.
Ad esempio, gli hacker possono rubare la password di un utente installando uno spyware nel suo computer. Ma lo spyware non sarebbe in grado di rilevare i codici monouso inviati sullo smartphone dell'utente. Gli hacker devono trovare un altro modo per intercettare quei messaggi.
I tipi di fattori di autenticazione includono:
Un fattore di conoscenza è un'informazione che, in teoria, solo l'utente conosce. La password è il fattore di conoscenza più comune. Altri esempi sono i numeri di identificazione personale (PIN) e le risposte alle domande di sicurezza.
Nella maggior parte delle implementazioni 2FA, un fattore di conoscenza funge da primo fattore di autenticazione.
Nonostante il loro ampio uso, i fattori di conoscenza rappresentano il tipo di fattore di autenticazione più vulnerabile. Gli hacker possono ottenere le password tramite attacchi di phishing, malware o attacchi brute-force in cui utilizzano i bot per generare e provare a inserire diverse password su un account finché non trovano quella corretta.
Nemmeno altri tipi di fattori di conoscenza rappresentano una grande sfida per i criminali informatici. Le risposte a molte domande di sicurezza, come il classico "Qual è il cognome da nubile di tua madre?", possono essere scoperte facendo una semplice ricerca o attraverso gli attacchi di ingegneria sociale che inducono gli utenti a divulgare informazioni personali.
La pratica comune di richiedere una password e una domanda di sicurezza non è una vera 2FA perché utilizza due fattori dello stesso tipo, in questo caso due fattori di conoscenza.
Due fattori di conoscenza rappresentano un esempio di processo di verifica in due fasi. Il processo prevede due fasi: l'inserimento di una password e la risposta a una domanda, ma utilizza un solo tipo di fattore.
La verifica in due passaggi può essere più sicura della sola password perché richiede due prove. Tuttavia, poiché si tratta di due fattori dello stesso tipo, è più facile rubarli rispetto a due fattori di tipo diverso.
I fattori di possesso sono cose che una persona possiede. I due tipi più comuni di fattori di possesso sono i token software e i token hardware.
I token software assumono spesso la forma di password monouso (OTP). Le OTP sono solitamente codici monouso di 4-8 cifre che scadono dopo un determinato periodo di tempo. I token software possono essere inviati al telefono di un utente tramite messaggio di testo, e-mail o messaggio vocale. I token possono essere generati anche da un'app di autenticazione installata sul dispositivo.
Con un token software, il dispositivo dell'utente funge da fattore di possesso. Il sistema 2FA presuppone che solo l'utente legittimo abbia accesso a tutte le informazioni inviate o generate da quel dispositivo.
Sebbene le OTP basate su SMS siano alcuni dei fattori di possesso più facili da usare, sono anche i meno sicuri. Gli utenti hanno bisogno di una connessione internet o mobile per ricevere questi codici di autenticazione e gli hacker possono utilizzare sofisticati attacchi di phishing o man-in-the-middle per rubarli.
Le OTP sono anche vulnerabili alla clonazione della SIM, in cui i criminali creano un duplicato funzionale della scheda SIM dello smartphone della vittima e la utilizzano per intercettare i suoi messaggi di testo.
Le applicazioni di autenticazione, come Google Authenticator, Authy, Microsoft Authenticator e Duo, possono generare token senza una connessione di rete. L'utente associa l'app di autenticazione a un servizio, spesso scansionando un codice QR. L'app genera quindi continuamente password monouso temporanee (TOTP) per il servizio associato. Le TOTP scadono dopo 30-60 secondi, il che le rende difficili da rubare.
Alcune app di autenticazione utilizzano le notifiche push anziché le TOTP. Quando si effettua l'accesso a un account, l'app invia una notifica push al sistema operativo iOS o Android dell'utente, che deve aprire la notifica per confermare che il tentativo di accesso è legittimo.
Sebbene le app di autenticazione siano più difficili da violare rispetto ai messaggi di testo, non sono infallibili. Gli hacker possono utilizzare il malware per rubare le TOTP direttamente dalle app di autenticazione. Possono anche lanciare attacchi di MFA fatigue, in cui inviano decine di notifiche push fraudolente nella speranza che la vittima ne confermi accidentalmente una.
I token hardware sono dispositivi dedicati, come portachiavi elettronici, badge identificativi o dongle, che fungono da chiavi di sicurezza. Alcuni token hardware si collegano alla porta USB del computer e trasmettono le informazioni di autenticazione alla pagina di login. Altri token generano codici di verifica che l'utente deve inserire manualmente quando gli viene chiesto.
Sebbene i token hardware siano difficili da violare, possono essere rubati, così come i dispositivi mobili degli utenti che contengono token software. Secondo il report Cost of a Data Breach di IBM, i dispositivi smarriti o rubati sono coinvolti nel 6% delle violazioni dei dati.
Chiamati anche "dati biometrici", i fattori di inerenza sono caratteristiche o tratti fisici unici dell'utente, come impronte digitali, tratti del viso e tracciati della retina. Molti smartphone e laptop sono dotati di scanner facciali e lettori di impronte digitali integrati e molte app e siti web possono utilizzare questi dati biometrici come fattore di autenticazione.
Sebbene i fattori di inerenza siano i più difficili da violare, quando ciò accade gli effetti possono essere disastrosi. Se un hacker riesce ad accedere a un database biometrico, può rubare quei dati o collegare i propri dati biometrici al profilo di un altro utente. Quando i dati biometrici vengono compromessi, non possono essere modificati rapidamente o facilmente, il che rende difficile fermare gli attacchi in corso.
I progressi nella generazione di immagini con l'AI preoccupano gli esperti di cybersecurity, che temono che gli hacker utilizzino questi strumenti per ingannare i software di riconoscimento facciale.
I fattori comportamentali sono artefatti digitali che verificano l'identità di un utente in base a modelli comportamentali. Gli esempi includono l'intervallo tipico degli indirizzi IP, la posizione e la velocità media di digitazione di un utente.
I sistemi di autenticazione comportamentale utilizzano l'AI e il machine learning (ML) per determinare una base di riferimento per i normali schemi di un utente e segnalare attività anomale, come l'accesso da un nuovo dispositivo, numero di telefono o posizione.
Alcuni sistemi di autenticazione a due fattori consentono agli utenti di registrare dispositivi attendibili come fattori. Anche se l'utente potrebbe dover fornire due fattori al primo accesso, l'uso del dispositivo affidabile funge automaticamente da secondo fattore per gli accessi futuri.
I fattori comportamentali svolgono un ruolo anche nei sistemi di autenticazione adattiva, che modificano i requisiti di autenticazione in base al livello di rischio. Ad esempio, un utente potrebbe aver bisogno solo di una password per accedere a un'app da un iPhone affidabile sulla rete aziendale. Lo stesso utente potrebbe dover aggiungere un secondo fattore per accedere da un nuovo dispositivo o da una rete sconosciuta.
Sebbene i fattori comportamentali rappresentino un metodo di autenticazione avanzato, richiedono risorse e competenze significative per essere implementati. Inoltre, un hacker può facilmente impersonare l'utente se ottiene l'accesso a un dispositivo fidato.
I sistemi di autenticazione a due fattori senza password accettano solo fattori di possesso, di inerenza e comportamentali, non i fattori di conoscenza. Ad esempio, richiedere a un utente un'impronta digitale insieme a un token fisico costituisce una 2FA senza password.
L'autenticazione senza password elimina i fattori di conoscenza perché sono facili da violare. Sebbene la maggior parte dei metodi 2FA attuali utilizzi le password, gli esperti del settore prevedono un futuro sempre più senza password.
Le passkey, come quelle basate sul diffuso standard FIDO, sono una delle forme di autenticazione senza password più diffuse. Usano la crittografia a chiave pubblica per verificare l'identità di un utente.
Secondo il report Cost of a Data Breach, le credenziali compromesse e il phishing sono i due vettori di attacco informatico più comuni. Insieme, rappresentano il 31% delle violazioni di dati. Entrambi i vettori spesso si basano sul furto delle password, che gli hacker possono poi utilizzare per prendere il controllo di account e dispositivi legittimi e creare scompiglio.
Gli hacker in genere prendono di mira le password perché sono relativamente facili da violare con attacchi brute force o con l'inganno. Inoltre, poiché le persone riutilizzano le password, gli hacker possono spesso usare una singola password rubata per accedere a più account. Il furto di una password può avere conseguenze significative per gli utenti e le organizzazioni e sfociare nel furto di identità, nel furto di denaro, nel sabotaggio di un sistema e altro ancora.
L'autenticazione a due fattori aiuta a contrastare gli accessi non autorizzati aggiungendo un ulteriore livello di sicurezza ai sistemi di gestione delle identità e degli accessi (IAM). Anche se gli hacker possono rubare una password, hanno comunque bisogno di un secondo fattore per accedere a un account.
Inoltre, questi secondi fattori sono solitamente più difficili da rubare rispetto a un fattore di conoscenza. Per ottenerli, gli hacker devono infatti falsificare i dati biometrici, imitare i comportamenti dell'utente o rubare dispositivi fisici.
I metodi di autenticazione a due fattori possono anche aiutare le organizzazioni a soddisfare determinati obblighi di conformità. Ad esempio, il Payment Card Industry Data Security Standard (PCI DSS) richiede esplicitamente la MFA per i sistemi che gestiscono i dati delle carte di pagamento.
Altre normative, tra cui il Sarbanes-Oxley (SOX) Act e il Regolamento generale sulla protezione dei dati (GDPR), non richiedono esplicitamente la 2FA. Tuttavia, la 2FA può aiutare le organizzazioni a soddisfare i rigidi standard di sicurezza stabiliti da queste leggi.
Sebbene l'autenticazione a due fattori sia più efficace dei metodi di autenticazione a fattore singolo, in particolare quelli che utilizzano solo password, la 2FA non è infallibile. In particolare, gli hacker possono abusare dei sistemi di recupero dell'account per eludere la 2FA e impossessarsi di un account.
Ad esempio, un hacker può fingere di essere un utente valido che ha perso l'accesso e deve reimpostare le credenziali del proprio account. I sistemi di recupero dell'account spesso richiedono altri mezzi di autenticazione, come la risposta a una domanda di sicurezza. Se la domanda è banale come "il cognome da nubile di tua madre", l'hacker può scoprire la risposta con una piccola ricerca. L'hacker può quindi reimpostare la password dell'account, tagliando fuori l'utente reale.
Gli hacker possono violare un account accedendo a un secondo account. Ad esempio, se l'autore di un attacco desidera introdursi in un sistema aziendale sensibile, potrebbe iniziare impossessandosi dell'account e-mail di un utente. Potrebbe quindi richiedere la reimpostazione della password con il sistema aziendale, che invia un'e-mail all'account che l'hacker ora controlla.
La 2FA basata su SMS, forse la forma più comune di 2FA, può essere violata tramite attacchi avanzati di ingegneria sociale. L'autore dell'attacco può fingere di essere il proprio bersaglio e chiamare il suo operatore telefonico, sostenendo che il telefono è stato rubato e che deve trasferire il proprio numero a uno nuovo. Le OTP vengono quindi inviate al telefono controllato dall'hacker anziché al telefono del bersaglio.
Gli utenti possono difendersi da questi attacchi assicurandosi che tutti i loro account, da quelli di posta elettronica a quelli dei provider di servizi telefonici, richiedano un'autenticazione a due fattori (2FA) o a più fattori (MFA) avanzata. Applicare la MFA su tutti gli accessi rende più difficile per gli hacker utilizzare un account per comprometterne un altro.
Gli utenti possono anche assicurarsi che i fattori di autenticazione scelti siano difficili da violare. I token di physical security e i dati biometrici, ad esempio, sono più difficili da rubare rispetto alle risposte alle domande di sicurezza.