Naar de inhoud
websitecontrole.nl
Uitleg

Wat is een Content-Security-Policy?

Zonder een Content-Security-Policy laadt een browser alles wat in je HTML staat, ook scripts en afbeeldingen van buiten. Een policy laat je bepalen wat wél mag laden, en van waar.

Een script van buiten draait mee

Zet je een script van een andere partij op je pagina, dan draait dat met dezelfde rechten als je eigen code. Het kan lezen wat een bezoeker typt, meekijken met wat er op de pagina staat, of de bezoeker omleiden. Wordt die partij gehackt, of is ze zelf kwaadwillend, dan gebeurt dat op jouw pagina, bij jouw bezoekers.

Het advertentie-script leest het wachtwoord uit het formulier en stuurt het naar aanvaller.com.

Ook een afbeelding is niet zonder risico

Het hoeft niet eens code te zijn. Om een afbeelding bij een externe partij op te halen, stuurt de browser een verzoek naar die partij. Dat verzoek draagt het IP-adres van je bezoeker en de pagina waarop die zit. En omdat de afbeelding bij die partij staat, bepaalt zij wat erin zit: ze kan hem later vervangen door iets waar je niet mee geassocieerd wilt worden, en dat verschijnt dan op jouw pagina.

Bij het ophalen krijgt de externe partij het IP-adres en de pagina, en ze kan de afbeelding later vervangen.

Een policy zet de grens

Met een policy geef je op welke bronnen mogen laden. De browser houdt zich daaraan en blokkeert de rest. Zo bepaal je zelf wie er meedraait op je pagina, in plaats van dat elke ingesloten partij dat doet.

jouw-site.nl staat op de lijst en laadt. advertentie-netwerk.com staat er niet op en wordt geblokkeerd.

Zo stel je er een in

Een strikte policy meteen aanzetten kan je pagina breken, dus je rolt hem in stappen uit. Hoe dat gaat verschilt per platform: