Tutte le guide
Gravità AltoHeader di sicurezza

HTTP Strict Transport Security (HSTS) spiegato

HTTP Strict Transport Security (HSTS) è un header di risposta che indica ai browser di connettersi al tuo sito esclusivamente tramite HTTPS. Una volta visto, il browser rifiuta le connessioni HTTP in chiaro verso il tuo dominio per tutta la durata della policy.

Che cos'è

HSTS viene fornito tramite l'header Strict-Transport-Security, ad es. max-age=31536000; includeSubDomains; preload. max-age indica per quanto tempo (in secondi) il browser ricorda la regola.

Dopo la prima visita HTTPS, il browser aggiorna automaticamente ogni richiesta futura a HTTPS: l'utente non può finire per sbaglio sulla versione non sicura e un malintenzionato non può declassare la connessione a HTTP.

Perché è importante

Senza HSTS, la prima richiesta di un utente (digitando yourdomain.com) viaggia tramite HTTP in chiaro e può essere intercettata prima ancora che avvenga il tuo redirect a HTTPS: il classico attacco di SSL stripping.

Una policy HSTS debole indebolisce la protezione: un max-age breve riduce la finestra di applicazione e omettere includeSubDomains lascia ogni sottodominio esposto al downgrade.

Come risolverlo

Invia un header robusto

Usa un max-age lungo (un anno), copri i sottodomini e attiva il preloading.

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Verifica prima che HTTPS sia ovunque

Aggiungi includeSubDomains e preload solo dopo che ogni sottodominio serve HTTPS valido, altrimenti puoi bloccare l'accesso ai sottodomini non ancora pronti.

Invia il dominio alla lista di preload

Quando il tuo header include 'preload', registra il tuo dominio su hstspreload.org così che i browser impongano HTTPS fin dalla primissima visita.

FAQ

Quale max-age dovrei usare?

Almeno 15552000 (6 mesi); 31536000 (1 anno) è la raccomandazione comune ed è richiesto per la lista di preload.

HSTS può bloccarmi fuori dal mio stesso sito?

Solo se in seguito devi servire tramite HTTP o hai un sottodominio senza HTTPS. Testa a fondo prima di abilitare includeSubDomains o preload.

La tua app è interessata?

AppSafe controlla questo e decine di altri problemi in un'unica scansione gratuita.

Scansiona la mia app gratis