Zum Hauptinhalt Zur Navigation

Browser: preventDefault() ermöglicht Passwortklau

Mit einem einfachen Trick ist es möglich, Nutzern Passwörter zu entlocken, zeigt der Blogger h43z. Er nutzt dazu ein von Neophasis zuvor entdecktes Problem, das durch die Standard-DOM-Methode preventDefault() in allen Browsern besteht.
/ Jens Ihlenfeld
48 Kommentare News folgen (öffnet im neuen Fenster)
Passwortklau durch preventDefault() (Bild: Neophasis)
Passwortklau durch preventDefault() Bild: Neophasis

Bereits Mitte November hat das auf mobile Sicherheit spezialisierte Unternehmen Neophasis darauf hingewiesen, dass sich die DOM-Methode preventDefault() missbrauchen lässt(öffnet im neuen Fenster) . Die in allen Browsern implementierte Methode sorgt dafür, dass der Browser die eigentlich für ein Ereignis vorgesehenen Funktionen nicht ausführt. Entwickler können das Standardverhalten von Browsern ändern, beispielsweise, um auf einen Rechtsklick zu reagieren, ohne dass das Kontextmenü des Browsers angezeigt wird.

Mit preventDefault() kann allerdings auch das Standardverhalten von Tastenkombinationen geändert werden, beispielsweise "Strg + F" oder "Kommando + F", womit in aller Regel eine lokale Suche innerhalb einer Webseite angestoßen wird. Neophasis warnt nun, dieses Verhalten könnten Angreifer ausnutzen, um einen gefälschten Suchdialog einzublenden und so Nutzern ihre Sucheingaben zu stehlen.

Der Blogger h43z hat die Idee nun beispielhaft umgesetzt(öffnet im neuen Fenster) . Er zeigt auf einer Webseite eine Liste von Passwörtern, so dass Nutzer die Suchfunktion nutzen können, um herauszufinden, ob auch ihr Passwort darin enthalten ist. Sobald Nutzer ihr Passwort in die vermeintlich lokale Suchfunktion des Browsers eingeben, hat der Angreifer Zugriff darauf.

Der Blogger weist aber darauf hin, dass sich der Suchdialog der Browser unterscheidet, was seine Demo noch nicht tut.

Neophasis rät Browserherstellern, ihre Suchdialoge aus dem Content-Bereich herauszunehmen, so dass Angreifer diese nicht mehr täuschend echt nachahmen können. Alternativ könnten Browser auch darauf hinweisen, wenn eine Website die Methode preventDefault() im Zusammenhang mit einer vom Browser belegten Tastenkombination aufruft.


Relevante Themen