Quando accediamo a un sito Web effettuando il login con nome utente e password, è offerta la casella Ricordami. Per fare in modo che l’utente non debba autenticarsi ogni volta che apre lo stesso sito Web, i dettagli sull’avvenuto login sono automaticamente memorizzati nel dispositivo locale sotto forma di cookie. Questi piccoli file di testo conservano l’ID di sessione ovvero una particolare informazione che permette di evitare una nuova effettuazione del login. Il fatto è che il furto dei cookie può consentire a un aggressore di rubare l’identità digitale di un altro utente.
In altre parole, senza conoscere nome utente e password corretti, in caso di furto del cookie di sessione, l’attaccante può svolgere operazioni così come se fosse un’altra persona. Non solo. Questo tipo di aggressione permette di superare eventuali meccanismi di autenticazione a due fattori (2FA) o a più fattori (MFA), abilitati in fase di login.
Furto dei cookie di sessione: sono all’ordine del giorno
Un cookie di sessione è un piccolo file di testo memorizzato sul dispositivo dell’utente quando visita un sito Web, effettua il login con successo e ha abilitato la casella Ricordami (o similare). Il file contiene informazioni uniche che permettono al sito di “riconoscere” l’utente, in modo autentico, in occasione delle successive connessioni, senza che questi debba ri-autenticarsi a ogni interazione.
Come funziona il cookie di sessione
Quando un utente si autentica su un sito (ad esempio con nome utente e password; eventualmente superando con successo i controlli legati all’autenticazione a due o più fattori), il server valida le credenziali e avvia una sessione per quell’utente. Per identificare in modo univoco la sessione, il server genera un identificativo di sessione (session ID).
Il session ID è inviato al browser Web dell’utente, che lo salva in locale – nel dispositivo in uso – all’interno di un cookie di sessione. Questo cookie di solito non contiene informazioni personali ma solo il codice identificativo, che funge da “chiave” per il server.
Ogni volta che l’utente interagisce con il sito durante la sessione in corso (e quelle successive, per un certo numero di giorni), il browser invia il cookie di sessione al server. Il server legge il session ID e riconosce l’utente, consentendo l’accesso senza ulteriori richieste di autenticazione.
Il cookie di sessione scade soltanto quando trascorre il numero di giorni impostato dal sito Web. In queste situazioni, l’utente deve effettuare un nuovo accesso. Alcuni siti, tuttavia, usano meccanismi per generare automaticamente un nuovo cookie di sessione quando il precedente sta per scadere, di fatto procastinando a tempo indeterminato la durata del cookie.
Impersonare altri utenti con i cookie di sessione
Il Federal Bureau of Investigation (FBI) ha recentemente invitato gli utenti a porre la massima attenzione sulla gestione dei cookie di sessione, rilevando continue ondate di attacchi che fanno leva proprio sul furto di queste informazioni.
Il furto dei cookie di sessione, tuttavia, non affatto una pratica nuova. In un altro articolo abbiamo spiegato cos’è il cookie o session hijacking descrivendo il caso di un noto YouTuber che si è fatto “sfilare” sotto il naso il suo popolare canale proprio per via del furto dell’ID di sessione.
La tecnica del cookie hijacking (o session hijacking) risulta particolarmente pericolosa per i servizi di webmail come Gmail, Outlook e così via, che contengono una vasta gamma di informazioni personali: dati bancari, cronologie di acquisti e contatti personali. Una volta ottenuto l’accesso a queste informazioni, i criminali possono orchestrare attacchi mirati sfruttando dati rilevanti per la vittima, aumentando così la probabilità di successo.
Come i criminali rubano i cookie di sessione
I criminali informatici si servono di varie tecniche per appropriarsi dei cookie di sessione altrui. Gli attacchi MITM (man-in-the-middle) sono sempre più rari grazie all’utilizzo della crittografia (ad esempio HTTPS) per proteggere i dati in transito. La maggior parte dei furti avviene tramite malware: software malevolo installato sul dispositivo della vittima e progettato specificamente per rubare i cookie di sessione.
D’altra parte provate a eseguire un’applicazione come ChromeCookiesView di Nir Sofer: essa restituisce istantaneamente l’elenco dei cookie gestiti dal browser Chrome. Di fatto un qualunque malware in esecuzione sul sistema potrebbe fare la stessa cosa. Una volta che i cookie sono stati rubati, “continuano a funzionare” anche dopo che l’utente procedesse alla rimozione del componente dannoso.
Inoltre, i fornitori di browser Web hanno risolto in passato (e, verosimilmente, continueranno a risolvere…) vulnerabilità che possono consentire l’accesso non autorizzato ai cookie di altri siti da parte di pagine malevole.
I cookie possono essere protetti con l’attributo SameSite
, che limita l’accesso solo alle richieste provenienti dallo stesso dominio. Tuttavia, vulnerabilità nei browser possono consentire il bypassing di questa protezione, esponendo i cookie a potenziali attacchi.
Meccanismi di cookie tossing e DNS rebinding consentono ai malintenzionati di manipolare il comportamento del browser in modo da rendere accessibili cookie di siti a cui l’utente ha accesso, sfruttando il sistema DNS e scavalcano le restrizioni “same origin” imposte.
Protezione dai furti dei cookie di sessione
Per proteggersi dagli attacchi, i browser moderni integrano diversi livelli di protezione, come la separazione tra siti (Site Isolation), il rafforzamento delle politiche di sicurezza come Content Security Policy (CSP) e SameSite
, la distribuzione di aggiornamenti correttivi utili a risolvere vulnerabilità emergenti.
Gli utenti dovrebbero quindi mantenere aggiornato il browser (anzi, tutti i browser installati sul sistema, compresi quelli che non utilizzano, ad esempio Edge), installare con regolarità le patch di sicurezza per il sistema operativo e gli altri software in uso, usare software di sicurezza con protezione antimalware estesa al contenuto delle email, evitare l’apertura di allegati sospetti e tenere sempre la guardia alta.
La sottrazione dei cookie di sessione può avere origine anche con la semplice apertura di un file che si presenta come un documento attendibile.
La risposta di Google arriverà in Chrome nei prossimi mesi: DBSC, device-bound session credentials, si basa su TPM
Per combattere il problema cookie hijacking, Google sta introducendo uno strumento chiamato Device Bound Session Credentials (DBSC), che mira a rendere inutili i cookie rubati, migliorando così la sicurezza degli utenti e preservando i loro dati.
Il concetto alla base di DBSC è legato alla correlazione tra le sessioni di autenticazione e il dispositivo utilizzato. Grazie all’API DBSC, un server può avviare una sessione di autenticazione con un browser specifico su un singolo dispositivo, creando una coppia di chiavi pubblica/privata in locale.
Il sistema si appoggia al chip TPM (Trusted Platform Module) per proteggere la chiave privata e garantire che il processo di verifica dell’autenticità della sessione sia sicuro e sempre riproducibile in ambienti diversi.
Con DBSC, ogni sessione è associata a una chiave unica, ma non consente il tracciamento persistente dell’utente tra sessioni differenti, impedendo la correlazione delle chiavi tra sessioni sullo stesso dispositivo. Inoltre, l’utente può cancellare le chiavi in qualsiasi momento attraverso le impostazioni del browser, garantendo che non vi siano tracce a lungo termine.
Di DBSC si trova traccia nei flag di Chrome: basta digitare chrome://flags
quindi digitare device bound nella casella di ricerca. L’introduzione della nuova funzionalità nelle versioni stabili di Google Chrome dovrebbe avvenire tra fine 2024 e inizio 2025.
DBSC è progettato per essere compatibile con i meccanismi di gestione dei cookie già esistenti, integrandosi senza richiedere modifiche radicali ai siti Web. La sua architettura consente di migliorare la sicurezza dei cookie di sessione, riducendo i rischi legati al furto di cookie, senza compromettere l’infrastruttura preesistente o la facilità d’uso per gli utenti finali.
Credit immagine in apertura: iStock.com – Pla2na