⚠️ 2FA e MFA: come funziona l'autenticazione a due o più fattori

Veronica Paolucci explains two-factor and multi-factor authentication: why passwords alone fail, how four types of factors work together, and the history from ATM vouchers in 1967 to modern biometrics and passwordless passkeys. Real breaches like the Twitter Bitcoin hack show what happens without MFA.
Chapters
Immaginate di essere in pausa pranzo. State chiacchierando con i colleghi, con il telefono appoggiato sul tavolo, quando vi arriva una notifica. È Google che vi informa di un nuovo tentativo di accesso su un altro dispositivo. Ma voi non avete fatto nulla! Vi prende il panico. E se qualcuno avesse scoperto la vostra password? Correte a controllare e vi accorgete che sì, qualcuno ha davvero provato a entrare. Ma non ce l'ha fatta. Perché dopo la password il sistema ha chiesto una seconda conferma. Ha chiesto di confermare l'accesso cliccando sulla notifica inviata sul vostro telefono. Siete appena stati salvati dall'autenticazione a più fattori. Ciao a tutti e benvenuti in questo nuovo video. Oggi affrontiamo un tema fondamentale per capire la tecnologia odierna: l'autenticazione a due o più fattori, che rappresenta oggi uno dei pilastri della sicurezza informatica. La sua forza sta nel combinare due o più di questi elementi: uno o qualcosa che sai, come un PIN, una password o la risposta a una determinata domanda. 2. Qualcosa che hai, come il tuo telefono e la possibilità ad esempio di approvare una notifica, oppure un dispositivo OTP che genera password casuali. 3. Qualcosa che sei, quindi qualcosa collegato a te, come l'impronta digitale, il viso, l'iride e così via. 4. Un posto in cui sei, elemento meno diffuso ma talvolta comunque usato, che si basa su dove si trova la persona o il dispositivo. Un esempio Il metodo di autenticazione a due fattori lo troviamo ad esempio quando accediamo all'home banking da computer e oltre alla password, che è qualcosa che sappiamo, dobbiamo inserire il codice ricevuto sul telefono, che è qualcosa che abbiamo. Sono sempre più diffusi poi i sistemi di autenticazione a più fattori, o MFA, Multi-Factor Authentication, che combinano più tecniche. Ad esempio, accedo inserendo la password, che è qualcosa che so, inserisco il codice ricevuto via SMS, che è qualcosa che ho, e poi autorizzo l'operazione con l'impronta digitale, che è qualcosa che sono. Tutto questo serve perché ci si è resi conto già da tempo che la semplice password non basta più. Le password sono vulnerabili, un po' perché tendiamo a usare combinazioni un po' troppo semplici, un po' perché tendiamo a riutilizzare le stesse credenziali in più account. E questo apre la porta a tantissimi tipi di attacco. Un malintenzionato può crearsi delle tabelle delle password più comuni e provarle sistematicamente sui miei account, sperando che io abbia scelto una combinazione un po' banale. Oppure potrebbe ingannarmi e convincermi a dargli la mia password, ad esempio reindirizzandomi a un sito fasullo che chiede le mie credenziali. E quindi neanche una password super complicata mi salverebbe. Se poi la stessa password che gli ho dato l'ho usata in altri account, il malintenzionato potrebbe iniziare a provare le mie credenziali su tantissimi altri servizi. Ma se io imposto l'autenticazione a più fattori in ogni sito o applicazione che mi permette di farlo, sono molto più al sicuro, perché il sito, dopo che attaccante ha inserito le mie credenziali, gli chiederà qualcosa di più, come ad esempio inserire un codice che io ho ricevuto via messaggio. Insomma, se usare password sicure è come mettersi la cintura di sicurezza, avere l'autenticazione a più fattori è come avere l'airbag. Se il tuo account si schianta da qualche parte, ti fai meno male. Ma vi siete mai chiesti come si è arrivati all'autenticazione a più fattori? Per capirlo, come sempre, dobbiamo fare un passo indietro. Siamo a Londra, fine anni '60. L'ingegnere John Sheppard Barron è a casa propria e sta facendo un bagno. È un po' frustrato perché doveva prelevare dei contanti, ma per un soffio non ce l'ha fatta. È arrivato alla filiale della sua banca pochi minuti dopo la chiusura. Barron sta riflettendo. Non è possibile che non esista un modo per prelevare contanti quando la banca è chiusa. Ci vorrebbe uno sportello che eroghi denaro. Ma come ricollegarlo al conto corrente di ciascuno? Beh, con un voucher o con un altro strumento identificativo, qualcosa di fisico da mostrare o da inserire in un lettore. Ok, ma se qualcuno dovesse perdere il proprio voucher, chiunque potrebbe prenderlo e usarlo per prelevare denaro dal conto corrente del malcapitato. No, ci vuole un altro sistema, il voucher da solo non basta. Si potrebbe abbinare a qualcosa, tipo la data di nascita del proprietario. Però ni, anche questa è una cosa che si può scoprire abbastanza facilmente, non è sicura. No, ci vuole un codice che solo la persona proprietaria del conto corrente conosca. In questo modo, per prelevare denaro occorrerebbero due cose diverse: qualcosa che si ha, cioè il voucher fisico, e qualcosa che si sa. Cioè il codice. Questa combinazione renderebbe molto più difficile per un malintenzionato prelevare da un conto altrui. Barron, con la sua intuizione, va dai grandi capi dell'azienda per cui lavora, la De La Rue, incaricata fra le altre cose di stampare le banconote ufficiali del Regno Unito. Nel giro di pochissimo tempo l'azienda stringe un accordo con la Barclays Bank e il 27 giugno 1967 viene inaugurato il primo sportello per il prelievo di contanti, che funzionava in modo più o meno simile ad oggi ma con qualche differenza. Differenza. Non esisteva un'unica carta da usare più volte. Ai clienti veniva dato invece un libretto di voucher monouso, dove ciascun voucher permetteva di prelevare solo 10 sterline. La cosa più importante e innovativa però era l'introduzione di una doppia autenticazione. Per prelevare le proprie 10 sterline bisognava sia essere in possesso del voucher che ricordarsi il PIN. Il PIN era di sole 4 cifre, e per questo dobbiamo incolpare la moglie di Barron. Lui stava ragionando su PIN di 6 cifre per rendere più sicuro sistema, ma la moglie si lamentò che per lei ricordare 6 cifre era impossibile. Al massimo poteva ricordarsene 4. Ancora oggi nei circuiti di molti paesi anglosassoni il PIN è di 4 cifre, tutto a causa di una casalinga londinese dotata di scarsa memoria. Facciamo ora un piccolo salto in avanti e andiamo negli anni '80. Da una ventina d'anni le password avevano iniziato a essere implementate nei sistemi ed erano già in uso delle tecnologie di hashing e salting per proteggerle. So che sapete benissimo cosa sono perché sicuramente avrete visto il mio video sulle password, ma se non l'avete visto recuperatevelo. Ma anche con l'esistenza di hashing e salting era chiaro a chi lavorava nel settore che la password di per sé restava uno strato di sicurezza troppo sottile, friabile, anzi franabile, perché frana, non è che fria. La password si basava esclusivamente su qualcosa che l'utente conosceva. Occorreva aggiungere qualcos'altro, qualcosa che l'utente possedeva. Una società particolarmente intuitiva, la Security Dynamics Technologies, brevetta i primi token OTP. Si trattava di piccoli dispositivi che generavano appunto una OTP, una one-time password, un codice temporaneo che scadeva dopo un breve periodo di tempo. Nei sistemi in cui questa tecnologia era implementata, l'utente doveva inserire la propria password, che era qualcosa che conosceva, e la password temporanea generata dal suo token, che era qualcosa che possedeva. Dal punto di vista tecnico funzionava così: ogni utente aveva un piccolo dispositivo fisico, simile a un portachiavi, con uno schermo digitale che normalmente restava spento. Dentro quel dispositivo c'era una chiave segreta unica, chiamata seed o seme, che era stata impostata già al momento della produzione del dispositivo ed era univoca, quindi non esistevano due token con la stessa chiave segreta. Questa chiave segreta veniva salvata anche sul server centrale che gestiva le autenticazioni. Ed era associata al singolo utente. Sia il token sia il server avevano anche un orologio interno sincronizzato al secondo. Quando l'utente premeva il pulsante sul dispositivo, questo prendeva la chiave segreta e l'orario esatto, li combinava attraverso un algoritmo crittografico e generava un codice numerico temporaneo che compariva sullo schermo per pochi secondi. Contemporaneamente il server faceva lo stesso calcolo con gli stessi ingredienti: chiave più orario uguale codice. Quando l'utente provava voleva accedere a un servizio inseriva la sua password, premeva il pulsantino sul suo token e inseriva nel computer il codice temporaneo mostrato dal dispositivo. Il server controllava che il codice inserito fosse esattamente quello che aveva generato lui in quel momento e se combaciavano l'accesso veniva dato. In pratica il token e il server parlavano una lingua segreta che conoscevano solo loro. Il bello è che ogni codice durava pochissimo e cambiava di continuo rendendo impossibile per un attaccante prevederlo o riutilizzarlo e senza il dispositivo fisico, anche conoscendo la password dell'utente, non si andava da nessuna parte. Si era arrivati a portare il concetto alla base del bancomat nel mondo dell'informatica, unendo qualcosa che l'utente conosceva, cioè le sue credenziali, a qualcosa che l'utente possedeva, cioè il token fisico. La società Security Dynamics Technologies viene poi acquisita nel giro di poco tempo dalla società RSA Security, fondata dai ricercatori Rivest, Shamir ed Edelman, che se vi ricordate l'abbiamo visto nel video sulla fotografia, sono i padri dell'algoritmo RSA, che serve a proteggere le comunicazioni. La RSA Security capisce immediatamente le potenzialità del token OTP e nel giro di pochissimo tempo diventa leader del mercato. Spingono tantissimo le aziende a implementare nei loro sistemi di login per i dipendenti dei meccanismi basati sull'OTP e creano anche dei piccoli dispositivi portachiavi che ciascuno può portare con sé. In breve tempo nelle grandi aziende i token OTP diventano importanti tanto quanto il badge. Senza il badge non entri in azienda, senza token non entri nel tuo computer. Nel 1998 la AT&T, una società telefonica molto famosa negli Stati Uniti, brevetta poi un sistema analogo ma basato sugli SMS. I cellulari ormai avevano iniziato a diffondersi e la AT&T aveva individuato la possibilità di aumentare ancora di più il bacino di utenti. Il sistema brevettato, che conosciamo benissimo ancora oggi, consisteva nell'inviare all'utente che stava tentando di accedere un codice OTP via messaggio. Anche qui si combinava qualcosa che la persona conosceva con qualcosa che aveva, nello specifico il telefono cellulare. Queste due tecnologie, quindi gli OTP SMS e gli OTP tramite token, dominarono il settore per tutto il primo decennio del 2000. Il mercato era più o meno equamente diviso fra sistemi che usavano gli SMS, per lo più quelli rivolti ai privati, e i sistemi che invece richiedevano un token esterno, come quelli di grandi aziende oppure servizi bancari. Il problema era che non tutte le aziende erano convinte che fosse effettivamente necessario avere un sistema di doppia autenticazione per accedere ai propri servizi. In particolare, nella Silicon Valley c'era ancora una società che pensava che una password forte fosse sufficiente a risolvere i problemi di sicurezza. Quella società si chiamava Google e fu costretta a cambiare bruscamente idea. Tra il 2009 e il 2010, Elderwood, un gruppo di hacker legati all'esercito cinese, prese di mira Google e altre 34 grandi aziende americane. Il metodo usato, ovviamente, non giusto neanche dirvelo, partiva con lo sfruttare l'anello più debole della catena, che è, lo ripetiamo tutti insieme, l'essere umano. Il gruppo hacker inviò a più dipendenti delle mail costruite su misura per ciascuno, con dei link a dei siti trappola che sfruttavano una vulnerabilità ancora sconosciuta di Internet Explorer. Bastava cliccare per infettare il computer con un malware invisibile che apriva una connessione verso server in Cina e permetteva agli attaccanti di muoversi dentro alla rete di Google come se fossero dei dipendenti autorizzati. Il loro obiettivo erano gli account Gmail di attivisti cinesi per i diritti umani e riuscirono a rubare tutte le credenziali che desideravano. Google si accorse della violazione e immediatamente avvisò tutti i propri utenti, assumendosi la responsabilità delle falle nella sicurezza, accusando apertamente il governo cinese dell'attacco e annunciando che non avrebbe più accettato questa censura da parte della Cina. Oltre al gesto politico però intrapresero anche, ovviamente, dei cambiamenti dal punto di vista tecnico. Tecnico. Google in quel momento capì che le password come metodo di autenticazione non erano più sufficienti. Il gruppo di hacker aveva messo le mani sulle credenziali Gmail degli attivisti e questo era sufficiente per accedere ai loro account. Questo non poteva più essere possibile. Google inizia quindi a offrire gratuitamente l'autenticazione a due fattori a chiunque avesse un account Gmail. L'utente poteva scegliere se ricevere un SMS per confermare l'accesso oppure poteva usare una nuova applicazione lanciata sul mercato da pochissimo, cioè Google Authenticator, un'app creata e pensata esclusivamente per generare dei codici OTP per l'autenticazione a più fattori. Finalmente, con l'autenticazione a due fattori che si stava diffondendo anche fra gli utenti comuni, erano tutti felici, tutti protetti, tutti al sicuro. Ma le cose stavano per cambiare. Siamo nel 2011, solo un anno dopo l'attacco a Google, quando viene creata anche la società RSA Security. Quella stessa azienda che produceva i famosi token OTP che ormai usavano tutte le grandi aziende e le agenzie governative per l'autenticazione a più fattori. Gli aggressori, ancora una volta presumibilmente legati alla Cina, sfruttarono nuovamente il fattore umano. Inviarono a pochi dipendenti delle email con oggetto apparentemente innocuo contenenti un file Excel spacciato per il piano delle assunzioni di quell'anno. Una volta aperto però il file infettava il computer e si propagava nella rete aziendale. L'obiettivo del gruppo non era bloccare i sistemi sistemi della società o rubare denaro, ma ottenere qualcosa di molto più pericoloso: l'accesso al database che conteneva tutti i seed crittografici, cioè quelle chiavi segrete che stanno alla base del funzionamento dei token OTP. Come vi dicevo, ogni chiave è unica e condivisa esclusivamente fra il server e il dispositivo dell'utente. Se un attaccante riesce ad accedere al server, può generare gli stessi codici temporanei del token fisico e accedere agli account come se fosse l'utente legittimo, rendendo inutile quindi anche il secondo fattore sistemi di autenticazione. Dopo mesi di indagini, la RSA rivelò che gli aggressori erano riusciti a sottrarre informazioni su alcuni clienti, sfruttandole per attaccare Lockheed Martin, la più grande azienda del mondo nel settore della difesa militare. La RSA spese oltre 66 milioni di dollari per indagare, rispondere all'incidente e sostituire milioni di token. Ma il danno più grave fu di tipo concettuale. Per la prima volta si capì che se il segreto alla base dell'autenticazione viene compromesso, anche il miglior dispositivo fisico non basta più a proteggerti. Da quel momento l'industria accelerò lo sviluppo di sistemi MFA ancora più avanzati. Tra il 2012 e il 2013 la Apple introduce Touch ID, il primo sistema biometrico installato su uno smartphone, che riconosceva l'impronta digitale dell'utente con una probabilità di falso positivo di 1 su 50.000. Nel giro di poco tempo gli altri produttori di smartphone seguono a ruota e vengono implementati anche nuovi sistemi come la scansione della retina di Samsung e l'introduzione del riconoscimento facciale. Era l'ingresso nel mondo dell'autenticazione a più fattori di un nuovo strato di sicurezza basato non su qualcosa che l'utente conosceva o possedeva, ma su qualcosa che l'utente era. La rivoluzione è talmente grande e significativa che ad agosto 2016 il NIST, una delle principali autorità mondiali in materia di cyber security, annuncia ufficialmente che non si ritiene più sicuro l'uso degli OTP inviati tramite SMS come sistema di autenticazione a più fattori. Non perché non funzionino, ma perché sono troppo facili da intercettare. Era già stato dimostrato come i truffatori fossero in grado di convincere gli operatori telefonici a trasferire il numero della vittima su un'altra SIM in modo da leggere messaggi. E poi iniziavano anche a diffondersi gli spyware nei cellulari, che permettevano all'attaccante di sapere tutto quello che succedeva sul telefono. Non è che il NIST vieta di usare gli SMS, ma li considera una soluzione superata, consigliando invece metodi più robusti come le app di autenticazione o i dispositivi fisici. È un cambiamento di prospettiva, arriva. Da quel momento il secondo fattore non basta che sia qualcosa che hai, ma deve essere qualcosa che non può essere copiato da remoto. Eppure anche in quegli anni tantissime aziende, anche di fama mondiale, continuavano a non implementare ovunque l'autenticazione a più fattori. L'esempio più eclatante resta quello della truffa dei Bitcoin di Twitter, quando gli account di varie celebrità sono stati hackerati, cosa resa possibile dal fatto che per l'accesso a quegli account da un nuovo dispositivo non occorreva l'autenticazione a più fattori. Una volta rubata la password, l'attaccante era a posto, poteva fare quello che voleva. Per non parlare del caso di Colonial Pipeline, un attacco che nel 2021 ha fatto veramente scalpore, soprattutto perché— no, forse è meglio che di questo ve ne parli nel video di domani. La ricerca su come migliorare il sistema dell'autenticazione a più fattori comunque non si fermò neanche dopo l'introduzione delle impronte digitali e di tecnologie simili. Nel 2022 Google, Apple, Microsoft e altre grandi società si uniscono in un obiettivo comune: eliminare del tutto le password. Le password deboli. L'autenticazione a più fattori aiuta ma non salva. Viene quindi annunciata l'introduzione di una nuova tecnologia: le passkey, che iniziano a comparire nei dispositivi e nei servizi più usati del mondo. Ma di cosa si tratta esattamente? Stiamo usando una passkey quando un sito ci chiede non di inserire la nostra password, ma la nostra impronta digitale sul telefono o sul computer, oppure il PIN che sblocca il nostro dispositivo. In questo modo, col fatto che solo noi sappiamo sbloccare il nostro computer o il nostro telefono, il sito è sicuro che siamo proprio noi a tentare di accedere. L'utente vede quindi solo la richiesta di inserire quello che usa normalmente per sbloccare il telefono o il computer, quindi il suo PIN, l'impronta digitale o il viso, e la cosa è fatta. Ma dal punto di vista tecnico è molto più interessante. La Passkey consiste in una coppia di chiavi crittografiche, una pubblica e una privata. Quella pubblica viene salvata sul sito, sul servizio a cui l'utente vuole accedere. Quella privata invece resta nel suo dispositivo al sicuro, nessuno vedrà mai. Le due chiavi comunicano: le cose cifrate con la pubblica possono essere decifrate solo con la privata e viceversa. Quando l'utente prova a fare login o ad autorizzare una transazione, il sito gli invia una sfida: "Sei davvero tu? Allora firma questa stringa di caratteri che ti sto mandando con la tua chiave privata." L'utente non vede nulla di tutto ciò, riceve solo la richiesta di inserire le credenziali per sbloccare il dispositivo, come appunto l'impronta digitale. Ma in quel momento in realtà sta rispondendo alla sfida, firmando con la sua chiave privata la stringa inviata dal sito. Il sito la riceve, verifica che corrisponda con la chiave pubblica associata all'utente, e una volta verificata permette l'accesso. Il vantaggio principale di questo sistema è che gli attaccanti non possono sfruttare la debolezza umana. Le passkey non possono essere rubate con il phishing, non ci sono credenziali di accesso da digitare, nessun codice da inserire o ricevere via SMS. Il sito non ti chiede niente e tu non hai nulla da rivelare. La chiave privata che serve per autenticarti resta bloccata nel tuo dispositivo. Ecco perché fondamentale proteggere anche il dispositivo. Se usiamo un PIN banale tipo 0000 per proteggere il nostro computer o il nostro telefono e qualcuno riesce ad accedere da remoto, la passkey diventa vulnerabile quanto il tuo PC o il tuo smartphone. Se però siamo bravi a tenerla al sicuro, ad esempio usiamo sempre l'impronta digitale nel telefono e come PIN mettiamo qualcosa di complicato, siamo a cavallo. La password è morta, lunga vita alla Veronica Paolucci. Come sempre, non è che allora possiamo gettare all'aria le precauzioni. Se state usando il vostro telefono in tranquillità scrollando TikTok e dal niente vi arriva la richiesta di confermare l'accesso a un altro sito e di inserire l'impronta digitale, fermatevi un secondo a capire se qualcosa che avete fatto voi o se c'è qualcuno che sta cercando di accedere ai vostri servizi. Quando inserite la password o l'impronta digitale o il codice OTP, state confermando a un sito che siete proprio voi ad accedere. Quindi fate attenzione se ricevete richieste che non riconoscete. Più faccio questi video, più mi viene voglia di buttare in mare computer e telefono e ritirarmi a vivere nei boschi, dove probabilmente morirai nel giro di 5 minuti mangiando bacche velenose perché non ho potuto controllare su Google se potevo mangiarle. Bene, come sempre, spero che questo video vi sia piaciuto. Fatemi sapere nei commenti cosa ne pensate. Noi ci vediamo nel video di domani dedicato all'attacco del 2021 a Colonial Pipeline. A domani!










