0

Analizator sigurnosnih zaglavlja

Zalijepite sirova HTTP zaglavlja odgovora iz alata curl -I ili kartice Mreža u DevToolsima i dobit ćete ocjenjenu sigurnosnu reviziju — pravi parser gramatike Content-Security-Policy plus HSTS, X-Frame-Options, oznake kolačića i više, potpuno izvanmrežno.

🔒 U potpunosti se obrađuje u vašem pregledniku — ništa što ovdje unesete nikada se ne učitava.

Obrada... 0%
Raščlanjujem zaglavlja
Analiziram CSP
Bodovanje
Gotovo

Rezultat

Zaglavlja odgovora nose većinu stvarne sigurnosne politike web stranice koju provodi preglednik, ali čitanje naoko lako je pogrešno protumačiti: Content-Security-Policy može izgledati strogo na prvi pogled, a tiho dopuštati 'unsafe-inline' skripte, a Strict-Transport-Security zaglavlje može biti prisutno s toliko kratkim max-age da gotovo ništa ne radi. Ovaj alat uzima sirovi blok zaglavlja koji zalijepite — kopiran izravno iz alata curl -I, Postmana ili zahtjeva s kartice Mreža u DevToolsima preglednika — i provodi ga kroz istu vrstu provjera koje koriste dobro poznati online ocjenjivači zaglavlja, u potpunosti unutar vašeg preglednika. Ništa se ne dohvaća: analizira se samo ono što zalijepite, što znači da radi identično za javno produkcijsko mjesto, interni staging poslužitelj ili krajnju točku iza vatrozida koju nijedan vanjski skener nikada ne bi mogao dosegnuti.

Središnji dio je pravi parser gramatike Content-Security-Policy, a ne popis za provjeru. Vrijednost zaglavlja dijeli se na direktive po točka-zarezima, a izvorišni popis svake direktive dijeli se i provjerava zasebno: direktive povezane sa skriptama i stilovima označavaju se ako dopuštaju 'unsafe-inline' ili 'unsafe-eval', svaka direktiva označava se za goli univerzalni znak izvora '*' (s dodatnom ozbiljnošću kada se taj univerzalni znak nalazi na script-src, object-src, base-uri ili default-src), široki izvori shema poput 'https:' na direktivi za skripte ističu se kao gotovo jednako permisivni kao univerzalni znak, a politika kao cjelina provjerava se za nedostajući fallback default-src i za zastarjele direktive (block-all-mixed-content, plugin-types, referrer, reflected-xss) koje moderni preglednici jednostavno ignoriraju. CSP poslan samo kao Content-Security-Policy-Report-Only prepoznaje se i označava kao da se još ne provodi, različito od potpuno nedostajuće politike.

Osim CSP-a, alat provjerava Strict-Transport-Security raščlanjujući njegovu direktivu max-age i označavajući vrijednosti kraće od otprilike šest mjeseci kao prekratke da bi bile smisleno učinkovite, plus jesu li postavljene includeSubDomains i preload. X-Content-Type-Options mora biti točan niz 'nosniff' ili se označava kao da ga preglednici ignoriraju. X-Frame-Options provjerava se za DENY ili SAMEORIGIN, ali alat je također svjestan da je CSP direktiva frame-ancestors moderna zamjena za clickjacking zaštitu — ako je ona prisutna, X-Frame-Options se tretira kao pokriveno čak i kada je samo naslijeđeno zaglavlje odsutno. Referrer-Policy provjerava se prema stvarnom popisu valjanih ključnih riječi i označava ako je postavljena na vrijednost 'unsafe-url' koja otkriva URL-ove, Permissions-Policy provjerava se za prisutnost, a svaki pronađeni Set-Cookie redak raščlanjuje se za svoje atribute Secure, HttpOnly i SameSite, uključujući specifično pravilo da SameSite=None kolačići bez Secure-a bivaju tiho odbijeni od strane preglednika.

Svaka provjera proizvodi jedno od tri iskrena stanja — dobro, treba pažnju ili nedostaje — s objašnjenjem jednostavnim jezikom zašto je to zaglavlje važno za stvarne napade (XSS, clickjacking, krađa kolačića, downgrade protokola), a ukupna ocjena A-F transparentan je zbroj bodova po zaglavlju, a ne neprovidni rezultat. Cijeli izvještaj može se kopirati kao obični tekst jednim klikom za lijepljenje u pull request, tiket ili sigurnosnu reviziju, a budući da se raščlanjivanje u potpunosti odvija iz zalijepljenog teksta, ovaj je alat jednako koristan za reviziju zaglavlja vlastite stranice, pregled odgovora dobavljača prije integracije s njim ili dvostruku provjeru promjene konfiguracije prije nego što se objavi.