L’HTTPS lo conosce il browser

HSTS, cos’è, come funzione e perché è importante.

Iniziamo col dire che quando si mette l’indirizzo di un sito web dentro un browser, per esempio:

http://alessandrobasi.it

il browser invierà una richiesta al server web del sito, successivamente il server web può:

Ma in tutti e due i casi il browser non ha trovato ancora i file del sito, verrà allora richiamato di nuovo il server per eseguire un ulteriore passaggio:

in tutti i casi, il server arriverà a https://www.alessandrobasi.it in cui poi il vostro browser troverà i file del sito.

Qual’è il percorso migliore per ottenere la massima sicurezza nelle connessioni?

Il percorso più sicuro è quello in cui già il primo passaggio del server web è da http://alessandrobasi.it a httpS://alessandrobasi.it

poiché ogni volta che il server vi reindirizza alla chiamata successiva, il vostro browser tiene traccia delle connessioni.

In questo caso da http a httpS il traffico è ancora in chiaro, il redirect successivo invece sarà già criptato e quindi potenzialmente immune a vari attacchi lato client.

Se invece si viene inviati prima a www e poi in https, tutte e due le richieste saranno in chiaro e quindi più vulnerabili ad attacchi.

Ma c’è un metodo ancora più sicuro?

Si, esiste ormai dal 2012 una direttiva chiamata “HTTP Strict Transport Security“, il cui acronimo è HSTS.

Questa direttiva è ormai supportata su gran parte dei browser esistenti, potete controllare dove è supportata su questo sito

Ho già accennato a questo HSTS in

Spiegando a grandi linee quello che faceva, andiamo a vedere nei particolari come funziona.

Qual’è l’obbiettivo del HSTS?

L’obbiettivo è quello di creare subito una connessione sicura col sito, ancor prima di chiedere al server l’url.

Per far ciò il browser deve controllare se il sito che si vuole visitare è nella lista di siti autorizzati (lista HSTS), se lo trova allora aggiungerà https in automatico, senza fare alcuna richiesta al server.

Per vedere se un sito è nella lista HSTS, potete recarvi sul sito hstspreload.org.

Questo sito web non solo controlla se un dominio è nella lista, ma mostra, in caso non ci fosse, quali misure cambiare per richiedere l’inserimento nella lista.

Come inserire il proprio sito nella lista HSTS

Recatevi su hstspreload.org e inserite il dominio che volete aggiungere.

Se è già stato settato tutto a dovere, il sito vi proporrà di inserire il dominio nella lista HSTS, cliccate le due caselle di controllo e cliccate il tasto “Submit” sottostante.

Se tutto è andato bene, il vostro sito sarà nella coda dei siti per essere aggiunti.

Attendete qualche giorno e il vostro sito sarà aggiunto.

Se invece il vostro sito non soddisfa i requisiti, dovrete sistemarli come spiegato dal sito.

Grazie a Cloudflare questo procedimento potrà essere svolto in pochi passaggi.

Bisognerà andare nella sezione “Cripto”, abilitare “Always Use HTTPS” e settare “HTTP Strict Transport Security (HSTS)”, nelle impostazioni di quest’ultimo mettete tutto attivo e in “Max Age Header (max-age)” mettete 12 mesi invece che 6 mesi.

Se questi due parametri sono stati configurati, con molta probabilità potrete inserire il vostro sito nella lista HSTS.

Tornate su hstspreload.org e reinserite il vostro dominio, a questo punto cliccate le due spunte e poi su “Submit”.

Sicurezza migliorata

I siti presenti nella lista HSTS saranno raggiungibili solo tramite HTTPS poiché sarà direttamente il browser che metterà il protocollo sicuro.

In questo modo la connessione, tra il browser e il sito web, non potrà essere soggetta ad attacchi di tipo “Downgrade attack” (forzare da https a http) oppure “cookie hijacking” (furto del session id), entrambi basati sul protocollo http.

Forzando il solo protocollo https il browser si rifiuterà di caricare il sito o i cookie in http e quindi immune agli attacchi elencati sopra.

About the author

alessandrobasi

Sono uno studente appassionato di informatica e computer, frequento l'università Sapienza.

Be the first to comment

Rispondi