Cross-site scripting attacks (XSS) worden gebruikt om gegevens te stelen en browsersessies te kapen, zodat aanvallers actie kunnen ondernemen namens een slachtoffer. Aanvallers kunnen deze gelegenheid te gebruiken om webpagina ‘ s te wijzigen, post op sociale rekeningen, initiëren bankoverschrijvingen of het maken van frauduleuze aankopen.
dit wordt bereikt door toepassingen en websites te misleiden om kwaadaardige scripts te verzenden via de webbrowser. De meest voorkomende methode voor het overnemen van gebruikerssessies is om code te injecteren met behulp van formuliervelden of andere gegevensinvoervelden.
- risico ’s van XSS-aanvallen
- risico voor gebruikers
- risico voor bedrijven
- typen XSS-aanvallen
- gereflecteerde XSS-aanvallen
- op DOM gebaseerde XSS-aanvallen
- persistente / opgeslagen XSS-aanvallen
- hoe XSS-aanvallen te voorkomen
- software up-to-date houden
- reinig en valideer invoervelden
- firewall voor webtoepassingen
- Inhoudsbeveiligingsbeleid
risico ’s van XSS-aanvallen
XSS-aanvallen vormen vitale veiligheidsrisico’ s voor zowel gebruikers als bedrijven.
risico voor gebruikers
aanvallers die de sessie van een gebruiker kapen, kunnen een aantal kwaadaardige acties ondernemen die hen beïnvloeden. Monetair gesproken kunnen ze frauduleuze kosten maken met behulp van hun bankkaarten of rechtstreeks geld overmaken naar andere rekeningen.
XSS-aanvallen kunnen ook worden gebruikt om gevoelige informatie uit cookies en databases te extraheren. Deze informatie kan worden gebruikt voor identiteitsdiefstal.
risico voor bedrijven
als een aanvaller gestolen gebruikersreferenties te pakken krijgt, kunnen ze ook schade aanrichten voor het bedrijf. Als de gebruiker admin rechten heeft, kan een XSS aanval zich uitbreiden naar de server-kant.
bedrijven kunnen ook lijden onder een verlies aan geloofwaardigheid en merkvertrouwen als een XSS-aanval algemeen bekend wordt. Gebruikers en klanten hebben meer kans om niet terug te keren naar een site als ze weten dat hun informatie in gevaar zou kunnen zijn.
typen XSS-aanvallen
gereflecteerde XSS-aanvallen
bij gereflecteerde XSS-aanvallen worden kwaadaardige scripts direct in een HTTP-verzoek geïnjecteerd. Het script wordt weergegeven door de server in een HTTP-antwoord en vervolgens uitgevoerd in de browser van een gebruiker. Dit is het eenvoudigste type XSS aanval.
op DOM gebaseerde XSS-aanvallen
op Document-objectmodel gebaseerde aanvallen vereisen geen interactie met de server. De kwetsbaarheid is de browser-side script. Webapplicaties lezen de kwaadaardige script rechtstreeks vanuit een query string. Ze lijken op deze manier op gereflecteerde XSS-aanvallen.
persistente / opgeslagen XSS-aanvallen
persistente, ook bekend als opgeslagen, XSS-aanvallen zijn het gevaarlijkste type aanval omdat ze het potentieel hebben om elke gebruiker die de site bezoekt, te beïnvloeden. In dit geval worden scripts geïnjecteerd in een database via formuliervelden.
het script wordt dan voor onbepaalde tijd opgeslagen in de database van de website. Elke gebruiker die vervolgens de site binnenkomt is kwetsbaar voor het hebben van hun sessie gekaapt.
hoe XSS-aanvallen te voorkomen
er zijn een aantal voorzorgsmaatregelen die u kunt nemen om XSS-aanvallen te voorkomen.
software up-to-date houden
Software moet om vele redenen altijd up-to-date worden gehouden, waaronder het repareren van bugs, het verbeteren van de prestaties, het installeren van nieuwe functies en het patchen van beveiligingsproblemen. Regelmatig updaten van software zal sterk verminderen de kwetsbaarheden die een site of applicatie open voor XSS kwetsbaarheden te verlaten.
u moet ook al uw toepassingen controleren om te bepalen welke u nodig hebt en welke u zelden gebruikt. Verwijder alle apps die je niet gebruikt om het aantal kwetsbaarheden verder te verminderen.
reinig en valideer invoervelden
invoervelden zijn het meest gebruikte invoerveld voor XSS-aanvalsscripts. Daarom, je moet altijd screenen en valideren van alle informatie invoer in gegevensvelden. Dit is vooral belangrijk als de gegevens worden opgenomen als HTML-uitvoer om te beschermen tegen gereflecteerde XSS-aanvallen.
validatie dient zowel aan de client-kant als aan de server-kant plaats te vinden als voorzorgsmaatregel. het valideren van de gegevens voordat deze naar servers worden verzonden, beschermt ook tegen hardnekkige XSS-scripts. Dit kan worden bereikt met behulp van Javascript.
firewall voor webtoepassingen
een firewall voor webtoepassingen (WAF) kan een krachtig hulpmiddel zijn om te beschermen tegen XSS-aanvallen. WAFs kunnen bots en andere kwaadaardige activiteiten filteren die een aanval kunnen aangeven. Aanvallen kunnen dan worden geblokkeerd voordat een script wordt uitgevoerd.
Inhoudsbeveiligingsbeleid
een inhoudsbeveiligingsbeleid (CSP) kan de functies definiëren die een website mag uitvoeren. Ze kunnen worden gebruikt om te voorkomen dat een website in-line scripts accepteert. Dit kan de sterkste methode tot uw beschikking als het kan volledig blokkeren XSS aanvallen of op zijn minst sterk verminderen van de mogelijkheid van hen.