Phishing-Resistant MFA: What does it mean?

.

.

Phishing-resistant MFA (aka multi-factor authentication) è un metodo di autenticazione altamente sicuro progettato per rinforzare gli account utente contro gli attacchi di phishing. A differenza del tradizionale MFA, ancora suscettibile a tentativi di phishing, questo approccio integra diversi livelli di protezione per garantire una sicurezza superiore. Si avvale di avanzate tecniche come l’autenticazione biometrica, i token hardware e le notifiche push verso dispositivi fidati, rendendo estremamente complesso per gli aggressori impersonare gli utenti.

.

Figura 1 – Cyber cat fighting phishing

.

Probabilmente, avrete sentito parlare di un termine relativamente nuovo chiamato Phishing Resistant MFA. Che cos’è esattamente, quali sono i vantaggi e cosa significa per voi e per le vostre organizzazioni? Questo concetto può sembrare un po’ intimidatorio quando si muovono i primi passi, quindi iniziamo parlando del principio di autenticazione.

L’autenticazione è il processo in cui un utente conferma la propria l’identità. In altre parole, sei davvero la persona che dici di essere? Ogni volta che accedi a un sito web con il tuo nome utente e la tua password, stai autenticando. Spesso, l’autenticazione è abbinata all’autorizzazione. Una volta che sei autenticato (ad esempio, la tua identità è stata confermata), l’autorizzazione determina cosa puoi e non puoi fare. Quello di cui stiamo parlando oggi riguarda solo il pezzo sull’autenticazione.

Tradizionalmente, l’autenticazione si basava su una combinazione di nome utente e password. Il nome utente identifica chi sei, mentre la conoscenza della tua password conferma la tua identità. Il problema delle password è che risultano scomode e complesse per gli utenti e relativamente facili per gli attaccanti informatici da compromettere. Esistono varie modalità di compromissione delle password, inclusi siti di phishing che raccolgono le tue credenziali, malware che registra le tue tastate, individui che utilizzano password deboli e facili da indovinare, utenti che riutilizzano la stessa password su più account e siti web compromessi. Le password si sono rivelate una forma di autenticazione debole. Sebbene potessero essere considerate “abbastanza affidabili” dieci o vent’anni fa, oggi non sono più sufficienti per garantire la sicurezza.

.

Figura 2 – Cyber cat fighting phishing

.

Two-Factor Authentication

Considerata la mancanza di affidabilità del classico singolo fattore di autenticazione, è stato sviluppato un metodo di autenticazione notevolmente più robusto, noto come autenticazione a due fattori. L’espressione “a due fattori” indica che sono necessari due elementi, solitamente qualcosa che conosci (la tua password) e qualcosa che possiedi (il tuo dispositivo mobile) o qualcosa che sei (biometria). In questo modo, se la tua password venisse compromessa, la tua identità sarebbe ancora al sicuro, poiché un attaccante informatico non avrebbe accesso al secondo metodo (come il tuo dispositivo mobile). Questo concetto è simile a quello della tua carta bancomat quando prelevi denaro. Per effettuare un prelievo con successo, hai bisogno sia della tua carta bancomat che del codice PIN (per questo motivo, non dovresti mai scrivere il PIN sulla tua carta bancomat).

Questo approccio stratificato rappresenta un metodo notevolmente più efficace ed è adottato da molte organizzazioni e siti web. In effetti, l’autenticazione a due fattori sta rapidamente diventando uno standard, poiché si è dimostrata estremamente efficace nel contrastare gli attacchi basati sull’autenticazione. Tuttavia, ci sono diversi problemi.

.

Potenziali Problematiche con Two-Factor Authentication

Innanzitutto, dobbiamo concordare su come vogliamo chiamare questo concetto. Originariamente, il termine più comune era “autenticazione a due fattori”, poiché coinvolgeva due elementi. Tuttavia, sono spesso utilizzati altri nomi, tra cui “verifica a due passaggi”, “Strong Authentication” e “OTP (aka One-Time Password)”. Tuttavia, sembra che gran parte dell’industria stia adottando il termine “MFA (aka Multi-Factor Authentication)”. Spesso le persone sono confuse pensando che ci siano differenze tra questi termini (e a volte possono esserci), ma in generale si riferiscono alla stessa cosa. In seguito, in questo blog post utilizzeremo il termine MFA.

