XSS Payloads
Ziel: XSS (Cross-Site Scripting) wird genutzt, um bösartige Skripte in die Webseite eines Opfers einzuschleusen. Dies ermöglicht das Abgreifen von Cookies, das Manipulieren der Webseite oder das Ausführen beliebiger JavaScript-Befehle.
Reflected XSS
Diese Payloads werden direkt über die URL oder Formularparameter eingebracht und sofort vom Server reflektiert. Wann nutzen? Wenn Eingaben ohne Filterung oder Escape im HTML-Ausgang landen.
<script>alert('XSS');</script>
"><script>alert('XSS')</script>
Stored XSS
Die Payload wird dauerhaft in einer Datenbank oder auf der Seite gespeichert. Jeder Benutzer, der die Seite aufruft, wird dadurch betroffen. Wann nutzen? Wenn Eingaben dauerhaft gespeichert werden, z. B. in Kommentarfeldern oder Profilseiten.
<script>document.cookie="xss_test"</script>
"><svg/onload=alert(1)>
DOM-Based XSS
Hier findet die Verwundbarkeit nur auf der Client-Seite statt, oft durch unsichere JavaScript-Manipulationen im Browser.
Wann nutzen?
Wenn JavaScript-Eingaben (z. B. location
, document.referrer
) ungeprüft in die Seite integriert werden.
location.hash = "<img src='x' onerror='alert(document.domain)'>";
Filterumgehung
Wenn Sicherheitsmechanismen oder Filter XSS verhindern sollen, können folgende Tricks genutzt werden:
Encoding-Techniken: Umgehen Filter durch URL-Encoding.
%3Cscript%3Ealert('XSS')%3C%2Fscript%3E
Event-Handler: Alternative Methoden zur Ausführung von JavaScript.
<img src="x" onerror="alert('XSS')">
<a href="javascript:alert('XSS')">Click Me</a>
Last updated