Clickjacking: "Zaubertricks" ermöglichen Likejacking und mehr
Clickjacking basiert darauf, dass das anzuklickende Ziel in einem unsichtbaren iframe verborgen ist. Ein Schutz vor Clickjacking könnte also darin bestehen, die Sichtbarkeit des anzuklickenden Buttons etc. zu prüfen und Klicks auf unsichtbare Objekte nicht zu akzeptieren. Leider lässt sich das menschliche Auge austricksen, so dass Clickjacking auch dann möglich ist, wenn das Ziel sichtbar ist. Das ganze funktioniert dann wie bei Zaubertricks: Der Benutzer wird abgelenkt, so dass er gar nicht merkt, was er da gerade anklickt.
Die Grenzen der Wahrnehmungsfähigkeit
Devdatta Akhawe hat auf der Black Hat USA 2013 einen Vortrag zum Thema Clickjacking gehalten: "Clickjacking Revisited: A Perceptual View of UI Security". Angegriffen werden sollte mal wieder Facebooks Like-Button. Zusammen mit Warren He, Zhiwei Li, Reza Moazzezi und Dawn Song hat er 5 neue Angriffe entwickelt, die die aktuellen Schutzmaßnahmen von Facebook unterlaufen können. Dabei wird von folgender Ausgangssituation ausgegangen:
- Der Angreifer möchte, dass der Benutzer den Like-Button klickt
- Dazu verleitet er den Benutzer dazu, ein Spiel auf seiner Webseite zu spielen.
- Der Angreifer kann den Like-Button in einen frame einbinden, hat aber keine Kontrolle darüber, wie Facebook diesen Bereich/Frame darstellt.
- Der Angreifer hat jedoch die vollständige Kontrolle über den restlichen dargestellten Bereich (da das Spiel ja auf seiner eigenen Webseite gespielt wird).
Ein erfolgreicher Angriff setzt voraus, dass der Like-Button für eine bestimmte Zeit sichtbar ist, die Forscher gehen von ca. 500 ms aus. Folgende Angriffe konnten implementiert und mit 50 Personen getestet werden:
- "Destabilizing Pointer Perception" - Außer dem
tatsächlichen Maus-Zeiger wird ein Fake-Zeiger eingesetzt, um den
Benutzer zu verwirren. Er soll den Like-Button klicken, obwohl er ein
anderes Ziel anvisiert hat. Zusätzlich tragen viele sich bewegende
Bilder zur Verwirrung bei.
Alle Testpersonen haben den Test komplett durchlaufen, der Angriff hatte eine Erfolgsquote von 100%. - "Attacking Peripheral Vision" - Like-Button und Rest des
Spiel liegen sich diagonal gegenüber, der Like-Button unten links, die
Haupt-Spielfläche oben rechts. Klicken muss der Benutzer unten links,
so dass er von den Aktionen oben rechts so weit abgelenkt wird, dass er gar
nicht merkt, dass er einen Like-Button klickt.
Eine der Testpersonen hat den Test abgebrochen, die Erfolgsquote betrug 51,02%. - "Motor Adaptation" - Das Spiel besteht aus einem Asteroiden
und mehreren Mineralien. Die Mineralien müssen zum Sammeln von
Punkten angeklickt werden, ein Klick auf den Asteroiden führt zu
dessen Explosion und dem Ende des Spiels. Nachdem der Benutzer einige Zeit
gespielt hat und dabei quasi dressiert wurde, wird der Like-Button an
Stelle eines Minerals eingeblendet. Der gut dressierte Benutzer klickt
sofort auf den Like-Button, bevor er realisiert, dass das kein
anzuklickendes Mineral ist.
Vier der Testpersonen haben den Test abgebrochen, die Erfolgsquote betrug 28,26%. - "Fast Motion Mislocalization" - Um den Asteroiden dreht sich
nun ein Pfeil. Wenn der Pfeil stoppt, wird ein Mineral ausgestoßen,
dass der Benutzer wieder anklicken muss. Dabei kommt der "Flash Lag
Effect" zum Tragen: Ein sich bewegendes Objekt scheint weiter weg zu sein,
als es tatsächlich ist, da das Gehirn bereits die zukünftige
Position vorhersagt. Der Benutzer klickt also tatsächlich hinter das
Mineral, bekommt aber trotzdem Punkte dafür gutgeschrieben. Nach
einigen Spielzügen wird der Like-Button hinter dem Mineral
eingeblendet - dorthin, wo der Benutzer immer klickt, weil sein Gehirn im
dort das Mineral vorgaukelt. Wodurch der Benutzer nun natürlich den
Like-Button klickt.
Drei der Testpersonen haben den Test abgebrochen, die Erfolgsquote betrug 27,66%. - "Visual Cues and Click Timing" - Jetzt gibt es sich in
Schlangenlinien bewegende graue und rote Asteroiden: Für einen Klick
auf einen grauen Asteroiden gibt es einen Minus-Punkt, für einen Klick
auf einen roten Asteroiden drei Plus-Punkte. Ein roter Asteroid wird unter
einen Like-Button gelegt, auf den der Benutzer reflexartig klickt.
Alle Testpersonen haben durchgehalten, die Erfolgsquote lag bei 50%.
Die Angriffe 2 bis 5 funktionieren auch auf Touch-Geräten.
Die Angriffe lassen sich kombinieren, um die Erfolgsquote zu erhöhen, außerdem sind komplexere Angriffe möglich.
Bei der Entwicklung eines sicheren Benutzerinterfaces muss also auch die menschliche Wahrnehmung berücksichtigt werden. Es dürfte ziemlich schwierig werden, für diese Probleme eine technische Lösung zu finden. Wenn man mal von einer Nachfrage absieht, wie Facebook sie bereits für erkannte Angriffe einsetzt. Zumindest im Fall von Facebooks Like- und ähnlichen Buttons ist das aber keine ständige Lösung, da sie die Benutzer irgendwann stören wird, so dass die gar nicht mehr auf die Buttons klicken. Denn Like und Co. funktionieren nur, so lange sie quasi "nebenbei" angeklickt werden können. Zusätzliche Aktionen werden die meisten Benutzer kaum in Kauf nehmen.
Auch in der nächsten Folge geht es weiter um neue Entwicklungen beim Clickjacking.
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