Inverkan
Frånvaron av säkerhetsrubriker gör att angripare kan utföra clickjacking, stjäla sessionscookies eller köra cross-site scripting (XSS) [S1]. Utan dessa instruktioner kan webbläsare inte upprätthålla säkerhetsgränser, vilket leder till potentiell dataexfiltrering och obehöriga användaråtgärder [S2].
Rotorsak
Problemet beror på ett misslyckande med att konfigurera webbservrar eller applikationsramverk för att inkludera vanliga HTTP-säkerhetsrubriker. Även om utveckling ofta prioriterar funktionell HTML och CSS [S1], utelämnas säkerhetskonfigurationer ofta. Revisionsverktyg som MDN Observatory är utformade för att upptäcka dessa saknade defensiva lager och säkerställa att interaktionen mellan webbläsaren och servern är säker [S2].
Tekniska detaljer
Säkerhetsrubriker förser webbläsaren med specifika säkerhetsdirektiv för att mildra vanliga sårbarheter:
- Innehållssäkerhetspolicy (CSP): Styr vilka resurser som kan laddas, förhindrar obehörig skriptkörning och datainjektion [S1].
- Strict-Transport-Security (HSTS): Säkerställer att webbläsaren endast kommunicerar över säkra HTTPS-anslutningar [S2].
- X-Frame-Options: Förhindrar att applikationen renderas i en iframe, vilket är ett primärt försvar mot clickjacking [S1].
- X-Content-Type-Options: Förhindrar webbläsaren från att tolka filer som en annan MIME-typ än vad som anges, vilket stoppar MIME-sniffande attacker [S2].
Hur FixVibe testar det
FixVibe kunde upptäcka detta genom att analysera HTTP-svarshuvudena i en webbapplikation. Genom att benchmarka resultaten mot MDN Observatory-standarderna [S2], kan FixVibe flagga saknade eller felkonfigurerade rubriker som CSP, HSTS och X-Frame-Options.
Fixa
Uppdatera webbservern (t.ex. Nginx, Apache) eller programmellanvara för att inkludera följande rubriker i alla svar som en del av en standardsäkerhetsposition [S1]:
- Content-Security-Policy: Begränsa resurskällor till betrodda domäner.
- Strict-Transport-Security: Framtvinga HTTPS med en lång
max-age. - X-Content-Type-Options: Ställ in på
nosniff[S2]. - X-Frame-Options: Ställ in på
DENYellerSAMEORIGINför att förhindra clickjacking [S1].