.

Multi-Factor Authentication

MFA viene spesso implementata con differenti modalità, tra quelle più comuni possiamo citare le seguenti:

 Un codice unico viene inviato via SMS al dispositivo mobile.
 Un codice unico viene generato in un’applicazione mobile sul dispositivo.
 Un codice unico o una richiesta viene inviato al dispositivo mobile.

.

Ci sono altre varianti di MFA, ma quasi tutte condividono una debolezza: è richiesta l’interazione umana. È necessario fare qualcosa con il codice che si riceve, e dove è richiesta l’interazione umana, le persone possono essere vittime di phishing. In altre parole, un attaccante può inserirsi nel processo di autenticazione. Dopo che una vittima accede a un sito web e ottiene il suo secondo fattore univoco, questo secondo fattore può essere estrappolato alla vittima e utilizzato dall’attaccante per ottenere l’accesso al sito web. In altre parole, questi approcci a MFA sono “phishable”.

Ora, prima di lasciarci prendere dal panico, ciascuno di questi metodi MFA è nettamente superiore rispetto all’uso di sole password. Dovremmo smettere di utilizzare MFA perché sono “phishable”? Assolutamente no, hanno un enorme valore. Tuttavia, gli attaccanti informatici miglioreranno sempre di più nell’approfittare del lato umano di questa questione. Dunque, quale sarà il prossimo passo?

.

A person in a garment running in a server room with a fish

Description automatically generated
Figura 3 – Cyber cat fighting phishing

.

Phishing-Resistant Multifactor Authentication

Phishing-Resistant Multifactor Authentication rappresenta sostanzialmente lo stesso processo di autenticazione precedentemente descritto, ma con un importante differenza, il fattore umano. Esistono diverse modalità di implementazione che coinvolgono i seguenti protocolli:

1.TOTP (Time-Based One-Time Password):
  TOTP è basato su un algoritmo di generazione di password che cambia nel tempo. Un token temporaneo viene generato sulla base di un seed segreto e dell’orario corrente, fornendo un codice di accesso che è valido solo per un breve periodo.
 Esempio: Microsoft Authenticator utilizza TOTP per generare codici temporanei.
2.U2F (Universal 2nd Factor):
 U2F è un protocollo che utilizza chiavi hardware per l’autenticazione. Le chiavi U2F sono dispositivi fisici, come chiavette USB, che devono essere connesse al dispositivo dell’utente durante il processo di autenticazione.
 Esempio: YubiKey è un dispositivo U2F ampiamente utilizzato.
3.WebAuthn:
 WebAuthn è uno standard web supportato dai principali browser. Consente agli utenti di autenticarsi utilizzando chiavi fisiche, sensori biometrici (come il riconoscimento delle impronte digitali o del viso) o altri mezzi.
 Esempio: WebAuthn è implementato in vari servizi online, consentendo agli utenti di utilizzare chiavi USB, biometria o altre modalità di autenticazione avanzate.
4.Push-based MFA:
 Questo metodo coinvolge l’invio di una notifica push a un’applicazione mobile. L’utente può quindi approvare o rifiutare l’accesso.
 Esempio: App come Duo Security o Microsoft Authenticator utilizzano questa metodologia.
5.Biometric Authentication:
 L’autenticazione biometrica coinvolge l’uso di caratteristiche fisiche uniche degli utenti, come impronte digitali, scansione del viso o riconoscimento dell’iride.
 Esempio: Touch ID di Apple, Face ID e i sensori biometrici su dispositivi Android.

.

Vediamo assieme l’approccio più diffuso attualmente, noto come FIDO.

