Il problema di sicurezza Strict-Transport-Security in WordPress

Hai appena analizzato la tua piattaforma e ti è stato comunicato che manca dell’Header di risposta HTTP Strict-Transport-Security, ma non sai minimamente cosa sia e come fare per integrarlo nel codice del tuo sito web? Non preoccuparti, ti aiuto io! Qui ti farò vedere come risolvere il problema di sicurezza Strict-Transport-Security in WordPress.

Devi sapere che, nonostante l’uso di antivirus e antimalware vari, il tuo sito costruito su CMS WordPress, potrebbe mancare di certi “accorgimenti” ed essere esposto agli attacchi dei numerosi malintenzionati che girano per la rete. Nonostante io sia dell’idea che, per stare sicuri, sia meglio rivolgersi ad un professionista e non fare da se, qui ti farò vedere un plugin utile per ovviare al problema Strict-Transport-Security mancante e non solo.

Ma cos’é lo Strict-Transport-Security?

In poche parole, l’Header di risposta HTTP Strict-Transport-Security (abbreviato come HSTS) è una funzionalità di sicurezza che consente ad un sito web di comunicare ai browser che tutte le richieste devono essere effettuate usando HTTPS invece di HTTP.

Ok, e quindi a cosa serve questo “HTTPS”? l’HyperText Transfer Protocol over Secure Socket Layer(HTTPS), (anche noto come HTTP over TLSHTTP over SSL e HTTP Secure) è un protocollo per la comunicazione sicura attraverso una rete di computer utilizzato su Internet. Consiste nella comunicazione tramite il protocollo HTTP(Hypertext Transfer Protocol) all’interno di una connessione criptata, tramite crittografia asimmetrica, dal Transport Layer Security(TLS) o dal suo predecessore, Secure Sockets Layer(SSL) fornendo come requisiti chiave:

  1. Un’autenticazione del sito web visitato;
  2. Protezione della privacy (riservatezza o confidenzialità);
  3. Integrità dei dati scambiati tra le parti comunicanti.

Si ma in poche parole? Se un sito web accetta connessioni attraverso HTTP e reindirizza su HTTPS, l’utente potrebbe inizializzare la connessione non cifrata, prima di essere rediretto, ad esempio se digitasse http://www.ciao.com/ o solamente ciao.com

Questo sistema apre ad un potenziale attacco di tipo man-in-the-middle, dove la redirezione può essere sfruttata per indirizzare l’attaccante ad un sito malevolo invece che alla versione sicura della pagina originale.

L’Header HTTP Strict Transport Security consente ad un sito web di informare il browser che non dovrebbe mai caricare il sito utilizzando HTTP e dovrebbe automaticamente convertire i tentativi di accesso al sito tramite HTTP, in HTTPS. Capito no?!

Strict-Transport-Security con il plugin HTTP Headers

Puoi analizzare la sicurezza delle impostazioni Headers del tuo sito web tramite il sito web securityheaders.com. Qui, una volta analizzato il tuo sito web, vedrai in rosso cosa manca e cosa integrare: un sito protetto è simboleggiato dalla lettera A, uno pmeno protetto dalla lettera B e così via.

Strict-Transport-Security - WordPress

Ma come posso fare per avere una lettera A? Ti basterà installare un Plugin! Quindi recati nella bacheca del tuo sito WordPress, vai nei plugin ed cerca “HTTP Headers“. Il plugin è caratterizzato da un logo dove le lettere H T T P sono disposti in quattro riquadri colorati.

Una volta installato ed attivato il plugin, recati su “Impostazioni” (nella colonna sinistra della bacheca di WordPress) e poi clicca su HTTP Headers. Tutto quello che devi fare ora è cliccare su “Security“. Qui puoi abilitare tutto quello che vuoi, ma generalmente ne bastano alcuni fondamentali.

Puoi abilitare “X-Frame-Option“, cliccando su “Edit”, impostare poi “On” e lasciare “DENY”. (Non ti spiegherò cosa faccia ogni opzioni, ma potrai leggerne le info direttamente sotto ogni dicitura, purtroppo solo in inglese ma facilmente traducibili).

Torna indietro ed attiva anche “X-XSS-Protection” impostandolo su “On” e “mode=block”, poi torna ancora indietro ed attiva “Cookie Security“, spuntando “Secure” e “HttpOnly”. Nella sezione “Caching”, nel pannello iniziale del Plugin, attiva Cache-Control a max-age 600 secondi.

Ma quello che ci interessava è lo Strict-Transport-Security(sempre nella sezione Security), quindi individua la voce, clicca poi su “Edit” ed imposta max-age a un anno(31536000 secondi). Ora, quando andrai ad effettuare la verifica con securityheaders.com, vedrai che la voce Strict-Transport-Security sarà verde e quindi presente nel tuo sito web. Facile no?!

Premetto che usare un plugin per la sicurezza non è sempre l’ideale ed è meglio affidarsi ad un professionista, ma, in caso estremo, HTTP Headers può aiutare a stare più tranquilli! Il plugin non farà altro che aggiungere delle funzioni la file .htaccess del tuo sito web. Ti consiglio inoltre di informarti su cosa attivare e non, e non seguire le mie indicazioni come fossero le uniche attendibili. Troverai maggiori info su: Headers/Strict-Transport-Security, developers.google.com e youtu.be/0YMrFcHHo28. Bene, ti ho fatto vedere come risolvere il problema di sicurezza Strict-Transport-Security in WordPress. Spero di esserti stato di aiuto, ciao e alla prossima! Leggi anche: come-proteggere-il-login-di-wordpress.