Contenuto informativo basato su fonti istituzionali. L’applicazione concreta richiede una valutazione del contesto, del rischio e della normativa vigente.

Dare una funzione precisa a ogni header

Un header è efficace solo se risponde a uno scenario. Strict-Transport-Security fa ricordare al browser di usare HTTPS per il periodo dichiarato; X-Content-Type-Options: nosniff limita l’interpretazione di contenuti con tipo MIME diverso da quello dichiarato; Referrer-Policy riduce le informazioni trasferite durante la navigazione; Permissions-Policy limita funzionalità del browser non necessarie.

Content-Security-Policy merita un progetto separato perché governa origini e comportamenti differenti. La direttiva frame-ancestors è il controllo moderno contro l’incorporamento non autorizzato; X-Frame-Options può essere mantenuto come compatibilità, purché non venga confuso con una CSP completa.

  • HSTS solo dopo aver verificato HTTPS, certificati e sottodomini
  • X-Content-Type-Options insieme a Content-Type corretti
  • Referrer-Policy coerente con analytics e flussi esterni
  • Permissions-Policy basata sulle funzionalità davvero usate
  • CSP e frame-ancestors progettati per pagina o applicazione

Evitare configurazioni copiate senza verifica

Una policy trovata online può interrompere login federati, mappe, calendari, pagamenti, font, strumenti di analytics o API. Prima della distribuzione occorre censire risorse, iframe, endpoint, form e integrazioni, quindi provare la configurazione in un ambiente rappresentativo e osservare gli errori del browser.

HSTS richiede cautela particolare: includeSubDomains estende il vincolo ai sottodomini e preload comporta un impegno operativo ulteriore. Un certificato scaduto o un sottodominio non pronto può diventare irraggiungibile. La durata va aumentata solo dopo una fase controllata e un inventario affidabile.

  • Inventario di domini e servizi incorporati
  • Ambiente di test e piano di rollback
  • Verifica su desktop, mobile e flussi autenticati
  • Responsabile delle eccezioni e data di riesame
  • Controllo dopo modifiche a CMS, CDN e terze parti

Rimuovere consigli diventati obsoleti

X-XSS-Protection non è un controllo moderno: OWASP raccomanda di non impostarlo o di disattivarlo con valore 0, affidandosi a difese contestuali e a una CSP adeguata. Anche Expect-CT ha perso il ruolo di enforcement che aveva in passato. Un inventario degli header deve quindi includere ciclo di vita e motivazione, non solo presenza o assenza.

Le configurazioni duplicate tra web server, CDN, plugin e applicazione possono produrre policy multiple più restrittive del previsto. La verifica deve leggere la risposta finale ricevuta dall’utente, compresi redirect, pagine di errore, download e sottodomini, non soltanto il file di configurazione originario.

Misurare senza scambiare lo score per sicurezza

Mozilla Observatory e strumenti analoghi sono utili per trovare assenze e regressioni, ma analizzano soprattutto comportamenti osservabili dall’esterno. Non verificano in modo completo autenticazione, autorizzazione, gestione delle sessioni, query al database, dipendenze, upload, segreti o logica applicativa.

La baseline va inclusa nel change management e nei test automatici. Un buon risultato documenta risposta HTTP, pagina e data, controlla i flussi principali e collega le eccezioni a un rischio approvato. Il valore non è ottenere una lettera migliore, ma ridurre scenari concreti senza compromettere il servizio.

Domande frequenti

Quali security header sono indispensabili?+

Non esiste una lista identica per ogni sito. HTTPS e HSTS, CSP, protezione dal framing, X-Content-Type-Options e una Referrer-Policy esplicita sono una base frequente; Permissions-Policy e altri controlli dipendono dalle funzioni utilizzate.

Un punteggio A in uno scanner rende sicuro il sito?+

No. Dimostra soltanto che alcuni controlli osservabili soddisfano il modello dello strumento. Codice, identità, autorizzazioni, sessioni, dipendenze e processi richiedono verifiche ulteriori.

Conviene attivare subito HSTS preload?+

No. Prima occorre garantire HTTPS affidabile su dominio e sottodomini, comprendere i requisiti del preload e provare una durata progressiva. Un errore può rendere servizi legittimi non raggiungibili.

Fonti istituzionali

Approfondisci nel sito