Impact
Odsustvo sigurnosnih zaglavlja omogućava napadačima da izvrše klikanje, ukradu kolačiće sesije ili izvrše skriptovanje na više lokacija (XSS) [S1]. Bez ovih uputstava, pretraživači ne mogu nametnuti sigurnosne granice, što dovodi do potencijalne eksfiltracije podataka i neovlaštenih radnji korisnika [S2].
Osnovni uzrok
Problem proizlazi iz neuspjeha da se konfiguriraju web serveri ili okviri aplikacija da uključe standardna HTTP sigurnosna zaglavlja. Dok razvoj često daje prioritet funkcionalnom HTML-u i CSS-u [S1], sigurnosne konfiguracije se često izostavljaju. Alati za reviziju kao što je MDN Observatory su dizajnirani da otkriju ove nedostajuće odbrambene slojeve i osiguraju da je interakcija između pretraživača i servera sigurna [S2].
Tehnički detalji
Sigurnosna zaglavlja pružaju pretraživaču specifične sigurnosne direktive za ublažavanje uobičajenih ranjivosti:
- Politika sigurnosti sadržaja (CSP): Kontrolira koji se resursi mogu učitati, sprječavajući neovlašteno izvršavanje skripte i ubacivanje podataka [S1].
- Strict-Transport-Security (HSTS): Osigurava da pretraživač komunicira samo preko sigurnih HTTPS veza [S2].
- X-Frame-Options: Sprečava da se aplikacija prikaže u iframe-u, što je primarna odbrana od klikanja [S1].
- X-Content-Type-Options: Sprečava pretraživač da tumači datoteke kao MIME tip različitog od onoga što je specificirano, zaustavljajući napade MIME-sniffing [S2].
Kako FixVibe testira za to
FixVibe bi to mogao otkriti analizom zaglavlja HTTP odgovora web aplikacije. Upoređujući rezultate sa standardima MDN opservatorije [S2], FixVibe može označiti nedostajuća ili pogrešno konfigurisana zaglavlja kao što su CSP, HSTS, i XCVFIXVIBETOKEN4ZXFCV.
Popravi
Ažurirajte web server (npr. Nginx, Apache) ili međuverski softver aplikacije kako biste uključili sljedeća zaglavlja u sve odgovore kao dio standardnog sigurnosnog položaja [S1]:
- Content-Security-Policy: Ograničite izvore resursa na pouzdane domene.
- Strict-Transport-Security: Nametnite HTTPS sa dugim
max-age. - X-Content-Type-Options: Postavite na
nosniff[S2]. - Opcije X-Frame: Postavite na
DENYiliSAMEORIGINda biste spriječili klikanje [S1].
