HTTP Strict Transport Security (HSTS) - migliorare la sicurezza del sito

Possiamo fare di meglio con l'HTTPS per la sicurezza?

Come noto, HTTPS è uno standard che garantisce la sicurezza nella comunicazione tra un sito web e il browser del visitatore, tramite una connessione criptata, che funziona grazie al certificato di sicurezza del sito.

Tuttavia, esiste la possibilità che la comunicazione avvenga anche con canale HTTP, ad esempio prima del Redirect in HTTPS oppure per un attacco che ne forza il downgrade.

Se vogliamo indicare al browser che il sito deve essere accessibile solo in HTTPS possiamo fare una dichiarazione HTTP Strict Transport Security o HSTS nel web server, ad esempio per il web server Apache:

Strict-Transport-Security: max-age=63072000; includeSubDomains; preload

Che indica sostanzialmente che Strict-Transport-Security è attivo e che questa direttiva "vale" per un valore di max-age (1 anno espresso in secondi) dopo la prima richiesta.

Attenzione: implementare HSTS su siti esistenti è una operazione delicata perché di fatto impedisce ai browser di accedere a delle risorse in http:// dopo un primo accesso, si consiglia quindi di iniziare con un valore di max-age dapprima basso (per poter porre rimedio in caso di problemi).

Ma se è la prima volta che il nostro browser accede al sito? Come fa a stabilire una comunicazione esclusivamente in HTTPS? Probabilmente potrebbe tentare HTTP per poi fare un redirect. Esiste una soluzione anche per questo.

HSTS preload list

Supponendo che un sito rispetti i seguenti requisiti:

  • dispone di un certificato valido
  • effettua redirect da HTTP a HTTPS sullo stesso server (solo se risponde sulla porta 80/tcp)
  • tutti gli eventuali sottodomini sono serviti in HTTPS
  • il web server implementa HSTS con attributi minimi richiesti

Il gestore del sito può validare e sottoporre il sito tramite:

hstspreload.org

Effettuato il Sumbit, i maggiori browser (Chrome, Firefox, Opera, Safari, IE 11 and Edge) incorporeranno l'indirizzo in modo da sapere a priori che il sito in questione dovrà essere accessibile solo in HTTPS: senza se e senza ma, anche se è la prima volta che si accede a quel sito, inclusi tutti i sottodomini.


Pubblicato il 28/11/2023

Registra a solo €2,00 un dominio con bitName!

...

Collega il dominio al tuo sito creato con Wordpress.com

Come utilizzare un dominio che hai già acquistato da un altro provider per collegarlo al sito creato con Wordpress.com.

...

Come pubblica il sito con Squarespace con il tuo dominio

Come utilizzare un dominio personalizzato per il sito creato Squarespace. Collegare un dominio già registrato con bitName o altro gestore a Squarespace per la pubblicazione del sito.

...

TTL (Time To Live) tempo di propagazione DNS

Cosa si intende quando si parla di TTL (Time To Live) in riferimento a un dominio e perché può essere importante conoscere questo valore?

Vuoi saperne di più su bitName? Contattaci subito!