Che cos’è una one-time password (OTP)?
Una one-Time password (OTP) è una stringa di caratteri alfanumerici o numerici generata automaticamente che autentica un utente per una singola transazione o sessione di accesso.
Un OTP è più sicuro di una password statica, in particolare una password creata dall’utente, che può essere debole e/o riutilizzata su più account.
Le OTP possono sostituire le informazioni di accesso all’autenticazione o possono essere utilizzate in aggiunta ad esse per aggiungere un altro livello di sicurezza.
Esempi di password monouso
I token di sicurezza OTP sono smart card basate su microprocessore o portachiavi tascabili che producono un codice numerico o alfanumerico per autenticare l’accesso al sistema o alla transazione. Questo codice segreto cambia ogni 30 o 60 secondi, a seconda di come è configurato il token.
Le app per dispositivi mobili, come Google Authenticator, si basano sul dispositivo token e sul PIN per generare la password monouso per la verifica in due passaggi.
I token di sicurezza OTP possono essere implementati utilizzando hardware, software o su richiesta. A differenza delle password tradizionali che rimangono statiche o scadono ogni 30-60 giorni, la password monouso viene utilizzata per una transazione o sessione di accesso.
Come ottenere una password monouso
Quando un utente non autenticato tenta di accedere a un sistema o eseguire una transazione su un dispositivo, un gestore di autenticazione sul server di rete genera un numero o un segreto condiviso, utilizzando algoritmi di password monouso. Lo stesso numero e algoritmo vengono utilizzati dal token di sicurezza sulla smart card o sul dispositivo per abbinare e convalidare la password e l’utente monouso.
Molte aziende utilizzano Short Message Service (SMS) per fornire un codice di accesso temporaneo tramite testo per un secondo fattore di autenticazione. Il passcode temporaneo viene ottenuto fuori banda attraverso le comunicazioni del cellulare dopo che l’utente inserisce il suo nome utente e la password su sistemi informativi in rete e applicazioni web orientate alle transazioni.
Per l’autenticazione a due fattori (2FA), l’utente inserisce il proprio ID utente, la password tradizionale e il codice di accesso temporaneo per accedere all’account o al sistema.
Come funziona una password unica
Nei metodi di autenticazione basati su OTP, l’app OTP dell’utente e il server di autenticazione si basano su segreti condivisi.
I valori per le password monouso vengono generati utilizzando l’algoritmo HMAC (Hashed Message Authentication Code) e un fattore di spostamento, ad esempio informazioni basate sul tempo (TOTP) o un contatore di eventi (HOTP).
I valori OTP hanno timestamp di minuti o secondi per una maggiore sicurezza. La one-time password può essere consegnata a un utente attraverso diversi canali, tra cui un messaggio di testo basato su SMS, un’e-mail o un’applicazione dedicata sull’endpoint.
I professionisti della sicurezza sono da tempo preoccupati che lo spoofing dei messaggi SMS e gli attacchi man-in-the-middle (MITM) possano essere utilizzati per rompere i sistemi 2FA che si basano su password monouso. Tuttavia, gli Stati Uniti. National Institute of Standards and Technology (NIST) ha annunciato piani per deprecare l’uso di SMS per 2FA e password monouso, in quanto il metodo è vulnerabile a un assortimento di attacchi che potrebbero compromettere quelle password e codici. Di conseguenza, le aziende che considerano l’implementazione di password monouso dovrebbero esplorare altri metodi di consegna oltre agli SMS.
Vantaggi di una password monouso
La password monouso evita le insidie comuni che gli amministratori IT e i responsabili della sicurezza devono affrontare con password security. Non devono preoccuparsi di regole di composizione, note-password cattive e deboli, condivisione di credenziali o riutilizzo della stessa password su più account e sistemi.
Un altro vantaggio delle password monouso è che diventano non valide in pochi minuti, il che impedisce agli aggressori di ottenere i codici segreti e riutilizzarli.