Cross site scripting

Geschreven door: op maandag 11 september 2017

Leestijd:

Cross site scripting, ook wel bekends als XSS is een beveiligings issue bij websites. Het zorgt ervoor dat een buitenstaander code kan zetten op een website welke vervolgens voor een deel of voor alle gebruikers uitgevoerd zal worden. Denk hierbij bijvoorbeeld aan een vertrouwde bank site. Me de aanpassing zouden bijvoorbeeld jouw gegevens kunnen worden verstuurd naar de hacker, of het verzend adres wordt aangepast bij het overmaken van geld.

De oorzaak van dit probleem ligt bij tonen van gegevens die door de gebruiker zijn ingevoerd. Een simpel voorbeeld hiervan zou bijvoorbeeld een forum kunnen zijn. Een willekeurig persoon kan hier een bericht plaatsten. Nadat dit opgeslagen is wordt het bericht vervolgens aan alle bezoekers van deze pagina getoond. Bij XSS wordt code in dit bericht geplaatst ( meestal javascript ) wat bij het bezoeken van de forum pagina wordt uitgevoerd. Hiermee zijn vele opties mogelijk afhankelijk van wat de aanvaller zijn doel was. Zo is het mogelijk om als de bezoekende gebruiker een nieuw bericht in het forum te plaatsten, of in sommige gevallen zelfs deze gebruiker zijn sessie over te nemen (wat neerkomt op dat de aanvaller kan inloggen als deze gebruiker).

Een simpel voorbeeld van een XSS post zou zijn:


<script type='text/javascript'>alert('xss');</script>

Overigens is deze code ongevaarlijk en zorgt er alleen voor dat alle bezoekers van deze pagina een popup bericht te zien krijgen dat zegt xss.

xss.png

Om xss tegen zijn er een aantal stappen die genomen kunnen worden bij het maken van een website. Ten eerste is het belangrijk om de invoer van een gebruiker te filteren. Vaak wordt er in een invoer slechts tekst verwacht en kunnen alle andere tekens eruit gefilterd worden. Wanneer deze tekens wel benodigd zijn kunnen specifieke woorden zoals ‘<script’ er alsnog uitgefilterd worden.

Verder is er de mogelijkheid om bij het plaatsten van gebruikers invoer de tekst om te vormen zodat de browser het niet meer als script opvat. Inplaats daarvan zullen de tekens letterlijk als bericht op de pagina worden getoond.

Tot slot is het belangrijk om consistent te zijn. Het lastige van XSS is niet dat het moeilijk te voorkomen is, maar dat dit op vele en soms onverwachte plaatsen voor kan komen. Om XSS te voorkomen moet dit in 100% van de gevallen correct worden opgelost. Hiervoor is het belangrijk om tijdens het bouwen van een website altijd aandacht te besteden aan een potentiele XSS beveiligingsissue.


Andere blogartikelen

  • Plugins maken in jQuery

    Geschreven door: op vrijdag 29 juni 2018

    Door zelf code die je vaak gebruikt om te zetten naar jQuery-plugins, zorg je ervoor dat je deze code eenvoudig kan toepassen in andere projecten en je je kan bezighouden met het maken van nieuwe func ...

    Bekijk het artikel »
  • Dependency injection

    Geschreven door: op dinsdag 26 juni 2018

    Vanuit een programmeer standpunt gezien is indeling van code een van de belangrijkste aspecten van het programmeren. Een rommelige werkomgeving maakt het lastig om te vinden wat je nodig hebt. Het opr ...

    Bekijk het artikel »
  • Databasetypen

    Geschreven door: op dinsdag 26 juni 2018

    Bij de meeste websites behoort een database waarin gegevens van de website worden opgeslagen. Er zijn verschillende manieren waarop deze gegevens kunnen worden bijgehouden. De meest gebruikte methode ...

    Bekijk het artikel »
Bel 072 5345 888
Meer dan 40 bedrijven vertrouwen op ons
Allrig is de alles in een leverancier binnen de energie-industrie
Aliancys is een toonaangevend wereldwijd bedrijf actief in de verkoop van kwaliteitsharsen
ERIKS is een toonaangevende en innovatieve leverancier aan de procesindustrie en aan machinebouwers, die zowel de rol van specialist als die van brede MRO-leverancier vervult
Industrieel dienstverlener Heinen & Hopman Engineering uit Bunschoten is dé wereldwijde specialist op het gebied van klimaatbeheersing
Handicare is een internationale organisatie die ouderen helpt om hun dagelijks leven gemakkelijker te maken door het produceren van hoogwaardige trapliften
Onze Middelen en Technologieën
microsoft silver partner
Adobe partner
fd gazellen 2017
Google analytics
partners-logo.jpg

mockup_tablet.png

Bedient u uw (potentiële) klant optimaal binnen het online koopproces? 

Vul de Online Scorecard in ›