Risposta rapida
Gli header di sicurezza sono istruzioni che il server invia al browser insieme alla pagina. Non si vedono durante la normale navigazione: indicano al browser come comportarsi, per esempio quali risorse può caricare, se può mostrare la pagina dentro un altro sito e quali informazioni inviare quando segui un link.
Possono aggiungere protezioni preventive per chi visita il sito. Se mancano, alcune restrizioni potrebbero non essere disponibili; questo, da solo, non significa che il sito sia vulnerabile o compromesso.
Quali istruzioni possono dare al browser
- Content-Security-Policy (CSP): può limitare da quali fonti la pagina carica file come script e immagini, e quali script può eseguire.
- Strict-Transport-Security (HSTS): può far usare al browser HTTPS, la connessione cifrata, nelle visite successive al sito.
- X-Frame-Options: può limitare la visualizzazione della pagina dentro un riquadro incorporato in un altro sito, riducendo alcuni tentativi di ingannare l'utente.
- X-Content-Type-Options: può impedire al browser di trattare un file come un tipo di contenuto diverso da quello dichiarato dal server.
- Referrer-Policy: può limitare quante informazioni sull'indirizzo della pagina di provenienza vengono inviate quando si apre un'altra destinazione.
Perché è utile e quanto preoccuparsi
Una protezione mancante può lasciare al browser meno strumenti per limitare contenuti indesiderati, incorporamenti ingannevoli o la condivisione dell'indirizzo della pagina visitata. Per esempio, senza una restrizione sull'incorporamento, una pagina potrebbe essere mostrata in un altro sito per confondere chi la usa; altre difese potrebbero comunque impedirlo. L'effetto concreto dipende dalla pagina e da come ogni istruzione è configurata.
La scheda della guida mostra Moderate (moderata); per un singolo header applicabile assente, TrustyRunner riporta una segnalazione Low (bassa). Queste etichette hanno ambiti diversi e non dimostrano una vulnerabilità: indicano una protezione preventiva da valutare nel contesto del sito, senza dedurre un'emergenza automatica.
Che cosa osserva TrustyRunner
TrustyRunner controlla questi cinque header per mostrarti quali istruzioni preventive compaiono in una specifica risposta del sito: quella finale raggiunta dalla richiesta, anche dopo eventuali reindirizzamenti. Registra se ciascuno è presente, assente o presente ma vuoto, insieme al protocollo finale (HTTP o HTTPS) e allo stato della risposta. Anche una risposta di reindirizzamento o di errore può essere esaminata.
HSTS non è applicabile se la risposta finale usa HTTP, anche quando l'header è materialmente presente. Se la richiesta fallisce e non arriva una risposta esaminabile, il controllo non inventa header mancanti.
Come leggere i risultati
Il risultato descrive ciò che compare nella risposta esaminata. La presenza di un header non dimostra che il suo valore sia valido o che la protezione funzioni come previsto.
- Header applicabile assente: la risposta osservata non lo inviava. È un punto da valutare nella configurazione di quella risposta.
- Header presente ma vuoto: non equivale a un header assente; il controllo lo conserva come osservazione separata.
- Header applicabile presente: il controllo lo registra come presente per quella risposta, senza attestare che il suo valore sia valido o che produca l'effetto desiderato.
- Risultati diversi tra header: alcuni possono essere presenti e altri assenti o vuoti; il riepilogo non certifica per questo la sicurezza complessiva.
- Reindirizzamento, risposta finale HTTP o stato di errore: sono informazioni sul percorso e sulla risposta osservata, non prove automatiche di un problema negli header.
- Richiesta fallita: il dato sugli header non è disponibile; non è una prova che manchino.
Cosa fare con prudenza
- Individua la risposta interessata e verifica quale configurazione la genera: il sito, il server o un servizio che distribuisce le pagine, come una CDN.
- Se un header applicabile è assente, decidi prima se serve al comportamento previsto per quella pagina o risposta. Per un valore vuoto, esamina la configurazione che lo genera.
- Modifica una regola alla volta e prova i cambiamenti in un ambiente adatto o su pagine rappresentative: alcune istruzioni possono cambiare il modo in cui il browser carica risorse o incorpora contenuti.
- Se la risposta non era disponibile o non era quella attesa, raccogli prima evidenza dalla risposta corretta.
Limiti della verifica
La verifica riguarda una risposta finale osservata, non tutte le pagine, gli indirizzi, i sottodomini, i server che distribuiscono il sito o le varianti offerte a utenti diversi. Un header presente non dimostra che CSP o HSTS siano validi o efficaci; un header assente non dimostra una compromissione.
Questo controllo non prova che il sito sia privo di problemi che permettono di inserire codice indesiderato (XSS) o di ingannare l'utente tramite pagine incorporate (clickjacking). Non certifica CSP, HSTS o la sicurezza complessiva del sito e non sostituisce una revisione della configurazione nel suo contesto.
Verifica con una nuova scansione
Dopo una modifica, esegui una nuova scansione e confronta la risposta finale nuovamente osservata: presenza, assenza o valore vuoto possono cambiare. Il confronto conferma soltanto ciò che la nuova risposta espone a TrustyRunner, entro il perimetro della scansione.