Role bezpečnostních hlaviček
Bezpečnostní hlavičky HTTP poskytují webovým aplikacím standardizovaný mechanismus, který instruuje prohlížeče, aby během relace prosazovaly konkrétní bezpečnostní zásady [S1] [S2]. Tyto hlavičky fungují jako kritická vrstva hloubkové obrany a snižují rizika, která nemusí být plně řešena samotnou aplikační logikou.
Zásady zabezpečení obsahu (CSP)
Zásady zabezpečení obsahu (CSP) je vrstva zabezpečení, která pomáhá detekovat a zmírňovat určité typy útoků, včetně Cross-Site Scripting (XSS) a útoků vkládání dat [S1]. Definováním zásady, která určuje, které dynamické prostředky se mohou načítat, CSP zabrání prohlížeči ve spouštění škodlivých skriptů vložených útočníkem [S1]. To účinně omezuje spouštění neautorizovaného kódu, i když v aplikaci existuje zranitelnost vkládání.
HTTP Strict Transport Security (HSTS)
HTTP Strict Transport Security (HSTS) je mechanismus, který umožňuje webu informovat prohlížeče, že by měl být přístupný pouze pomocí HTTPS, nikoli HTTP [S2]. Tím je zajištěno, že veškerá komunikace mezi klientem a serverem je šifrována [S2], chrání to před útoky na nižší verzi protokolu a únosy souborů cookie. Jakmile prohlížeč obdrží tuto hlavičku, automaticky převede všechny následující pokusy o přístup k webu přes HTTP na požadavky HTTPS.
Bezpečnostní důsledky chybějících záhlaví
Aplikace, které tyto hlavičky neimplementují, jsou vystaveny výrazně vyššímu riziku kompromisu na straně klienta. Absence zásad zabezpečení obsahu umožňuje spouštění neautorizovaných skriptů, což může vést k únosu relace, neoprávněné exfiltraci dat nebo znehodnocení [S1]. Podobně absence hlavičky HSTS způsobuje, že uživatelé jsou náchylní k útokům typu man-in-the-middle (MITM), zejména během počáteční fáze připojení, kdy útočník může zachytit provoz a přesměrovat uživatele na škodlivou nebo nešifrovanou verzi webu [S2].
Jak to testuje FixVibe
FixVibe to již obsahuje jako pasivní kontrolu skenování. headers.security-headers kontroluje veřejná metadata odpovědi HTTP na přítomnost a sílu Content-Security-Policy, Strict-Transport-Security, X-Frame-Options nebo ZXCVFIXVIBETOKEN5ZCVBCV Referrer-Policy a Permissions-Policy. Hlásí chybějící nebo slabé hodnoty bez zneužití a jeho výzva k opravě poskytuje příklady záhlaví připravených k nasazení pro běžná nastavení aplikací a CDN.
Pokyny k nápravě
Pro zlepšení pozice zabezpečení musí být webové servery nakonfigurovány tak, aby vracely tato záhlaví na všech produkčních trasách. Robustní CSP by měl být přizpůsoben specifickým požadavkům na prostředky aplikace pomocí direktiv jako script-src a object-src k omezení prostředí spouštění skriptů [S1]. Pro zabezpečení přenosu by hlavička Strict-Transport-Security měla být povolena s příslušnou direktivou max-age, aby byla zajištěna trvalá ochrana napříč uživatelskými relacemi [S2].
