Clickjacking - Gute und Schlechte Nachrichten
Außer quasi ständigen Angriffen auf bzw. über Facebook gab es beim Clickjacking noch einige weitere mehr oder weniger erfreuliche Nachrichten. Fangen wir mit den schlechten Nachrichten an:
Framebuster verhindern Clickjacking - aber nicht immer
Update 30.1.2014:
Das folgende gilt inzwischen teilweise nur noch eingeschränkt. Der
aktuelle Stand der Dinge für die Server-Seite ist
hier
beschrieben.
Ende des Updates
Anfangs wurden Framebuster, meist im Form des JavaScript-Codes
<script type="text/javascript">
if (top!=self) top.location.href=self.location.href;
</script>
als Allheilmittel gegen Clickjacking angesehen. Schon bald stellte sich heraus, dass sich die meisten Framebuster umgehen lassen. Gustav Rydstedt, Elie Bursztein und Dan Boneh von der Stanford University und Collin Jackson von der Carnegie Mellon University wiesen im Juli 2010 in ihrem Paper "Busting Frame Busting - a Study of Clickjacking Vulnerabilities on Popular Sites" (PDF) nach, dass Framebuster keine Sicherheit vor Clickjacking garantieren: Sie untersuchten die Framebuster der Alexa Top-500 Sites, die sich alle auf die eine oder andere Art und in mehr oder weniger vielen Browsern umgehen lassen.
Sie empfehlen als sichere Lösung den
X-FRAME-OPTIONS
-HTTP-Header, Mozillas
Content Security Policy
(CSP) sowie einen Framebuster in JavaScript, den sie für den (damals)
sichersten hielten.
Allerdings sollte man sich den Einsatz von JavaScript-Framebustern gut
überlegen, denn mit Einführung des sandbox
-Attributs
für iframes in HTML5 haben die ausgedient: Das
sandbox
-Attribut deaktiviert die Top-Level-Navigation, so dass
der Framebuster versagt und die in den iframe mit
sandbox
-Attribut geladene Seite für Clickjacking
anfällig ist. Darauf weist z.B. die IT-Sicherheitsbehörde der EU
(ENISA, European Network and Information Security Agency) in einer
Untersuchung
(PDF)
hin.
Da die CSP nur in Mozilla-Programmen funktioniert, bleibt nur der
X-FRAME-OPTIONS
-HTTP-Header als von allen Browsern
akzeptierte Lösung.
Google- und Twitter-Buttons erlauben Clickjacking
Twitters "Follow"-Button ist für Clickjacking anfällig, und auch Googles +1-Button ist betroffen. Der Entdecker der Schwachstellen hat jeweils Demo-Seiten vorbereitet. Während bei Twitter das Opfer zum Follower eines vom Angreifer ausgewählten Feeds wird, empfiehlt es bei Googles +1-Button eine vom Angreifer ausgewählte Seite seinen Kontakten (vergleichbar dem Likejacking bei Facebook). Nicht ohne Grund hatte ich damals das Likejacking als Buttonjacking bezeichnet. Um mich selbst zu zitieren:
"Das Problem von Facebooks"Like"
-Button und allen anderen Schaltflächen etc., die auf einer Webseite eingebunden werden, um Aktionen im Kontext eines anderen Dienstes auszulösen: Sofern sie nur auf einen Klick warten und daraufhin sofort eine Aktion im Namen eines bei ihrem eigenen Dienst angemeldeten Benutzers auslösen, können sie sich nicht mit einem Framebuster vor Clickjacking schützen, da es ja gerade ihre Aufgabe ist, in einer anderen Seite eingebunden zu sein. Und auch serverseitige Schutzmöglichkeiten wie der "X-FRAME-OPTIONS"
-Header lassen sich nicht anwenden. Sofern die Seite, die sie einbettet, nicht selbst gegen Clickjacking geschützt ist, sind sie ein leichtes Opfer eines solchen Angriffs."
Aber kommen wir zu den guten Nachrichten:
Android-Update schützt vor "mobilen Clickjacking"
Ein mit dem Clickjacking vergleichbarer Angriff auf Smartphones ist das Touch-Event Hijacking oder TapJacking, bei dem statt Mausklicks das Tippen auf den Touchscreen umgeleitet wird. Statt auf der angezeigten Benutzeroberfläche landen die Touch-Events auf einer für den Benutzer unsichtbaren Benutzeroberfläche. Dieser Angriff wurde von Gustav Rydstedt, Baptiste Gourdin, Elie Bursztein und Dan Boneh von der Stanford University in ihrem Vortrag "Framing Attacks on Smart Phones and Dumb Routers: Tap-jacking and Geo-localization Attacks" auf dem 4th USENIX Workshop on Offensive Technologies vorgestellt (Paper als PDF) In Android wurde in Version 2.3 eine Schutzmaßnahme gegen diese Angriffe implementiert. Es ist nun möglich, Interaktions-Events zu blockieren, wenn die zugehörige Oberfläche nicht sichtbar ist, z.B. weil sie von einer anderen verdeckt wird.
WordPress 3.1.3 mit Clickjacking-Schutz
WordPress 3.1.3 enthält einen Clickjacking-Schutz für Administrations- und Login-Seiten. Dadurch ist es z.B. nicht mehr möglich, über einen Clickjacking-Angriff auf einem Administrator diesen unbemerkt Einstellungen ändern zu lassen. Es wäre schön, wenn die Entwickler weiterer Webanwendungen sich an diesem Vorbild orientieren würden.
Kein Clickjacking bei Drive-by-Angriff über Facebook
Am 1. Juni 2011 meldete F-Secure einen Angriff über Facebook, bei dem die "Like"-Funktion missbraucht wurde, um die Opfer auf eine angebliche Video-Seite zu lotsen, auf der ihnen dann je nach System eine ungenannte Schadsoftware für Windows oder Scareware für Mac OS X untergeschoben wurde. Entgegen ersten Annahmen kam dabei kein Clickjacking zum Einsatz. Aber auch ohne Schadsoftware zu verbreiten kann mit Clickjacking ja mehr als genug Schaden angerichtet werden.
Und damit ist das Thema "Clickjacking" mal wieder abgeschlossen. Bis es wieder etwas Neues gibt, was leider früher oder später passieren wird. In der nächsten Folge geht es um Möglichkeiten zum Manipulieren von Anzeigen aller Art durch Right to Left Override (RLO) Unicode Tricks.
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 : Alternativen zum SSL-CA-Zertifizierungssystem
Vorschau anzeigen
Dipl.-Inform. Carsten Eilers am : Präsentationen und Links zu meinen #wtc11-Vorträgen sind online
Vorschau anzeigen
Dipl.-Inform. Carsten Eilers am : Werbung in eigener Sache: E-Book "HTML5 Security" veröffentlicht
Vorschau anzeigen