Hva gjør X-XSS-beskyttelse?

X-XSS-Protection var en sikkerhetsheader som har eksistert siden versjon 4 av Google Chrome. Den ble designet for å aktivere et verktøy som sjekket innholdet på nettstedet for reflektert skripting på tvers av nettsteder. Alle større nettlesere har nå trukket tilbake støtte for overskriften da den endte opp med å introdusere sikkerhetsfeil. Det anbefales sterkt at du ikke angir overskriften i det hele tatt og i stedet konfigurerer en sterk innholdssikkerhetspolicy.

Tips: Cross-Site Scripting er vanligvis forkortet til akronymet "XSS".

Reflektert skripting på tvers av nettsteder er en XSS-sårbarhetsklasse der utnyttelsen er direkte kodet inn i URL-en og kun påvirker brukeren som besøker URL-en. Reflected XSS er en risiko når nettsiden viser data fra URL-en. For eksempel, hvis en nettbutikk lar deg søke etter produkter, kan den godt ha en URL som ser slik ut "website.com/search? term=gave» og ta med ordet «gave» på siden. Problemet starter hvis noen legger inn JavaScript i URL-en, hvis det ikke er ordentlig renset, kan dette JavaScript kjøres i stedet for å skrives ut på skjermen slik det skal være. Hvis en angriper kunne lure en bruker til å klikke på en lenke med denne typen XSS-nyttelast, kan de kanskje gjøre ting som å ta over økten deres.

X-XSS-Protection var ment å oppdage og forhindre denne typen angrep. Dessverre ble det over tid funnet en rekke bypass og til og med sårbarheter i måten systemet fungerte på. Disse sårbarhetene betydde at implementering av X-XSS-Protection-overskriften ville introdusere et skriptsårbarhet på tvers av nettsteder på et ellers sikkert nettsted.

For å beskytte mot dette, med den forståelse at overskriften Content Security Policy, generelt forkortet til "CSP", inkluderer funksjonalitet for å erstatte den, bestemte nettleserutviklere seg for å pensjonere trekk. De fleste nettlesere, inkludert Chrome, Opera og Edge, har enten fjernet støtte eller i tilfelle av Firefox, aldri implementert det. Det anbefales at nettsteder deaktiverer overskriften for å beskytte de brukerne som fortsatt bruker eldre nettlesere med funksjonen aktivert.

X-XSS-Protection kan erstattes med "unsafe-inline"-innstillingen i CSP-overskriften. Å kunne aktivere denne innstillingen kan ta mye arbeid avhengig av nettstedet, siden det betyr at all JavaScript må være i eksterne skript og ikke kan inkluderes direkte i HTML-en.