Cross-site scripting (XSS)

Cross-site scripting (XSS) is een kwetsbaarheid waarbij een website ongecontroleerde scripts uitvoert in de browser van bezoekers. Dit gebeurt wanneer invoer van gebruikers niet goed wordt gefilterd of ontsmet, waardoor kwaadaardige code als legitieme inhoud wordt behandeld en uitgevoerd.

In de praktijk betekent dit dat een aanvaller via formulieren, URL’s of opgeslagen content scripts kan injecteren die draaien in de context van de website. Bezoekers merken daar vaak niets van, terwijl hun sessie, gegevens of interacties worden beïnvloed.

XSS wordt meestal onderverdeeld in varianten zoals reflected, stored en DOM-based, afhankelijk van waar en hoe de kwaadaardige code wordt aangeboden en uitgevoerd. De impact verschilt, maar het principe blijft hetzelfde: de browser vertrouwt code die daar niet thuishoort.

Cross-site scripting laat zien dat een website niet alleen moet doen wat bedoeld is, maar vooral niets anders mag toelaten.