HTTP biztonsági fejlécek
Ellenőrizze, hogy a weboldala helyesen van-e beállítva HTTP biztonsági fejlécekkel.
Hogyan működik a fejléc-ellenőrzés
Az eszköz egy szokásos HTTPS GET kérést küld a megadott URL-re, és kiolvassa a válasz fejléceit - ugyanazokat, amelyeket minden böngésző megkap. Az oldal törzséből semmit sem elemzünk; a biztonsági fejlécek teljes egészében a HTTP-válaszban találhatók.
Ezután azokat a fejléceket keressük, amelyek a böngészőoldali védelmeket vezérlik: Strict-Transport-Security (HSTS), Content-Security-Policy (CSP), X-Frame-Options, X-Content-Type-Options és Referrer-Policy. Minden meglévő fejléc növeli a pontszámot, a hiányzók pedig felsorolva jelennek meg, annak magyarázatával, milyen kockázatot hagynak nyitva.
Mivel az ellenőrzés követi az átirányításokat, az eredmény a végső URL-t tükrözi. Ha webhelye HTTP-ről HTTPS-re vagy a csupasz domainről a www-re irányít át, a látott fejlécek a célhoz tartoznak.
Hogyan értelmezze az eredményeket
A pontszám gyors tájékozódásra szolgál, nem tanúsítás. Ami a gyakorlatban számít:
- HSTS - megmondja a böngészőknek, hogy a domainjéhez mindig HTTPS-t használjanak. Legalább fél éves max-age a bevett gyakorlat; az includeSubDomains direktívát csak akkor adja hozzá, ha minden aldomain HTTPS-t szolgál ki.
- CSP - a legerősebb védelem az XSS ellen, de megírni is a legnehezebb. Már egy alapszintű, a szkriptforrásokat korlátozó szabályzat is nagy előrelépés a semmihez képest.
- X-Content-Type-Options: nosniff és X-Frame-Options (vagy a frame-ancestors CSP-direktíva) - olcsó, egysoros védelem a MIME-sniffing és a clickjacking ellen.
Gyakori problémák
A fejléc be van állítva, mégis hiányzóként jelenik meg. Az alkalmazás előtt álló reverse proxy vagy CDN eltávolíthatja vagy felülírhatja a fejléceket. Hasonlítsa össze a választ curl -I paranccsal közvetlenül az origin felé és a nyilvános URL felé, hogy kiderüljön, melyik réteg dobja el.
A CSP jelen van, de hatástalan. A Content-Security-Policy-Report-Only csak naplózza a szabálysértéseket, semmit sem blokkol. Teszteléshez hasznos, de védelmet nem nyújt - váltson a kényszerítő fejlécre, amint a jelentésnapló tiszta.
Különböző útvonalak különböző fejléceket adnak vissza. Az alkalmazás middleware-ében beállított fejlécek nem feltétlenül érvényesek a webszerver által közvetlenül kiszolgált statikus fájlokra vagy a hibaoldalakra. Teszteljen egy statikus fájl URL-jét és egy 404-es oldalt is.
Gyakran ismételt kérdések
Mely biztonsági fejlécekkel rendelkezzen minden webhely?
Észszerű alap: Strict-Transport-Security, Content-Security-Policy, X-Content-Type-Options: nosniff, Referrer-Policy és keretvédelem X-Frame-Options vagy CSP frame-ancestors révén. Az API-knál emellett a Cache-Control: no-store is hasznos az érzékeny válaszokon.
Szükség van még az X-XSS-Protection fejlécre?
Nem. A modern böngészők eltávolították az általa vezérelt XSS-auditort, régi böngészőkben pedig a fejléc akár sebezhetőséget is okozhatott. Használjon helyette szigorú Content-Security-Policy-t.
Védi a HSTS a legelső látogatást?
Önmagában nem - a böngésző a szabályt csak az első HTTPS-válaszból tanulja meg. Az első látogatás lefedéséhez vegye fel domainjét a HSTS preload listára (hstspreload.org), és használja a preload direktívát az includeSubDomains-szel együtt.
Elronthatja a webhelyemet egy rossz fejléc?
Igen, két klasszikus eset: a túl szigorú CSP blokkolja a saját szkriptjeit vagy inline stílusait, a HSTS pedig includeSubDomains-szel eltöri azokat az aldomaineket, amelyek még sima HTTP-n futnak. A CSP-t először report-only módban vezesse be, a HSTS-t pedig rövid max-age értékkel indítsa.
Kövesse a fejlécek változását folyamatosan
Az ePulz.io értesíti, ha egy fejléc megváltozik (például egy telepítés után, amely véletlenül eltávolította a CSP-t).
Kezdjen az ePulz.io-val →Erről az eszközről
A biztonsági fejlécek megmondják a böngészőnek, hogyan védje a látogatóit. Ez az ellenőrzés megmutatja, hogy a HSTS, a Content-Security-Policy, az X-Frame-Options, az X-Content-Type-Options és a Referrer-Policy ténylegesen jelen van-e, és pontozza az eredményt, így a telepítés után kiszúrhatja a clickjacking és MIME-sniffing réseket.