Strict Transport Security
Silktide controlla che le tue pagine crittografate indichino ai browser di usare sempre la versione sicura del tuo sito web. Questa istruzione, chiamata Strict Transport Security, impedisce ai browser di connettersi tramite una connessione non crittografata, anche quando un visitatore digita un indirizzo non sicuro o segue un vecchio link.
L'istruzione è un inviato con ogni pagina tramite :
Strict-Transport-Security: max-age=31536000
Perché è importante
Anche un sito web pubblicato interamente tramite HTTPS di solito accetta prima una richiesta non crittografata: il visitatore digita example.com, il browser prova http:\/\/ e il server reindirizza a https:\/\/. Questo singolo passaggio non crittografato è sufficiente perché un aggressore sulla stessa rete intercetti la connessione e mantenga il visitatore su una versione contraffatta o manomessa del sito: un attacco man-in-the-middle.
Strict Transport Security (HSTS) elimina questa vulnerabilità. Dopo che un browser ha rilevato l'header, aggiorna autonomamente ogni richiesta futura a HTTPS, per tutto il tempo indicato da max-age, impedendo che la prima richiesta vulnerabile si verifichi nuovamente.
Come risolvere il problema
- Assicurati innanzitutto che l'intero sito web funzioni tramite HTTPS: una volta attivo HSTS, i browser rifiuteranno completamente la versione non crittografata.
- Configura il server web, la piattaforma di hosting o il per inviare l'header
Strict-Transport-Securitycon tutte le risposte HTTPS. Molte piattaforme offrono un'impostazione HSTS attivabile con un clic. - Imposta un valore significativo per
max-age, espresso in secondi. Inizia con un valore ridotto, ad esempio86400(un giorno), se vuoi un periodo di prova, quindi portalo a un anno (max-age=31536000) quando avrai acquisito sufficiente sicurezza. - Facoltativamente, aggiungi
includeSubDomainsper includere ogni sottodominio, ma solo se tutti supportano HTTPS.
Come esegue il controllo Silktide
- Controlla ogni pagina pubblicata tramite HTTPS per verificare la presenza di un header
Strict-Transport-Securitycon un valore non vuoto. - Segnala la pagina se l'header è assente.
- Le pagine pubblicate tramite connessioni non crittografate vengono ignorate, perché i browser ignorano questo header in tali casi; la protezione di queste pagine è coperta dal controllo della crittografia SSL.
Risoluzione dei problemi
Ho impostato l'header, ma il controllo continua a non riuscire
Verifica che l'header venga inviato dalle pagine esatte sottoposte a scansione, non solo dalla home page. Puoi visualizzare gli header di risposta di una pagina negli strumenti per sviluppatori del browser, nella scheda Rete.
HSTS può impedire l'accesso ai visitatori?
Se abiliti HSTS e in seguito comprometti la configurazione HTTPS, ad esempio a causa di un certificato scaduto, i browser che ricordano l'header rifiuteranno di tornare al sito non crittografato fino alla scadenza di max-age. È una conseguenza prevista: automatizza i rinnovi dei certificati.