FIDO è uno standard creato anni fa dalla FIDO Alliance, un consorzio no-profit composto da diverse organizzazioni di tutto il mondo. Questo standard, neutrale rispetto ai fornitori, è stato adottato dalla maggior parte dei grandi attori, tra cui Google, Amazon, Microsoft e Apple. Se sentite parlare di “WebAuthn”, si tratta della tecnologia che supporta e facilita l’implementazione dello standard FIDO. A un livello elevato, FIDO e WebAuthn fanno riferimento alla stessa soluzione (lo specifico perché talvolta può creare confusione).

Ma come funziona in pratica?

Durante la creazione di un account online (o l’aggiornamento di un account esistente per utilizzare FIDO), si registra il dispositivo sul sito web. Questo dispositivo può assumere la forma di un token speciale (come una chiavetta YubiKey) oppure si può utilizzare il dispositivo mobile (come lo smartphone) come token. Durante la registrazione del dispositivo, questo e il sito web generano una coppia di chiavi crittografiche unica per l’account (conosciuta come crittografia asimmetrica o crittografia a chiave pubblica). Non è necessario comprendere i dettagli tecnici, ma il risultato è che, basandosi su questa coppia di chiavi, il sito web ora ‘riconosce’ e accetta il dispositivo come affidabile. In futuro, per accedere al sito, l’utente si autentticherà semplicemente con il dispositivo, spesso senza richiedere una password, realizzando così un’esperienza di autenticazione passwordless.

Dal punto di vista dell’utente (la cui esperienza può variare da sito web a sito web e da dispositivo a dispositivo), tutto ciò che occorre è verificarsi con il dispositivo quando si visita un sito per cui si ha un account. Questa verifica può avvenire collegando il dispositivo alla porta USB del computer o utilizzando tecnologie wireless come NFC (comunicazioni in prossimità). Per garantire che sia effettivamente l’utente con il suo dispositivo (e non qualcuno che tenta di rubare il dispositivo e autenticarsi al suo posto), viene richiesto di dimostrare l’identità tramite la biometria (impronta digitale, scansione del viso, ecc.). Dal punto di vista dell’utente, l’intero processo di autenticazione si riduce essenzialmente all’utilizzo della biometria.

.

A cartoon character in a black ninja suit fighting with a fish

Description automatically generated
Figura 4 – Cyber Ninja fighting phishing

.

.

Ma qual è il flusso di autenticazione con Fido2/WebAuthN?

.

1.Principi fondamentali:
 Eliminazione delle password: WebAuthn mira a ridurre la dipendenza dalle password, sostituendole con metodi di autenticazione più sicuri e user-friendly.
 Fido2 Standard: WebAuthn fa parte delle specifiche Fido2, che comprendono anche il protocollo CTAP (Client-to-Authenticator Protocol).
2.Componenti chiave:
 Authenticator: Gli autenticatori sono dispositivi che eseguono l’autenticazione, come chiavi USB, dispositivi biometrici (scanner di impronte digitali, sensori di riconoscimento facciale) o smart card.
 Relying Party (RP): Il Relying Party è il sito web o il servizio online che desidera autenticare un utente.
 Client: Il client è il browser web o un’applicazione che interagisce con l’autenticatore e gestisce le operazioni di autenticazione.
3.Flusso di autenticazione:
 L’utente si registra o esegue l’accesso con il RP utilizzando WebAuthn.
 Il RP genera una coppia di chiavi crittografiche pubbliche e private per l’utente.
 La chiave pubblica viene memorizzata dal RP e la chiave privata rimane sull’autenticatore.
 Durante la successiva autenticazione, il RP chiede all’utente di autenticarsi utilizzando il suo autenticatore.
 L’autenticatore genera una firma crittografica basata sulla chiave privata, confermando l’identità dell’utente.
 La firma viene verificata dal RP utilizzando la chiave pubblica memorizzata.
4.Caratteristiche di sicurezza:
 Resistenza al phishing: WebAuthn è progettato per resistere agli attacchi di phishing. Poiché l’autenticatore fornisce una firma crittografica basata su chiavi private, anche se un utente inserisce le credenziali su un sito di phishing, l’attaccante non può riprodurre la firma senza accesso all’autenticatore reale.
 Riduzione dell’impatto degli attacchi basati su password: Poiché le credenziali di accesso sono basate su chiavi pubbliche/private, la compromissione di una singola password non compromette l’intero sistema.

