Negli ultimi anni, fortunatamente aggiungiamo, si è fatto sempre più ricorso alla cosiddetta autenticazione a due fattori. La 2FA, come solitamente ci si riferisce in gergo tecnico, indica semplicemente quella buona prassi di sicurezza informatica per cui l’autenticazione di un utente avviene in due passaggi: in pratica è un meccanismo di autenticazione che prevede un livello di sicurezza aggiuntivo.
Autenticazione a due fattori: una breve definizione
Come siamo ormai tutti abituati a fare, al momento di accedere ad un account l’utente deve identificarsi e autenticarsi. Per decenni l’identificazione si è basata su un solo passaggio: l’utente inserisce username (identificazione) e password (autenticazione) e accede all’account desiderato.
Nel tempo però il volume e le tecniche dei cyber attaccanti si sono evolute e sono diventate sempre più efficaci, fino al punto da rendere completamente insufficiente la protezione offerta dalla coppia username / password. Così i ricercatori di sicurezza hanno pensato un modello di autenticazione diverso, che fosse più sicuro: da qui nasce l’idea dell’autenticazione multi fattore. L’autentificazione multi fattore, in gergo tecnico MFA) prevede l’aggiunta di uno o più livelli di sicurezza al momento dell’autenticazione dell’utente.
Questo livello di sicurezza aggiuntivo altro non è che una informazione in più che viene richiesta all’utente per avere la certezza che sia il legittimo proprietario dell’account. Nell’autenticazione MFA si richiedono, solitamente:
- la password/PIN, scelta dall’utente;
- un codice generato da un dispositivo fisico;
- un dato biometrico ecc…
Per fare un esempio, molti login richiedono una username (identificazione), una password numerica e testuale (1° livello di sicurezza nell’autenticazione) e una OTP, come il classico codice temporaneo inviato via email o SMS o app. Questi codici OTP vanno a scadere, quindi obbligano l’utente ad autenticarsi in poco tempo: questo è il secondo livello di sicurezza.
I rischi dell’uso degli SMS
Negli ultimi anni una delle forme di autenticazione a due fattori più diffusa ha previsto l’uso degli SMS per l’invio delle password usa e getta. Da qualche tempo però la sua sicurezza è stata messa in dubbio. Le password via SMS ad esempio sono facilmente sbirciabili, soprattutto quando si hanno le notifiche attive.
Non solo: nel mondo del cyber crime c’è un vero e proprio brulicare di malware e trojan che hanno il solo scopo di intercettare gli SMS contenenti le OTP. Esiste poi la cosiddetta ingegneria sociale, ovvero la tecnica molto diffusa nel cyber crime di ingannare gli utenti (con messaggi o identità fraudolente) così da indurli a rivelare le OTP.
Peggio ancora è la clonazione della SIM: un attaccante potrebbe facilmente recarsi in un negozio di telefonia e richiede una nuova scheda SIM con il numero di telefono della vittima. Risultato? Gli SMS arriveranno sulla nuova SIM, mentre quella del legittimo proprietario finirebbe esclusa dall’invio degli SMS. Esistono poi varie falle, nelle app usate e nei protocolli di comunicazione, che potrebbero essere sfruttate per intercettare le password.
Per approfondire > Dopo il down di Libero e Virgilio un diluvio di email italiane “bucate”
Esistono alternative sicure?
Non c’è da perdere la speranza, esistono alcune soluzioni alternative che mitigano i rischi.
Ecco alcune possibili alternative:
- app di autenticazione: sono app che generano codici al momento in cui ci si autentica. I servizi che consentono questo tipo di opzione, solitamente mostrano un QR code che l’utente deve scannerizzare con il proprio dispositivo mobile. Viene quindi generato un nuovo codice, usa e getta, con una validità di circa 30 secondi. Questi codici sono generati usando una chiave conosciuta solo dall’utente e dal server: a questo scopo di utilizza l’algoritmo OATH TOTP (Time-based One-Time Password).
- codici monouso su file (o carta)sono password usa e getta: la differenza con altre forme di autenticazione è che queste sono generate preventivamente per essere usate poi in accessi futuri. Se il servizio lo consente, l’utente può chiedergli di generare un certo numero di codici usa e getta utilizzabili in altrettanti accessi: l’utente deve solo salvare questi codici su un file, su carta o entro programmi come i password manager. In questo caso è fondamentale non smarrire i codici e non farseli rubare.
- sistemi biometrici
in questo caso il secondo fattore di autenticazione è un dato biometrico dell’utente, qualcosa di assolutamente unico e personale come l’impronta digitale o la scansione della retina. Sono sistemi molto sicuri, ma c’è comunque il rischio che anche i fattori biometrici possano essere trafugati.
Per approfondire > L’autenticazione multi fattore: chiudi i tuoi account a doppia mandata!
Le app di autenticazione sono sempre più diffuse
Servizi di gaming come Steam, social, grandi aziende come Adobe ecc… stanno implementando molte forme di autenticazione a più fattori tra le quali l’utente può scegliere. Alcuni di questi stanno sperimentando l’uso di specifiche app di autenticazione.
In generale, tutte le app di autenticazione usano lo stesso algoritmo per generare i codici, quindi sono in linea di massima, universali ovvero utilizzabili su la quasi totalità dei servizi. Alcuni servizi invece stanno optando per l’uso di app specifiche funzionanti solo sul servizio in oggetto: non usano cioè l’algoritmo
OATH TOTP, ma un algoritmo specifico. Ciò le rende utilizzabili solo per accedere al servizio in questione e non possono essere usate per generare codici per altri servizi: funzionano secondo questi crtiteri app come Steam Guard per accedere alla piattaforma gaming Steam, ma anche Adobe che ha sviluppato da qualche tempo il suo Adobe Authenticator.
Una breve ricerca sui principali motori di ricerca vi condurrà a scoprire app di autenticazione gratuite come Google Authenticator, Microsoft Authenticator o Free OTP di Red Hat. A voi la scelta!