Verifica delle intestazioni di sicurezza
Basta inserire l'indirizzo di un sito per esaminare lo stato delle principali intestazioni di sicurezza: HSTS, la politica di sicurezza dei contenuti, X-Frame-Options e le altre. Elenca le intestazioni mancanti e le impostazioni troppo permissive, con indicazioni su come migliorarle.
Diagnosticare le intestazioni di sicurezza di un sito in produzione
Inserite un indirizzo e il server si reca su quel sito, ne recupera le intestazioni di risposta e giudica come siano configurate HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy e Permissions-Policy. Separa ciò che manca da ciò che è presente ma debole, e spiega in ciascun caso dove starebbe il problema.
Ciò che conviene tenere a mente è che un'intestazione presente e un'intestazione efficace sono due cose distinte. HSTS può benissimo esserci e tuttavia un max-age breve lascia una finestra troppo esigua entro cui il browser impone l'HTTPS, sicché la protezione reale resta sottile. Ecco perché questo strumento distingue la promozione dall'avvertimento. L'altro punto è che le intestazioni che tornano non sono state necessariamente aggiunte dal server d'origine. Una CDN o un proxy inverso possono inserirle per via, e allora cambia anche il luogo in cui correggere la configurazione. Ciò che la diagnosi mostra è lo stato visibile dall'esterno; quale strato l'abbia prodotto non può dirlo.
Come si usa
-
Inserite l'indirizzo da esaminare
Indicate un indirizzo pubblicamente raggiungibile che cominci con
https://. - Eseguite il controllo Le destinazioni irraggiungibili dall'esterno, come gli indirizzi IP privati, vengono respinte per prudenza.
- Leggete i giudizi Vengono in tre gradi — promosso, avvertimento e respinto — dove l'avvertimento significa presente ma debole.
- Servitevi delle note per correggere Ogni voce porta una spiegazione del difetto, il che vi consente di stabilire le priorità.
Consigli per sfruttarlo al meglio
- Poiché l'indirizzo indicato è recuperato dal nostro servente, lo strumento non incontra le restrizioni sulla condivisione fra origini diverse e può esaminare le intestazioni di qualunque sito.
- Un valore alto di max-age in HSTS è in linea di principio più sicuro, ma se prevedete di rivedere la gestione dei certificati provate prima con un valore breve e passate poi alla produzione.
- Usandolo insieme allo strumento affine, il verificatore della politica di sicurezza dei contenuti, potrete controllarne in dettaglio anche la sintassi.
- Adottando lo stesso meccanismo del verificatore del file robots.txt, cioè il recupero dal lato del servente a partire da un indirizzo, lo strumento può esaminare qualunque pagina pubblica che non richieda autenticazione.
- Prendete l'abitudine di esaminare periodicamente il vostro sito: una modifica alla rete di distribuzione dei contenuti o al servente intermediario inverso può far sparire senza preavviso le intestazioni di sicurezza.
Quando torna utile
Per l'ultima verifica prima della pubblicazione
Poco prima del lancio potete accertare dall'esterno che le intestazioni previste tornino davvero.
Per prendere esempio da altri siti
Vedere fin dove si siano spinti siti simili vi dà un metro per il vostro livello.
Per confrontare prima e dopo una modifica
Ripetete il controllo una volta aggiunta un'intestazione per accertare che abbia fatto effetto.
Per ispezionare un sito ereditato
Si presta all'inventario che segue un passaggio di consegne, dandovi l'elenco di ciò che manca.
Termini delle intestazioni di sicurezza
- HSTS
- Un'intestazione che costringe l'accesso a passare per HTTPS anziché per HTTP. A meno che
max-agenon raggiunga un anno o più, la protezione non dura abbastanza. - X-Content-Type-Options
- Porre
nosniffimpedisce al browser di indovinare un tipo MIME dal contenuto, il che evita che un file venga eseguito per ciò che non è. - X-Frame-Options
- Un'intestazione che rifiuta di lasciare incorporare il vostro sito in un riquadro. Nelle politiche più recenti il
frame-ancestorsdella CSP assume lo stesso ruolo. - Content-Security-Policy
- Il meccanismo che restringe la provenienza delle risorse caricabili. È il perno della difesa contro l'XSS.
- Referrer-Policy
- Un'intestazione che decide quanta parte dell'indirizzo di provenienza venga consegnata quando un visitatore passa a un altro sito.
- Permissions-Policy
- Un'intestazione che governa quali origini possano usare funzioni come la fotocamera, il microfono e la posizione.
Domande frequenti
A proposito — la storia delle difese contro il dirottamento del clic
L'esame delle configurazioni di sicurezza tramite le intestazioni delle risposte HTTP ha da anni uno standard di fatto in un noto servizio in rete sviluppato dal ricercatore Scott Helme. I servizi stranieri, però, spiegano esiti e motivazioni soltanto in inglese: toolbase.cc offre in alternativa un verificatore proprio, che presenta risultati e ragioni nella lingua di chi legge.
L'intestazione HSTS, cioè la sicurezza rigorosa del trasporto, fu standardizzata nel 2012 dall'ente che cura gli standard di Internet con la norma RFC 6797. All'origine sta un attacco dimostrato nel 2009, in cui si sfruttava il fatto che un utente, digitando l'indirizzo senza il prefisso sicuro, si collegasse una prima volta in HTTP: in quell'istante l'aggressore riscriveva la comunicazione. HSTS fa memorizzare al navigatore che quel dominio va sempre raggiunto in HTTPS, prevenendo i declassamenti dalle visite successive.
L'intestazione X-Frame-Options fu introdotta nel 2009 da Microsoft come estensione propria per la versione 8 del proprio navigatore e in seguito adottata dagli altri, divenendo uno standard di fatto. Il problema di allora era il dirottamento del clic: si sovrapponeva una cornice trasparente al pulsante autentico e si induceva l'utente a premerlo a sua insaputa. Oggi si tende a passare alla più flessibile direttiva frame-ancestors della politica di sicurezza dei contenuti, ma si raccomanda tuttora di indicarle entrambe, come cautela verso i navigatori datati.