
Security headers: welke heeft je website nodig?
3 min lezen hieronder · WebYes kennisbank
Security headers beschermen bezoekers tegen afluisteren, XSS en clickjacking. Ontdek welke headers je nodig hebt en hoe je ze veilig instelt.
Security headers zijn instructies die je server bij elke pagina meestuurt en die de browser vertellen hoe hij je site veilig moet behandelen: alleen via HTTPS laden, geen scripts van vreemde bronnen uitvoeren, niet in een frame van een andere site tonen. Ze kosten niets en vangen een hele klasse aanvallen af.
Wat doen security headers precies?
Elke keer dat een browser een pagina opvraagt, stuurt de server naast de HTML ook een set headers mee: korte regels met instructies. Een deel daarvan gaat over veiligheid. Ze bepalen bijvoorbeeld of de browser de site ooit nog via onversleuteld HTTP mag benaderen, welke scripts er mogen draaien en of andere sites jouw pagina's in een frame mogen insluiten.
Het bijzondere is dat de bescherming bij de bezoeker plaatsvindt. Zelfs als een aanvaller erin slaagt kwaadaardige code op je pagina te krijgen, kan een goed ingestelde browser die code weigeren uit te voeren. Headers zijn daarmee een vangnet voor fouten die elders in de site zitten.
De belangrijkste headers op een rij
Zes headers dekken samen het grootste deel van de risico's af. Deze controleert de WebYes-scan binnen de pijler veiligheid:
| Header | Beschermt tegen | Gangbare instelling |
|---|---|---|
| Strict-Transport-Security (HSTS) | Afluisteren via onversleuteld HTTP | max-age van minimaal een jaar |
| Content-Security-Policy (CSP) | Cross-site scripting (XSS), injectie van vreemde scripts | Per site maatwerk; begin met een report-only test |
| X-Content-Type-Options | MIME-sniffing (bestanden als iets anders uitvoeren) | nosniff |
| X-Frame-Options / frame-ancestors | Clickjacking via verborgen frames | DENY of SAMEORIGIN |
| Referrer-Policy | Lekken van URL-gegevens naar derden | strict-origin-when-cross-origin |
| Permissions-Policy | Ongewenst gebruik van camera, microfoon of locatie | Alleen toestaan wat de site echt gebruikt |
CSP: de krachtigste, en de lastigste
De Content-Security-Policy verdient aparte aandacht. Deze header bepaalt per brontype (scripts, stijlen, afbeeldingen, frames) welke domeinen zijn toegestaan. Een strikte CSP maakt cross-site scripting vrijwel onmogelijk, omdat de browser scripts van niet-toegestane bronnen simpelweg niet uitvoert.
Diezelfde kracht maakt CSP ook de header die het vaakst iets breekt. Een vergeten domein voor je statistieken-script of embedded video en dat onderdeel doet het niet meer. Begin daarom altijd met Content-Security-Policy-Report-Only: de browser rapporteert dan overtredingen zonder iets te blokkeren, zodat je de policy kunt aanscherpen voordat hij echt afdwingt.
Zo controleer en stel je ze in
Waar je headers instelt, hangt af van je opzet: in de serverconfiguratie (Apache, nginx), bij je CDN of hostingpakket, of in je framework. Voor de meeste sites is het een kwestie van een paar regels configuratie die je eenmalig toevoegt en daarna met rust laat, met CSP als uitzondering die onderhoud vraagt bij elke nieuwe externe dienst.
Controleren kan zonder technische kennis. De gratis WebYes-scan toetst de headers van je site binnen de pijler veiligheid en laat per ontbrekende header zien wat het risico is. Headers vormen samen met een geldig SSL-certificaat de basis van de veiligheidsscore.
Veelgestelde vragen
Kunnen security headers mijn site kapotmaken?
De meeste headers zijn risicoloos aan te zetten: HSTS, nosniff en Referrer-Policy veranderen niets aan hoe je site werkt. Alleen de Content-Security-Policy kan onderdelen blokkeren die van externe bronnen laden. Test die daarom eerst in report-only-modus voordat je hem afdwingt.
Zijn security headers wettelijk verplicht?
Er is geen wet die specifieke headers voorschrijft. Wel eist de AVG dat je persoonsgegevens passend beveiligt; wie formulieren of accounts aanbiedt zonder basismaatregelen zoals HTTPS en HSTS, kan daarop worden aangesproken. In de praktijk zijn headers vooral de goedkoopste beveiligingswinst die er bestaat.
Mijn site draait al op HTTPS. Waarom heb ik dan nog HSTS nodig?
Zonder HSTS probeert de browser bij het intikken van je adres eerst de onversleutelde HTTP-versie, en vertrouwt hij op een doorverwijzing. Dat ene onversleutelde verzoek is te onderscheppen. HSTS zorgt dat de browser je site voortaan direct en uitsluitend via HTTPS benadert.
Dit meet de WebYes-scan ook
Scan je website gratis op snelheid, veiligheid, mobiel en toegankelijkheid en zie waar je staat.
Start gratis scan