Beveiligingsheader-analyser

Volgende

Plak de rauwe HTTP-responsheaders van een willekeurige site en deze analyser wijst aan wat ontbreekt of zwak is. Hij controleert de headers die een site echt verharden (Content-Security-Policy, Strict-Transport-Security, X-Content-Type-Options, X-Frame-Options, Referrer-Policy en Permissions-Policy) en wijst op headers als Server of X-Powered-By die versiedetails lekken. Elke bevinding krijgt het label hoog, gemiddeld of laag, zodat je precies weet wat je als eerste moet oplossen.

Hoe de headeraudit werkt

  1. 1

    Haal je responsheaders op

    Voer `curl -I https://example.com` uit, of kopieer de responsheaders uit het tabblad Netwerk van de ontwikkelaarstools van je browser.

  2. 2

    Plak ze

    Zet het headerblok in het veld, één `Naam: waarde`-paar per regel.

  3. 3

    Lees de geprioriteerde bevindingen

    Elke header wordt gecontroleerd en elk gemis krijgt het label hoog, gemiddeld of laag, met de exacte directive die je moet toevoegen.

  4. 4

    Verhard en controleer opnieuw

    Voeg de ontbrekende headers toe aan je serverconfiguratie, herlaad die en plak de nieuwe respons om te bevestigen dat de gaten gedicht zijn.

Headers die het verschil maken

Header Wat het blokkeert Minimaal aanbevolen waarde
Content-Security-Policy XSS, clickjacking, gemengde inhoud default-src 'self'; object-src 'none'; frame-ancestors 'none'
Strict-Transport-Security SSL stripping, cookielekken via HTTP max-age=31536000; includeSubDomains; preload
X-Frame-Options Clickjacking in oudere browsers DENY (of steun op CSP frame-ancestors)
X-Content-Type-Options MIME-sniffing van geüploade bestanden nosniff
Referrer-Policy Lekken van volledige URL’s naar derden strict-origin-when-cross-origin
Permissions-Policy Camera/microfoon/geolocatie bij niet-vertrouwde embeds camera=(), microphone=(), geolocation=()

Wat deze analyser signaleert

Plak je headers en hij controleert elk van deze punten, en labelt elk gemis op prioriteit:

  • Ontbrekende Strict-Transport-Security (hoog), of aanwezig maar zonder includeSubDomains (gemiddeld), waardoor subdomeinen open blijven voor een downgrade.
  • Ontbrekende Content-Security-Policy (hoog), of een CSP die nog 'unsafe-inline' toestaat (gemiddeld), wat veel van de waarde tenietdoet.
  • X-Content-Type-Options niet op nosniff (laag), zodat browsers responsen kunnen MIME-sniffen.
  • Ontbrekende X-Frame-Options (gemiddeld), tenzij een CSP frame-ancestors-directive het werk al doet.
  • Ontbrekende Referrer-Policy of Permissions-Policy (laag): volledige URL’s lekken naar derden en krachtige browserfuncties blijven open.
  • Aanwezige Server of X-Powered-By (laag): die verraden je stack en versie, dus verwijder ze om de herkenbaarheid te verkleinen.

Uitrol-tip

Zet CSP eerst in alleen-rapporteren-modus (Content-Security-Policy-Report-Only) en koppel een rapportage-endpoint. Laat het een week met echt verkeer draaien voordat je overschakelt naar handhaving: je ontdekt scripts van derden die je vergeten was.

Veelgestelde vragen

Plak de volledige HTTP-responsheaders, één Naam: waarde-paar per regel. De snelste bron is curl -I https://example.com, of het gedeelte met responsheaders onder een willekeurig verzoek in het tabblad Netwerk van je browser.

Nee. Het leest alleen de HTTP-responsheaders die je plakt. Een CSP die via een <meta http-equiv>-tag wordt geleverd, geldt alleen voor dat ene document en is zwakker dan de echte header, dus gebruik de header-variant.

Nee. Alle moderne browsers hebben de XSS-auditor verwijderd, dus de header biedt geen bescherming en kan soms zelf problemen veroorzaken. Een degelijke Content-Security-Policy vervangt hem.

Een CDN als Cloudflare kan headers verwijderen of herschrijven (met name Server, en optioneel CSP via Transform Rules). Vergelijk rechtstreeks met de origin via curl -I op de publieke URL om precies te zien wat de edge verandert.

Gerelateerde tools

Tool beschikbaar in andere talen