.

Differenze tra U2F (primo standard introdotto dalla FIDO Alliance) e FIDO2/WebAuthN?

Le principali differenze tra i due standard sono:

1.Compatibilità:
 FIDO2/WebAuthn: Supporta un’ampia gamma di metodi di autenticazione, inclusi dispositivi fisici, biometria e altro.
 U2F: Si concentra principalmente sull’uso di dispositivi fisici (U2F tokens) come secondo fattore.
2.Passwordless:
 FIDO2/WebAuthn: Offre un’opzione senza password.
 U2F: Non è progettato per eliminare completamente l’utilizzo delle password.
3.Adozione e Standardizzazione:
 FIDO2/WebAuthn: È una specifica più recente che si sta diffondendo più ampiamente, con supporto da parte dei principali browser e servizi online.
 U2F: Ha avuto una diffusione significativa, ma potrebbe essere meno diffuso rispetto a FIDO2.

In sintesi, mentre entrambi i flussi mirano a migliorare la sicurezza dell’autenticazione, FIDO2/WebAuthn offre una maggiore flessibilità nei metodi di autenticazione e supporta l’esperienza senza password, mentre U2F si concentra principalmente sul secondo fattore fisico. La scelta tra i due dipenderà dalle esigenze specifiche di autenticazione e dalle preferenze di implementazione.

.

L’efficacia di questo approccio deriva dalla mancanza di un codice univoco da sottrarre o ingannare alle persone. Quasi tutte le operazioni avvengono tra il dispositivo e il sito web. L’unica interazione umana necessaria è la biometria, una pratica a cui le persone sono già abituate nella vita quotidiana. Così, otteniamo una soluzione non solo molto più sicura perché resiste notevolmente agli attacchi di phishing, ma anche molto più semplice per le persone da utilizzare. Questa tecnologia elimina tutti i rischi? No. Man mano che viene ampiamente adottata, si svilupperanno nuove minacce, ma sarà SENZ’ALTRO più difficile per gli attaccanti.

È fondamentale comprendere che, FIDO rappresenta una difesa estremamente efficace contro gli attacchi di phishing; tuttavia, l’adozione di FIDO non implica automaticamente l’immunità totale dell’organizzazione dal phishing. Un vasto numero di attacchi di phishing sfugge al contesto delle password, coinvolgendo elementi come allegati infetti nelle email, attacchi Business Email Compromise (BEC) o richieste di chiamate telefoniche. In fase di Reconnaissance, gli attacchi di phishing più efficaci possono potenzialmente ridursi a brevi messaggi contenenti un singolo numero di telefono da contattare per la vittima.

È dunque fondamentale tenere presente che, sebbene le soluzioni di autenticazione robusta, come l’MFA basato su FIDO, dimostrino una resistenza straordinaria agli attacchi di phishing, un significativo numero di scenari di phishing prescinde completamente dall’ambito dell’autenticazione.

.

Figura 5 – Ninja fighting a BIG phishing attack

.

.

Conclusioni

L’implementazione di un sistema di autenticazione multi-fattore (MFA) resistente al phishing rappresenta un passo fondamentale verso la creazione di ambienti digitali più sicuri e protetti. Soluzioni avanzate, come l’MFA basato su FIDO, si ergono come baluardi potenti contro gli attacchi di phishing, garantendo un’identità digitale robusta e affidabile. Tuttavia, è imperativo rimanere vigili e consapevoli che, nonostante l’efficacia di tali misure, il panorama delle minacce continua a evolversi. La perseveranza nella ricerca e nell’adozione di metodologie sempre più sofisticate è essenziale per garantire una difesa continua e adeguata contro le sempre mutevoli tattiche degli attaccanti. In questa prospettiva, abbracciamo con entusiasmo l’opportunità di plasmare un futuro digitale in cui la sicurezza e l’innovazione procedano di pari passo, offrendo così un ambiente online affidabile e resiliente per tutti.

.

#StayTuned on Technical365!!

Spread the love

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *