Skip to content

Clickjacking - Auch komplizierte Aktionen sind möglich

Mit Clickjacking einen einzelnen Klick zu entführen erfordert schon etwas Aufwand, wie in der vorigen Folge am Beispiel der Demonstration von Jeremiah Grossman und Robert "RSnake" Hansen zu sehen war. Möchte ein Angreifer gleich mehrere Klicks entführen, wird es noch aufwändiger. Ein Beispiel dafür ist die Demonstration von Guy Aharonovsky.

Der Angriff von Guy Aharonovsky im Detail

Guy Aharonovsky wollte die Benutzer die Mikrofon- und Kameraeinstellungen des Flash Players ändern lassen. Dazu sind mehrere Klicks notwendig, so dass ein einfacher Link wie im Beispiel von Grossman und Hansen für den Angriff nicht ausreichte. Stattdessen ließ Aharonovsky die Benutzer ein kleines JavaScript-Spiel spielen, bei dem eine hin- und herhüpfende Schaltfläche angeklickt werden muss. Da Adobe die Schwachstelle sofort mit einem Workaround entschärft und kurz danach behoben hat funktioniert die Demonstration nicht mehr, Guy Aharonovsky hat jedoch vorausschauend ein Video davon erstellt.

Während des Spiels werden einige Klicks auf Schaltflächen oder Radiobuttons in Adobes Setting Manager gelenkt, während einige tatsächlich zum Spiel gehören und keinerlei Funktion haben, außer das Opfer abzulenken. Immer, wenn ein Klick auf den Setting Manager gelenkt werden soll, wird das JavaScript-Spiel durch Manipulation der z-Koordinate hinter den iframe mit dem Setting Manager gelegt und der Klick landet im (für den Benutzer unsichtbaren) Setting Manager.

Im Setting Manager wird zuerst im Tab für die Website-Zugriffsschutzeinstellungen auf die Schaltfläche zum Löschen der Liste besuchter Websites geklickt (Abb. 6, 1) und danach das Löschen durch Klick in die sich öffnende Alertbox bestätigt (Abb. 6, 2). Danach wird der dann einzige Eintrag in der Liste, die gerade besuchte Website des Angreifers, ausgewählt (Abb. 6, 3) und dafür die Einstellung für Kamera und Mikrofon auf "immer zulassen" geändert (Abb. 6, 4). Danach wird in der Demonstration ein Fenster geöffnet, das die Kamera- und Mikrofonaufnahme ausgibt. Ein Angreifer würde sich natürlich nicht so verraten, sondern die Aufnahmen an seinen eigenen Server schicken und dort auswerten.

Die Schritte in der Demonstration von Guy Aharonovsky

Abb. 6: Die Schritte in der Demonstration von Guy Aharonovsky

Weitere mögliche Angriffe

