Sicherheitsloch bei der Browser-Authentifizierung
Eine Schwachstelle im Hypertext Transfer Protocol ermöglicht Browser-Spoofing. Da die Schwachstelle in der Protokollspezifikation liegt, betrifft sie plattformübergreifend alle Browser und Server.
Der israelische Hacker Ncevy hat eine Schwachstelle im Hypertext Transfer Protocol (HTTP, RFC 1945) aufgedeckt, die Browser und Server aller Hersteller betrifft. Die Browser-Authentifizierung ist unzureichend gesichert und lässt sich beliebig manipulieren. Über gefälschte User-Agent-Header können Angreifer so genannte Browser-Spoofing-Angriffe durchführen. heise Security sind mehrere Fälle bekannt, in denen Hacker durch Browser-Spoofing bereits die Schutzmechanismen von Web-Servern ausgehebelt haben.
Da die Schwachstelle in der Protokollspezifikation liegt, betrifft sie plattformübergreifend alle Browser und Server. Ncevy hat als Proof-of-Concept-Exploit ein Browser-in-the-Middle-Programm (BMP) entwickelt, mit dem sich solche Browser-Spoofing-Attacken sogar für ganze Netzwerke automatisieren lassen.
Besonders kritisch ist dieses Sicherheitsproblem, weil nicht nur der ungesicherte HTTP-Verkehr, sondern auch der verschlüsselte HTTPS-Verkehr betroffen ist. Selbst SSL-Client-Authentifizierung kann Browser-Spoofing nicht verhindern. Da HTTPS auch für Online-Banking eingesetzt wird, lassen sich selbst Server bekannter Banken durch Browser-Spoofing-Angriffe täuschen und geben unbeabsichtigt Web-Seiten preis, auf die der Benutzer eigentlich keinen Zugriff erhalten sollte.
Microsoft hat das Problem bereits bestätigt und erklärt, dass man an einer Lösung arbeite. Die Open-Source-Gemeinde will in den nächsten Tage ein Apache-Modul bereitstellen, das eine kryptografisch gesicherte Browser-Authentifizierung ermöglicht. Dabei bildet der Server einen MD5-Hash über alle vom Browser gesendeten Informationen und entscheidet dann, ob die übertragenen Daten stimmen.
Bis alle Server- und Browser-Hersteller Patches und Erweiterungen bereitstellen, empfiehlt Ncevy als Schutzmaßnahme, auf Servern kein HTTP mehr einzusetzen. Auch Anwender sollten beim Surfen auf das schon vom Design her unsichere HTTP verzichten. (ju)