Skip to main content
Blog
Blog security

Wat is JavaScript injection? Script-injectieaanvallen uitgelegd

JavaScript injection is het invoegen van door een aanvaller gecontroleerd script in een webpagina, zodat het in de browsers van bezoekers wordt uitgevoerd met alle rechten van de pagina. Deze gids behandelt de injectiepaden — XSS, gecompromitteerde derde partijen, extensies — wat geïnjecteerde scripts daadwerkelijk doen en hoe je ze detecteert.

Aug 18, 2026 3 min read
Wat is JavaScript injection? Script-injectieaanvallen uitgelegd
Inhoudsopgave

JavaScript injection is het invoegen van door een aanvaller gecontroleerd script in een webpagina, zodat het in de browsers van bezoekers wordt uitgevoerd met dezelfde rechten als de eigen code van de pagina. Eenmaal actief kan geïnjecteerd script de DOM lezen, vastleggen wat gebruikers typen en data overal naartoe sturen — het mechanisme achter formjacking, Magecart en de meeste client-side datadiefstal.

Hoe wordt JavaScript geïnjecteerd?

InjectiepadHoe het werktWie is gecompromitteerd
XSS (reflected / stored / DOM-based)Een fout in de site laat invoer van de aanvaller als script uitvoerenDe eigen code van de site
Third-party supply chainEen leverancier wiens tag je laadt levert kwaadaardige code — door een breach of overnameDe leverancier (Polyfill.io is het canonieke geval)
Verlopen / lookalike-domeinenEen aanvaller neemt een domein over waarvandaan je pagina nog scripts laadtDe afhankelijkheidsketen
Misbruik van de tag managerEen gecompromitteerd tag-manager-account injecteert "gewoon nóg een tag"Je marketingstack
Client-side malware / extensiesScript wordt op de machine van de bezoeker geïnjecteerd, in elke siteDe browser van de bezoeker

Het eerste pad is een programmeerfout die je kunt herstellen. De middelste drie zijn vertrouwensfouten: de code werd binnengelaten. Een moderne pagina draait tientallen third-party scripts, en elk daarvan is een injectievector met volledige paginarechten — het kernprobleem van client-side security.

Wat geïnjecteerde scripts doen

Geïnjecteerde code kent geen rechtengrens die haar van je eigen code scheidt. In waargenomen aanvallen skimt ze betaalformulieren teken voor teken, oogst ze inloggegevens van loginpagina's, legt ze nep-betaalvelden over de legitieme heen, kaapt ze affiliate-inkomsten, leidt ze sessies om en stuurt ze de gestolen data naar de infrastructuur van de aanvaller — vaak domeinen met namen die lijken op de gewone adtech in je netwerktabblad.

Preventie: verklein het aantal paden

  • Los de XSS-klasse op: output encoding, veilige sinks, sanitization, Trusted Types.
  • Beperk bronnen met een Content Security Policy: een strikte, nonce-gebaseerde CSP blokkeert niet-geautoriseerde script-origins — met bekende beperkingen: ze kan niet beoordelen wat een toegestaan script na het laden doet.
  • Pin wat je kunt: Subresource Integrity voor statische afhankelijkheden; minimaliseer de blast radius van de tag manager.
  • Snoei de afhankelijkheidsboom: elk verwijderd third-party script is een verwijderd injectiepad.

Detectie: bewaak de runtime

Preventie verkleint de kans; ze kan niet reiken tot de compromittering van een vertrouwde leverancier. Detectie moet gebeuren waar de injectie landt — de browser. De scriptmonitoring van cside inventariseert elk script dat in echte sessies wordt uitgevoerd, analyseert payloads en alarmeert bij nieuwe domeinen, gewijzigde code en onverwachte datastromen. Op betaalpagina's is die runtime-inventaris bovendien een compliance-vereiste: de vereisten 6.4.3 en 11.6.1 van PCI DSS 4.0.1 bestaan juist omdat geïnjecteerd script op een betaalpagina onzichtbaar is voor elke server-side controle.

Simon Wijckmans
Founder & CEO

Founder and CEO of cside. Previously a product manager on Cloudflare Page Shield (now Cloudflare Client-Side Security). Co-chair of the W3C Anti-Fraud Community Group and a Forbes 30 Under 30 honoree. Building accessible security against client-side attacks, web security is not an enterprise-only problem.

FAQ

Frequently Asked Questions

XSS is één injectiepad, niet de hele categorie. Cross-site scripting injecteert script door een fout uit te buiten in hoe de site invoer verwerkt. Maar script wordt ook geïnjecteerd door een externe leverancier te compromitteren wiens tag de site al vertrouwt (een supply chain-aanval), door een verlopen of lookalike-domein te kapen waarvandaan de pagina nog laadt, of via malware en extensies op de machine van de bezoeker. De eindtoestand is identiek: vreemde code die draait met de rechten van jouw pagina.

Alles wat de eigen JavaScript van de pagina kan: de DOM lezen en wijzigen, toetsaanslagen en formuliervelden vastleggen (het mechanisme achter formjacking en Magecart), cookies en tokens stelen die voor script toegankelijk zijn, nep-UI over de pagina leggen, gebruikers omleiden, cryptovaluta minen of stilletjes data exfiltreren naar het domein van een aanvaller. Er is geen rechtengrens tussen first-party en geïnjecteerde code zodra die wordt uitgevoerd.

Server-side tools kunnen het niet zien, omdat injectie vaak plaatsvindt nadat de pagina is geserveerd — in de browser. Detectie vereist monitoring op de browserlaag: een inventaris van elk script dat daadwerkelijk in echte sessies wordt uitgevoerd, wat elk script doet en waarheen het data stuurt, met een alert wanneer een nieuw script verschijnt of het gedrag van een bekend script verandert. Dat runtime-beeld is wat de scriptmonitoring van cside biedt.

Monitor en beveilig je third-party scripts

Gain full visibility and control over every script delivered to your users to enhance site security and performance.

Start gratis, of probeer Business met een proefperiode van 14 dagen.

cside-dashboardinterface met scriptmonitoring en beveiligingsanalyses
Related Articles
Boek een demo

Wil je dit doornemen met een engineer?

Dertig minuten, op je eigen site. Geen slides.

We laten je zien:

Welke scripts van derden er nu op je site draaien
Hoe je ervoor staat op PCI DSS 6.4.3 en 11.6.1
Welk deel van je verkeer uit bots en AI-agents bestaat

Liever gewoon een vraag stellen?

Vrije momenten zoeken…

Alleen echte mensen. Wij merken het.

Lukt het boeken niet? Agenda in een nieuw tabblad openen

Wat wil je oplossen?

Vertel het ons in één zin, dan komen we terug met iets bruikbaars in plaats van een standaardverhaal.

Waar we meestal mee helpen:

Zien welke scripts van derden op je site draaien
Bewijs voor PCI DSS 6.4.3 en 11.6.1
Bots, AI-agents en accountovername

Liever meteen een moment inplannen? Kies een tijdstip