Die Entdeckung von XSS – Das Finden neuer Wege der Codeausführung in HTML

Bachelor-Studiengang IT Security

Timo Longin, BSc

Betreuer: Dipl.-Ing. Robert Luh, BSc 

Ausgangslage

Das Einschleusen von bösartigem HTML-Code in einen harmlosen Datenfluss einer Webapplikation ist eine weit verbreitete Praxis in der Welt der Hacker und Haecksen, um Codeausführung in Browsern von Op-fern zu erlangen. Die Rede ist von Cross-Site-Scripting.

Um zu verhindern, dass bösartiger HTML-Code Schaden bei BenutzerInnen einer Webapplikation anrichtet, gibt es mehrere Gegenmaßnahmen. Diese beschränken die Kommunikation meist auf HTML-Code, der als gutartig angenommen wird und keine Codeausführung erlauben sollte. Das Problem hierbei ist, dass es aufgrund mangelnden Wissens über die Vielzahl der möglichen HTML-Codes passieren könnte, dass diese Gegenmaßnahmen ein eingebautes Schlupfloch für Cross-Site-Scripting mit sich bringen.

Das Wissen über mögliche Arten der Codeausführung in Browsern ist demnach von äußerster Wichtigkeit, um entsprechende Sicherheitssysteme darauf aufzubauen.

Um einen Teil dieser Bedrohung abzuwenden, befasst sich diese Arbeit mit dem Finden von Arten der automatischen Codeausführung in HTML.

Ziel

Ziel dieser Arbeit ist es festzustellen, welche Möglichkeiten der automatischen Codeausführung in HTML bei aktuellen Browsern vorhanden sind. Dazu wird eine Vorgehensweise vorgestellt, die mittels grammatikalischer Analyse versucht, Grundstrukturen und Komponenten von bisherigen Arten der Codeausführung, also Cross-Site-Scripting-Payloads, zu identifizieren. Das Testen der Funktionalität aller Kombinationen dieser Strukturen und Komponenten soll dabei weitere Methoden der automatischen Codeausführung offenbaren.

Ergebnis

Im Zuge dieser Arbeit konnten bisherige sowie neue Wege der automatischen Codeausführung mit der vorgestellten Methodik gefunden werden. Darunter fallen auch solche, die „global“ wahrscheinlich noch unbekannt sind.

Aufbauend auf diesen Daten wurden weitere Analysen durchgeführt. Ergebnisse dieser Analysen zeigen, welche der gefundenen Arten der Codeausführung die wahrscheinlich größte Bedrohung für be-stehende Gegenmaßnahmen darstellen.