Die oben vorgestellten Beispiele sind nur ein kleiner Ausschnitt möglicher Angriffe über Clickjacking. Auch die folgende Aufstellung ist nur die Spitze eines Eisbergs:

  • ActiveX-Controls können manipuliert werden, wenn sie Eingaben über die Webseite und nicht über modale Dialoge entgegen nehmen. Ebenso sind alle Anwendungen auf dem Client, z.B. Java-Applets oder Ajax-Anwendungen, gefährdet, sofern sie sich in einem iframe darstellen lassen.
  • Da über JavaScript der Status von Klicks in andere Domains beobachtet werden kann, sind auch komplexe Angriffe mit mehreren Klicks möglich.
    In der Demonstration von Guy Aharonovsky wurden bereits mehrere Klicks verwendet, dabei aber immer davon ausgegangen, dass alle vorherigen die gewünschte Aktion ausgelöst haben. Wäre einer der entführten Klicks nicht an der richtigen Stelle gelandet, wäre der gesamte Angriff fehl geschlagen. Durch das Prüfen des Klick-Status kann der Angreifer einen fehlgeschlagenen Klick z.B. auf einen Radio-Button erkennen und wiederholen lassen, bevor er mit dem nächsten entführten Klick das Formular absendet. Zum Prüfen kann z.B. der onclick-Event (im Internet Explorer) oder der onblur-Event (in Firefox) des unsichtbaren iframes verwendet werden.
    Ebenso kann natürlich auch geprüft werden, ob der entführte Klick erfolgreich war und die gewünschte Aktion ausgelöst wurde, um danach die eigentlich vom Benutzer angeklickte Aktion auszuführen. Dadurch wird verhindert, dass der Benutzer misstrauisch wird, weil nach seinem Klick nichts (für ihn erkennbares) passiert ist.
  • Ungewöhnliche, nur schwer ausnutzbare Cross-Site-Scripting-Schwachstellen können über Clickjacking einfacher und/oder überhaupt erst ausgenutzt werden. Robert Hansen nennt als Beispiel XSS-Schwachstellen, die nur durch onmouseover- oder onmousedown-Events über ungewöhnlichen Bereichen der betroffenen Webseite ausgenutzt werden können. Über Clickjacking könnte ein Angreifer die betroffene Seite in einem iframe einbinden und die Maus über den richtigen Bereich positionieren.
  • Gegenmaßnahmen gegen Cross-Site-Request-Forgery-Angriffe, die auf dem Vorhandensein zufälliger Token basieren, können durch Clickjacking unterlaufen werden. Dafür muss nur der Link zur Seite mit dem zufälligen Token bekannt sein, so dass der Angreifer dem Opfer diese Seite in einem Clickjacking-Angriff unterschieben kann.
  • Ein weiteres gutes Beispiel für den Einsatz von Clickjacking ist Klick-Betrug (Click Fraud): Eigentlich sind dafür viele verschiedene IP-Adressen mit unterschiedlichen Browser-Signaturen notwendig, um Klicks von unterschiedlichen Benutzern vorzutäuschen. Genau die liefert Clickjacking: Während der Benutzer denkt, er klickt irgend etwas anderes an, klickt er tatsächlich auf z.B. ein untergeschobenes Werbebanner.

Alle bisher beschriebenen Clickjacking-Angriffe waren mehr oder weniger Theorie. Aber die Cyberkriminellen sind natürlich immer daran interessiert, neue Methoden für ihre bösen Taten zu nutzen. So war es auch beim Clickjacking. Um so wichtiger ist es, Clickjacking-Angriffe zu verhindern. Wie, erfahren Sie in der nächsten Folge.

Carsten Eilers

Update 13.5.2015
Aus Anlass des 5jährigen Blog-Jubiläums habe ich alle Clickjacking-Artikel zusammengefasst, überarbeitet, ergänzt und auf den aktuellen Stand gebracht. Das Ergebnis ist ein (natürlich kostenloses) eBook im ePub- und PDF-Format: 5 Jahre Blog - Als Special: "Clickjacking"-eBook
Ende des Updates vom 13.5.2015


Übersicht über alle Artikel zum Thema

Clickjacking - Angriffe auf Seiten ohne Schwachstellen
Clickjacking - Auch komplizierte Aktionen sind möglich
Clickjacking - Framebuster oder HTTP-Header verhindern Angriffe
Der Angriff der Clickjacking-Würmer, "Likejacking" und "Buttonjacking"
Clickjacking - "Likejacking" unter die Haube geguckt
Clickjacking - The next Generation
Clickjacking - Drag&Drop-Angriffe und weitere Neuigkeiten
Cookiejacking - Keksdiebe im Internet Explorer
Likejacking - Facebook im Visier der Cyberkriminellen
Clickjacking - Gute und Schlechte Nachrichten
Standpunkt: Clickjacking gegen Flash, urchin.js und Duqu - nichts als Wiederholungen!
Neue Angriffe auf Webanwendungen über Clickjacking und Cookies
Clickjacking-Angriffe verhindern - der aktuelle Stand der Dinge
Clickjacking: Cross Origin Resource Jacking und ein Clickjacking-BeEF-PlugIn
Clickjacking: "Zaubertricks" ermöglichen Likejacking und mehr
Dieses und Jenes zum Clickjacking
5 Jahre Blog - Als Special: "Clickjacking"-eBook

Trackbacks

Dipl.-Inform. Carsten Eilers am : Präsentationen und Links zu meinen #wtc11-Vorträgen sind online

Vorschau anzeigen
Ich habe soeben die Präsentationen zu meinen Vorträgen auf der WebTech Conference hochgeladen. Sie finden Sie auf www.ceilers-it.de/konferenzen/ sowie auch hier: Client Security im Web 2.0 und mit HTML5 Beschreibung: Schwachstel