Skip to main content
Alle Termen Glossary

Reflected XSS

Definition

Reflected XSS treedt op wanneer kwaadaardige scripts worden opgenomen in URL's en onmiddellijk worden teruggekaatst naar gebruikers zonder juiste sanitisatie. Deze aanvallen vereisen doorgaans social engineering om gebruikers te overtuigen op kwaadaardige links te klikken. Preventie omvat inputvalidatie, output-encoding en implementeren van Content Security Policy headers.

Hoe reflected XSS werkt

Reflected cross-site scripting gebeurt wanneer een webapplicatie invoer uit een request overneemt, meestal een URL-queryparameter, een zoekterm of een formulierveld, en die rechtstreeks terug in de HTML-response weergeeft zonder ze te encoderen. Als een aanvaller een link maakt waarvan de parameter een script bevat, weerspiegelt de server dat script in de pagina en voert de browser van het slachtoffer het uit alsof de site het zelf had geschreven. De payload wordt nergens opgeslagen; hij bestaat alleen in dat ene request, dus elke aanval heeft een nieuwe kwaadaardige link nodig. Een typische aanvalsroute is een zoekresultatenpagina die je zoekopdracht letterlijk toont, of een foutpagina die een niet-geëscapete waarde uit de URL herhaalt.

Waarom reflected XSS ertoe doet

Omdat het geïnjecteerde script in de browser van het slachtoffer draait onder de eigen origin van de site, erft het het vertrouwen van die origin. Het kan niet-HttpOnly cookies, sessietokens en pagina-inhoud lezen, formulieren versturen of veranderen wat de gebruiker ziet, wat sessiekaping, diefstal van inloggegevens en phishing mogelijk maakt die van het echte domein lijkt te komen. Reflected XSS steunt meestal op social engineering: een aanvaller moet het slachtoffer op een geprepareerde link uit e-mail, chat of een kwaadaardige advertentie laten klikken, dus richt het zich vaak op ingelogde gebruikers van bank-, webmail- of adminpanelen. Eén kwetsbare parameter kan elk account compromitteren waarvan de eigenaar de link opent.

Hoe je je tegen reflected XSS verdedigt

De kerndefensies liggen aan de kant van de ontwikkelaar: valideer invoer en pas contextbewuste output-encoding toe zodat weergegeven waarden als tekst renderen, nooit als markup of script. Een Content Security Policy voegt een tweede laag toe door te beperken welke scripts mogen draaien, en auto-escaping van frameworks dekt de meeste gevallen standaard af. cside is geen vervanging voor output-encoding; het richt zich op de third-party scripts die een pagina laadt. Waar een XSS-voet aan de grond of een gecompromitteerd vendorscript probeert te laden of via de browser data te exfiltreren, inspecteert de Script-methode van cside de daadwerkelijke JavaScript-payload, kan dat gedrag in real time blokkeren en houdt een forensisch verslag bij, wat ook de script-monitoringvereisten van PCI DSS 6.4.3 en 11.6.1 ondersteunt.

Definitie

Is reflected XSS minder gevaarlijk dan stored XSS?

De impactradius is meestal kleiner, omdat de payload niet op de server wordt opgeslagen, dus treft het alleen gebruikers die een specifiek geprepareerde link openen in plaats van iedereen die een pagina bekijkt. Maar de mogelijkheden in de browser zijn identiek, en tegen een waardevol ingelogd doelwit kan één klik genoeg zijn om een account te kapen.

Definitie

Stoppen HttpOnly cookies reflected XSS?

Nee. De HttpOnly-vlag verbergt een cookie alleen voor JavaScript, dus het beperkt tokendiefstal, maar een gereflecteerd script kan nog steeds binnen de sessie handelen, paginagegevens lezen, requests versturen en de interface bekladden. HttpOnly is een nuttige mitigatie, geen oplossing; je hebt nog steeds output-encoding en een sterke CSP nodig.

Got more questions

Talk to a security expert

We answer client-side security questions every day. Bring yours.

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