Ga naar hoofdinhoud

Veiligheidsheaders: bescherm je website met één regel

Je kent de Content Security Policy al — een HTTP-header die de browser vertelt welke scripts en bestanden geladen mogen worden. Maar CSP is niet de enige veiligheidsheader. Er zijn er nog een paar die samen een solide basisbeveiliging vormen voor elke website.

Wat zijn HTTP-headers?

Elke keer dat een browser een pagina opvraagt, stuurt de server een antwoord terug. Dat antwoord bevat niet alleen de pagina zelf, maar ook headers — onzichtbare regels met instructies voor de browser. Veiligheidsheaders zijn headers die de browser vertellen hoe hij zich moet gedragen om aanvallen te voorkomen.

De vier belangrijkste veiligheidsheaders

Strict-Transport-Security (HSTS)

Deze header dwingt de browser om jouw website altijd via HTTPS te laden, ook als een bezoeker http:// intypt of op een oude HTTP-link klikt.

Strict-Transport-Security: max-age=31536000; includeSubDomains

max-age=31536000 betekent: onthoud dit een jaar (31.536.000 seconden). De browser zal in die periode nooit meer via HTTP proberen te verbinden.


X-Frame-Options

Voorkomt clickjacking: een aanval waarbij jouw pagina onzichtbaar in een <iframe> op een andere website wordt geladen. De aanvaller legt dan zijn eigen knoppen over jouw pagina heen, zodat een nietsvermoedende bezoeker onbedoeld op iets klikt.

X-Frame-Options: DENY

DENY betekent: mijn pagina mag nooit in een iframe geladen worden. Gebruik SAMEORIGIN als je wel iframes binnen je eigen domein wilt toestaan.


X-Content-Type-Options

Voorkomt dat de browser bestanden verkeerd interpreteert. Zonder deze header kan een browser een tekstbestand dat kwaadaardige JavaScript bevat toch uitvoeren als script — een techniek die "MIME sniffing" heet.

X-Content-Type-Options: nosniff

nosniff zegt: geloof altijd het opgegeven bestandstype, doe geen gissingen.


Referrer-Policy

Bepaalt hoeveel informatie over de huidige URL de browser meestuurt als een bezoeker op een link naar een andere website klikt. Zonder deze header kan de volledige URL — inclusief eventuele gevoelige parameters — worden gedeeld met externe partijen.

Referrer-Policy: strict-origin-when-cross-origin

Dit is de aanbevolen standaardwaarde: stuur alleen de domeinnaam mee bij links naar andere websites, en stuur niets mee bij onveilige (HTTP) verbindingen.


Overzicht

HeaderBeschermt tegen
Strict-Transport-SecurityVerbindingen via onveilig HTTP
X-Frame-OptionsClickjacking via iframes
X-Content-Type-OptionsMIME sniffing
Referrer-PolicyLekken van URL-informatie
Content-Security-PolicyXSS en het laden van onbetrouwbare scripts
Scan je eigen website

Gebruik securityheaders.com om te controleren welke veiligheidsheaders jouw website al verstuurt — en welke nog ontbreken. Je krijgt direct een rapportcijfer en uitleg per header.

Veiligheidsheaders kosten je één regel configuratie per header. De bescherming die ze bieden, is het meer dan waard.

Kop koffie nodig?

Probeer De Koffiejongens met 50% korting op je bestelling. Geteeld door boeren die met de natuur werken en eerlijk betaald krijgen.