Aprendo un qualsiasi sito Web, la prima cosa che viene visualizzata è quasi sicuramente una notifica sull’uso dei cookie. In genere la scelta è tra accettare tutti i cookie, solo quelli necessari o nessuno. Indipendentemente dalla scelta, la pagina Web torna a essere quella di sempre quando la notifica scompare dallo schermo.
Oggi ci addentreremo a fondo nelle questioni dei cookie: a cosa servono, quali tipi esistono, come gli utenti malintenzionati possono intercettarli, quali rischi comportano e come stare al sicuro.
Cosa sono i cookie?
Quando si visita un sito Web, questo invia al browser un cookie: un piccolo file di testo che contiene dati sull’utente, sul sistema e sulle azioni intraprese dall’utente sul sito. Il browser archivia questi dati nel dispositivo e li invia di nuovo al server ogni volta che l’utente torna sul sito. In questo modo l’interazione con il sito risulta semplificata: non è necessario eseguire l’accesso a ogni singola pagina; i siti ricordano le impostazioni di visualizzazione; i negozi online mantengono gli articoli nel carrello; i servizi di streaming sanno da quale puntata riprendere la visione: i vantaggi sono infiniti.
I cookie possono memorizzare dati di accesso, password, token di sicurezza, numero di telefono, indirizzo di residenza, dettagli bancari e ID di sessione. Vediamo in dettaglio cosa accade con gli ID di sessione.
Un ID di sessione è un codice univoco assegnato a ciascun utente che accede a un sito Web. Se una terza parte riesce a intercettare questo codice, il server Web l’accetterà come utente legittimo. Ecco una semplice analogia: immaginiamo di accedere al nostro ufficio per mezzo di un pass elettronico dotato di codice univoco. Se ci venisse rubato, al ladro si spalancherebbe ogni porta senza bisogno di camuffarsi o somigliarci fisicamente. Il sistema di sicurezza crederà di concedere a noi l’accesso. Sembra la scena di un film poliziesco, vero? La stessa cosa accade online: se un hacker ruba un cookie contenente l’ID di sessione, potrebbe accedere a un sito Web senza dover immettere nome utente e password, già forniti dall’utente legittimo, e potrebbe persino scavalcare l’autenticazione a due fattori. È esattamente questo che gli hacker hanno fatto nel 2023 per rubare tutti i tre canali YouTube del famoso tech blogger Linus Sebastian: il famoso “Linus Tech Tips” e altri due canali del Linus Media Group con decine di milioni di abbonati. Abbiamo già trattato il caso in dettaglio.
Quali tipi di cookie esistono?
Mettiamo ordine tra i vari “gusti” di cookie. Tutti i cookie possono essere classificati secondo le loro caratteristiche.
Per tempo di archiviazione
- Cookie temporanei o di sessione. Vengono usati solo quando si è nel sito Web. Vengono eliminati non appena si esce dal sito. Sono necessari per operazioni quali mantenere l’accesso durante l’esplorazione da una pagina all’altra o per ricordare la lingua e la regione selezionate.
- Cookie persistenti. Rimangono nel dispositivo dopo l’uscita dal sito. Evitano di dover accettare o rifiutare le informative sui cookie ogni volta che si accede a un sito. In genere durano circa un anno.
È possibile che cookie di sessione diventino persistenti. Ad esempio, se si seleziona una casella come “Ricordami”, “Salva impostazioni” o simili in un sito Web, questi dati verranno salvati in un cookie persistente.
Per fonte
- Cookie proprietari. Sono generati dal sito Web stesso. Consentono al sito Web di funzionare correttamente e ai visitatori di vivere un’esperienza adeguata. Possono inoltre essere usati per scopi di analisi e marketing.
- Cookie di terzi. Vengono raccolti da servizi esterni. Sono usati per visualizzare e raccogliere annunci e statistiche pubblicitarie, tra le altre cose. Questa categoria include anche i cookie di servizi di analisi come Google Analytics e piattaforme di social media. Questi cookie memorizzano le credenziali di accesso consentendo di mettere Mi piace a una pagina o condividere contenuti sui social media con un solo clic.
Per importanza
- Cookie obbligatori o essenziali. Supportano le funzionalità di base del sito Web come la vendita di prodotti su una piattaforma di e-commerce. In questo caso ogni utente dispone di un account personale e i cookie essenziali memorizzano l’accesso, la password e l’ID di sessione.
- Cookie opzionali. Vengono usati per tenere traccia del comportamento degli utenti e contribuire a personalizzare gli annunci pubblicitari con maggiore precisione. La maggior parte dei cookie opzionali appartiene a terze parti e non pregiudica la capacità dell’utente di usare le funzionalità del sito.
Per tecnologia di archiviazione
- Questi cookie vengono memorizzati in file di testo nella memoria standard del browser. Quando vengono cancellati i dati del browser, questi vengono eliminati e, successivamente, i siti Web che li hanno inviati non riconosceranno più l’utente.
- Esistono due sottotipi speciali che memorizzano i dati in modo non standard: i supercookie e gli evercookie. I supercookie sono incorporati nelle intestazioni dei siti Web e archiviati in posizioni non standard, il che consente loro di evitare di essere eliminati dalle funzioni di pulizia del browser. Gli evercookie possono essere ripristinati usando JavaScript anche dopo essere stati eliminati. Ciò significa che possono essere usati per l’attività, persistente e difficile da controllare, di tracciamento degli utenti.
Uno stesso cookie può rientrare in più categorie: la maggior parte dei cookie opzionali è ad esempio di terze parti, mentre i cookie essenziali includono quelli temporanei responsabili della sicurezza di una specifica sessione di navigazione. Per maggiori dettagli su come e quando vengono usati tutti questi tipi di cookie, invitiamo a leggere il rapporto completo di Securelist.
Come gli ID di sessione vengono rubati tramite l’hijacking della sessione
I cookie che contengono un ID di sessione sono i bersagli più allettanti per un hacker. Il furto di un ID di sessione è anche noto come hijacking della sessione. Esaminiamo alcuni dei metodi più interessanti e diffusi.
Sniffing di sessione
Il dirottamento della sessione avviene monitorando o “annusando” il traffico Internet tra l’utente e il sito Web. Questo tipo di attacco si verifica nei siti Web che usano il protocollo HTTP, meno sicuro del protocollo HTTPS. Con il protocollo HTTP, i cookie vengono trasmessi come testo normale all’interno delle intestazioni delle richieste HTTP: in altre parole, si tratta di file non criptati. Un malintenzionato può facilmente intercettare il traffico tra l’utente e il sito Web ed estrarre i cookie.
Questi attacchi si verificano spesso sulle reti Wi-Fi pubbliche, soprattutto se non protette dai protocolli WPA2 o WPA3. Per questo motivo è consigliabile prestare estrema attenzione quando si usano gli hotspot pubblici. È molto più sicuro usare i dati mobili. Per chi viaggia all’estero è una buona idea usare una eSIM.
Scripting intersito (XSS)
Lo scripting intersito si colloca a buon ragione tra le principali vulnerabilità della sicurezza sul Web. Questo tipo di attacco consente a malintenzionati di ottenere l'accesso ai dati di un sito, inclusi i cookie contenenti gli ID di sessione.
Ecco come funziona: l'utente malintenzionato rileva una vulnerabilità nel codice sorgente del sito Web e inietta uno script dannoso; fatto ciò, per rubare tutti i cookie deve solamente aspettare che l'utente visiti la pagina infetta. Lo script otterrà così accesso completo ai cookie, che saranno inviati all'utente malintenzionato.
Falsificazione di richieste tra siti (CSRF/XSRF)
A differenza di altri tipi di attacchi, la falsificazione delle richieste tra siti sfrutta la relazione di attendibilità tra un sito Web e il browser. Un utente malintenzionato induce con l'inganno il browser di un utente autenticato a eseguire un'azione indesiderata a sua insaputa, ad esempio la modifica di una password o l'eliminazione di dati, ad esempio la cancellazione di un video.
Per questo tipo di attacco, l'autore delle minacce crea una pagina Web o un'e-mail contenente un collegamento dannoso, codice HTML o uno script con una richiesta al sito Web vulnerabile. È sufficiente aprire la pagina o l'e-mail o fare clic sul collegamento per consentire al browser di inviare automaticamente la richiesta dannosa al sito di destinazione. Tutti i cookie dell'utente per quel sito verranno allegati alla richiesta. Ritenendo che sia l'utente legittimo a richiedere, ad esempio, la modifica della password o l'eliminazione del canale, il sito eseguirà la richiesta.
Ecco perché è consigliabile non aprire i collegamenti ricevuti da sconosciuti e installare una soluzione di protezione affidabile che possa avvisare l'utente della presenza di collegamenti o script dannosi.
ID di sessione prevedibili
A volte gli autori degli attacchi non hanno bisogno di usare schemi complessi: possono semplicemente indovinare l'ID di sessione. In alcuni siti Web, gli ID di sessione sono generati da algoritmi prevedibili e potrebbero contenere informazioni come l'indirizzo IP più una sequenza di caratteri facilmente riproducibile.
Per mettere a punto questo tipo di attacco, gli hacker devono raccogliere un numero sufficiente di ID campione, analizzarli e capire l'algoritmo di generazione per prevedere autonomamente gli ID di sessione.
Esistono altri modi per rubare un ID di sessione, ad esempio la correzione della sessione, il lancio dei cookie e gli attacchi man-in-the-middle (MitM). Questi metodi sono trattati nel nostro post Securelist dedicato.
Come proteggersi dai furti di cookie
Gran parte della responsabilità della sicurezza dei cookie spetta agli sviluppatori di siti Web. Appositi suggerimenti sono parte del nostro rapporto completo su Securelist.
Tutti noi però possiamo fare qualcosa per rimanere al sicuro online.
- Immettiamo i nostri dati personali solo nei siti Web che usano il protocollo HTTPS. Se viene visualizzato "HTTP" nella barra degli indirizzi, non accettare i cookie e non inviare informazioni riservate come accessi, password o dettagli della carta di credito.
- Prestiamo attenzione agli avvisi del browser. Se viene visualizzato un avviso relativo a un certificato di sicurezza non valido o sospetto quando visiti un sito, chiudi immediatamente la pagina.
- Aggiorniamo regolarmente i browser o abilitiamo gli aggiornamenti automatici. Questo aiuta a proteggersi dalle vulnerabilità note.
- Svuotiamo regolarmente i cookie del browser e la cache. Questo impedisce lo sfruttamento di file cookie e ID di sessione obsoleti e potenzialmente divulgati. La maggior parte dei browser dispone di un'impostazione per eliminare automaticamente questi dati alla chiusura.
- È opportuno stare alla larga da collegamenti sospetti. Questo vale soprattutto per i collegamenti ricevuti da sconosciuti in un'app di messaggistica o tramite e-mail. Se è difficile distinguere tra un collegamento legittimo e uno di phishing, installa una soluzione di sicurezza capace di emettere avvisi prima di visitare un sito dannoso.
- Abilitiamo l'autenticazione a due fattori (2FA) ove possibile. Kaspersky Password Manager è un modo pratico per archiviare i token 2FA e generare codici monouso. Si sincronizza su tutti i dispositivi, il che rende molto più difficile per un utente malintenzionato accedere a un account legittimo al termine di una sessione, pur riuscendo a rubare l'ID di sessione.
- Rifiutiamo di accettare tutti i cookie su tutti i siti Web. Accettare ogni cookie da ogni sito non è la strategia migliore. Molti siti Web ora offrono la possibilità di scegliere tra accettare tutti i cookie o solo quelli essenziali. Quando possibile, scegli l'opzione "solo cookie obbligatori/essenziali", poiché sono quelli necessari al sito per funzionare.
- Connettiamoci alle reti Wi-Fi pubbliche solo come ultima risorsa. Spesso sono scarsamente protette, cosa di cui gli autori degli attacchi traggono vantaggio. Se proprio non puoi fare a meno di navigare, evita di accedere ai social media o agli account di messaggistica, di usare l'online banking o di accedere ad altri servizi che richiedono autenticazione.
Per saperne di più sui cookie consigliamo questi articoli:
Come bloccare i cookie nel vostro browser
Mozilla e la tecnologia di attribuzione a tutela della privacy
Come capire se un sito sta prendendo le vostre impronte digitali (del browser)
Come controllare i cookie: un esperimento nel mondo reale