Skip to content

Neues zur Sicherheit von Web-Clients, Teil 2

Auch in dieser Folge gibt es einen Überblick über die 2011 auf Sicherheitskonferenzen vorgestellten neuen Angriffe auf und über den Webbrowser sowie mögliche Schutzmaßnahmen.

Shreeraj Shah: Reverse Engineering Browser Components

Shreeraj Shah hat auf der Black Hat USA 2011 einen Vortrag mit dem Titel "Reverse Engineering Browser Components: Dissecting and Hacking Silverlight, HTML 5 and Flex" gehalten. Durch Reverse Engineering sollen Schwachstellen in den Clients von Rich Internet Applications (RIA) gefunden werden. Nach einer Beschreibung des Aufbaus der verschiedenen Browser-Komponenten sowie der Anwendungen widmet sich Shreeraj Shah möglichen Bedrohungen und Angriffsvektoren. Für alle OWASP-Top-10-Schwachstellen bzw. Angriffe gibt es Entsprechungen im RIA-Client. Welche Angriffe möglich sind und wie man die Schwachstellen finden kann, wird danach beschrieben. Zum Abschluss gibt es einige Tipps zur Absicherung der RIA-Clients.

Claudio Criscione: MetaXSSploit

Das Thema von Claudio Crisciones Vortrag auf der "Hack In The Box" Konferenz 2011 (HITBSecConf2011) war "MetaXSSploit: Bringing XSS to Pentesting" (Präsentation als PDF). Cross-Site Scripting ist die am weitesten verbreitete Schwachstellenklasse in Webanwendungen - und die am häufigsten unterschätzte. Entsprechende Schwachstellen werden oft als "Low hanging fruits" verspottet, da sie meist leicht zu finden sind. Was ich bestätigen kann. Wenn Websites eine Suchfunktion haben, reicht manchmal schon die "Suche" nach <script>alert("XSS!");</script>, um eine XSS-Schwachstelle zu finden.

Eigentlich sollten solche Schwachstellen inzwischen der Vergangenheit angehören, die Statistiken besagen leider das Gegenteil. Oft werden XSS-Schwachstellen auch von den Entwicklern ignoriert, schließlich kann man darüber ja nicht den Server angreifen. Dass darüber aber sehr wohl die Admins des Servers und damit indirekt auch der Server getroffen werden können, hat ja z.B. der bereits in der vorigen Folge erwähnte Angriff auf Apache.org gezeigt.

Claudio Criscione nahm mit seinem Vortrag genau dieses Problem des Unterschätzens von XSS-Schwachstellen ins Visier. Er entwickelte ein Tool, mit dem sich Angriffe über XSS-Schwachstellen demonstrieren lassen. Statt dabei bei Null zu beginnen, baute er auf Metasploit auf und schuf die neue Klasse XSSExploit. Die wurde zwar für Metasploit eingereicht, scheint jetzt aber mehr oder weniger in der Versenkung verschwunden zu sein.

Jim Manico: The Ghost of XSS

Ebenfalls auf der HITBSecConf2011 sprach Jim Manico über "The Ghost of XSS Past, Present and Future – A Defensive Tale" (Präsentation als PDF) und kümmerte sich damit um die Abwehr von XSS-Angriffen: Vorgestellt wurden veraltete, aktuelle und zukünftige Gegenmaßnahmen.

Ein Problem bei der Abwehr von XSS-Angriffen sind die vielen möglichen Ansatzpunkte für einen Angriff, die sich nicht alle durch eine einzige (Um-)kodierung schützen lassen. Der Browser verarbeitet die Daten nicht in einem einzigen Kontext, sondern in mehreren: Im HTML-Body, in HTML-Attributen, im <STYLE>-, <SCRIPT>- und URL-Kontext haben die Daten jeweils völlig unterschiedliche Bedeutungen, und was in einem Kontext XSS verhindert, kann in einem anderen völlig wirkungslos sein. Entsprechend müssen die möglicherweise manipulierten Daten heutzutage deutlich gründlicher geprüft und gefiltert werden als noch vor wenigen Jahren, wofür es mehrere Ansätze gibt: "Auto-Escaping Template Technologies", das Sandboxing von JavaScript z.B. mit Capabilities JavaScript (CAJA) von Google und in den Browsern implementierte Schutzmaßnahmen wie die Content Security Policy oder die XSS-Filter im Internet Explorer und Chrome.

Shreeraj Shah: Next Generation Web Attacks

Und noch ein letzter Beitrag von der HITBSecConf2011: Shreeraj Shah stellte "Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)" vor (Präsentation als PDF). Ausgehend von den in den letzten Jahren sich ändernden Bedrohungen und Angriffen und der großen Angriffsfläche aktueller Webanwendungen entwickelt er ein komplexes Bedrohungsmodell, um dann auf einzelne Punkte einzugehen:

  • HTML5 mit seinen neuen Tags und Speichermöglichkeiten samt SQL-Datenbank,
  • Schwachstellen im DOM und deren Ausnutzung,
  • den Missbrauch von Sockets, XMLHttpRequests und Cross-Site Request Forgery,
  • Clickjacking,
  • Rich-HTML-Komponenten sowie
  • den Gefahren des einfachen Reverse Engineerings (der Angreifer hat vollen Zugriff auf den gesamten im Client laufenden Code!).

Insgesamt macht HTML5 vieles einfacher und komfortabler - sowohl für den Webentwickler als auch für den Angreifer. Alles, was der eine zum Vorteil der Benutzer einsetzt, kann der andere zu deren Nachteil missbrauchen.

Auch in der nächsten Folge geht es um Vorträge auf Sicherheitskonferenzen, zuerst weiter zum Thema "Webclient Security".

Carsten Eilers


Übersicht über alle Artikel zum Thema

Neues zur Sicherheit von Web-Clients
Neues zur Sicherheit von Web-Clients, Teil 2
Neues zur Sicherheit von Clients, nicht nur im Web
Neues zur Sicherheit von Clients
Neues zur Sicherheit von Clients, Teil 2
Neues zur Sicherheit von Webservern und -anwendungen
Neues zur Sicherheit von Webservern und -anwendungen, Teil 2
Sicherheitskonferenzen 2011: Autos und Insulinpumpen im Visier
SAP-Anwendungen dringen ins Web vor, die Angreifer nehmen die Gegenrichtung

Trackbacks

Keine Trackbacks