Co jsou bezpečnostní hlavičky
Server posílá s každou stránkou hlavičky HTTP. Některé z nich zapínají ochrany přímo v prohlížeči:
- Content-Security-Policy (CSP) určuje, odkud smí stránka načítat skripty, styly a další zdroje. Omezuje škody, když se do stránky dostane cizí kód.
- Strict-Transport-Security (HSTS) nařídí otevírat web jen přes HTTPS. Doporučená platnost je aspoň rok (max-age=31536000).
- X-Frame-Options nebo CSP frame-ancestors brání vložit web do cizí stránky a podvrhnout návštěvníkovi kliknutí.
- X-Content-Type-Options: nosniff zakáže prohlížeči hádat typ souboru.
- Referrer-Policy hlídá, kolik z adresy stránky se pošle jiným webům; rozumná volba je strict-origin-when-cross-origin.
- Permissions-Policy vypne funkce, které web nepotřebuje, třeba kameru, mikrofon nebo polohu.
K tomu patří soubor security.txt na adrese /.well-known/security.txt (RFC 9116) s kontaktem pro hlášení bezpečnostních chyb a datem platnosti.
Proč na tom záleží malé firmě
Malé weby běží často na redakčním systému s řadou pluginů, a když je některý zranitelný, hlavičky zmenší, co útočník s návštěvníky zvládne. Chybějící hlavičky také vidí každý, kdo web prověřuje, například zadavatel výběrového řízení nebo pojišťovna.
Časté chyby v bezpečnostních hlavičkách
- CSP s 'unsafe-inline' a 'unsafe-eval' pro skripty, nebo jen upgrade-insecure-requests, které skripty neomezuje.
- HSTS s platností pár minut nebo dní.
- X-Frame-Options v tagu meta, kde prohlížeč tuto ochranu nepoužije.
- Hlavičky Server nebo X-Powered-By prozrazují přesnou verzi softwaru.
- Soubor security.txt s prošlým datem Expires.
Co zkontroluje WebMeter a co ne
WebMeter čte hlavičky, které server pošle s úvodní stránkou: CSP, HSTS, ochranu proti vložení do rámu, X-Content-Type-Options, Referrer-Policy a Permissions-Policy. Posoudí i atributy cookies, SRI u skriptů z cizích domén, CORS, prozrazené verze softwaru a soubor security.txt. Pro srovnání odhadne známky Mozilla Observatory a securityheaders.com.
Hodnotí jen úvodní stránku, ne API ani další části webu, a nic nezkouší. Dobré hlavičky neopraví chyby v aplikaci ani zastaralý software.