Ein neuer Angriff gegen die Webverschlüsselung HTTPS nutzt das vermeintlich schwächste Glied in der Kette: Den Benutzer.
Der Amerikaner Moxie Marlinspike hatte bereits 2002 sslsniff entwickelt. Das ist ein Proxy, der aus SSL-Datenströmen das von der Gegenstelle präsentierte Serverzertifikat austauscht und durch ein eigenes ersetzt. Die damit verbundenen Angriffsmöglichkeiten sind heute — eine richtige Konfiguration und aktuelle Browser vorausgesetzt – weitgehend behoben. Was aber, hat sich Marlinspike gefragt, wenn der Browser des Anwenders gar keine SSL-Anfragen stellt?
Dazu entwickelte der in San Francisco lebende Softwareexperte einen weiteren Proxy namens sslstrip (Vortragsfolien als PDF), der von Servern ausgelieferte Webseiten nach eingebetteten Links wie
<a href="https://.../login.php">
durchsucht. Der Proxy modifiziert diese Seiten: Er ersetzt alle HTTPS-Links durch gleichlautende HTTP-Anfragen wie
<a href="http://.../login.php">
und merkt sich zugleich die Ziel-URL
<a href="https://.../login.php">
Klickt der Anwender in der Folge auf solch einen modifizierten URL, erkennt dies der Proxy ebenfalls und startet seinerseits gegenüber dem Server eine SSL-Verbindung und liefert deren Ergebnisse an den Anwender aus
Auf diese Weise erhält der Angreifer Zugriff auf alle Informationen aus der Verbindung. Solch ein Szenario ist etwa denkbar bei Websites mit Online-Banking, die eine normale HTTP-Startseite anbieten. Solche Sites enthalten dann ihrerseits SSL-Links und sind zudem optisch oft als sichere Bereiche ausgewiesen. Zwar zeigen moderne Browser tatsächlich zustandegekommene Links optisch an, doch prüfen Anwender diese Fingerzeige nicht nimmer. Bei dem skizzierten Verfahren tauchen beim Benutzer keine Warnungen auf, da er ja keine ungültige HTTPS-Verbindung aufbaut – sein Browser baut einfach gar keine sichere Verbindung auf.
Nach einer umfangreichen Debatte in der vergangenen Woche ist das Werkzeug sslstrip nun auch zum Download verfügbar. Es besteht aus rund 1000 Zeilen Python-Code und ist unter der GPLv3 lizenziert.





