Umgehung der Telekom FON Hotspot-Authentifizierung

Standard

Heute, während ich einige Netzwerkprobleme behebe, entdecke ich eine dieser zu guten Schwachstellen in meinem Router.

Aber fangen wir von vorne an: Deutschlands größter ISP, die Telekom, bietet in Zusammenarbeit mit Fon einen Hotspot-Service an, bei dem Kunden weltweit auf einige Millionen Telekom Hotspot nutzen zu können. Kunden können entweder eine monatliche Gebühr zahlen oder, wenn ihr Speedport-Router unterstützt wird, das Programm „WLAN TO GO“ für den kostenlosen Zugang nutzen. Wenn sie dies tun, erstellt ihr Speedport ein zweites, ungesichertes WiFi-Netzwerk, das die Benutzer beim Beitritt zur Eingabe ihrer Anmeldeinformationen auffordert. Der gesamte Datenverkehr scheint über einen bandwithgedrosselten Proxy zu einem Telekom-Server geleitet zu werden, um dich aus Schwierigkeiten herauszuhalten, falls ein Kerl beschließt, die NSA zu hacken oder so.

Alles Traffic? Nein. Ich habe diesen „versteckten“ Teil des Bedienfeldes meines Routers entdeckt, der verdächtig wie eine Art Whitelist aussieht, oder?

Es macht irgendwie Sinn, wenn man darüber nachdenkt, was? Es sollte eine Möglichkeit geben, das Hotspot-Login und die dazugehörigen Websites anzuzeigen (basierend auf den auf der Whitelist aufgeführten Domains, kann man einige Support- und Zahlungsseiten erwarten). Nach den ^ und $s zu urteilen, ist es ziemlich sicher anzunehmen, dass wir hier reguläre Ausdrücke betrachten. Das Schreiben von korrekten RegExps kann schon schwierig genug sein, wenn Sie kein Telekom-Ingenieur sind, aber sie wissen zumindest, dass Punkte Wildcards darstellen und dies ist nur ein schön gedrucktes RegExp, nicht wahr? Nun, die RegExp ^(.*\\.)?paypalobjects.com$ zeigt deutlich, dass wir die aktuellen regulären Ausdrücke sehen. Bonuspunkte für den falsch escapten Punkt in dieser einen Domain.

Das nächste, was ich vermeidbar tat, war, durch die Whitelist zu scrollen und nach einer.de-Domain (2€/Jahr, wer bin ich, Croesus?!) zu suchen, die nicht die Instinkte eines Unternehmensjuristen zum Markenschutz auslösen würde. Am Ende der Liste fand ich etwas, das diesen Kriterien entsprach: ^www.hotspot.de$. Etwa eine Stunde später konnte ich mich als stolzer Besitzer von wwwxhotspot.de bezeichnen.

Ich feuerte meinen Laptop an, stellte eine Verbindung zum Hotspot her, entließ die Anmeldeaufforderung und ging zu GitHub. Nichts, Verbindungs-Timeout, wie erwartet. Als nächstes meine neu erworbene Domain. Funktioniert.

Als nächstes versuchte ich, ohne viel zu erwarten, mich mit meinem OpenVPN-Server zu verbinden, der auf dem Rechner hinter wwwxhotspot.de läuft. Es funktionierte einwandfrei und erlaubte es im Wesentlichen jedem, im gesamten Internet zu surfen, ohne jegliche Authentifizierung oder Einschränkungen.

Das Umgehen der Authentifizierung schien seltsamerweise auch die Geschwindigkeitsbegrenzung des Hotspots von 16 MBit zu umgehen.

Ich habe dies natürlich nur auf meinem eigenen Router, VPN und meiner eigenen Domain getestet und unterstütze keinen Missbrauch dieser Schwachstelle. Überprüfen Sie Ihre RegExps immer noch einmal, besonders wenn sie als Whitelist dienen. Ich empfehle Debuggex, es macht das Finden von Problemen in komplexen Ausdrücken zu einem Glücksfall.

Hoffen wir, dass diese Schwachstelle bald behoben wird, aber angesichts der fragwürdigen Sicherheitslage der Telekom wäre ich nicht überrascht, wenn sie dies für ein Nicht-Thema halten würden.

Aktualisierung 20. Feb 2017:

Ein Telekom-Mitarbeiter hat sich gerade mit mir in Verbindung gesetzt und mir versichert, dass sie diese Schwachstellen sehr ernst nehmen, obwohl sie nicht von ihrem Bug-Bounty-Programm abgedeckt werden. Laut der Mail wurde das Problem in den letzten Tagen behoben und aktualisierte Konfigurationen wurden heute auf alle Hotspot-fähigen Geräte übertragen. Da das Öffnen eines Hotspots die Aktivierung von „EasySupport“ (TR-069) erfordert, sollte keine Benutzeraktion erforderlich sein, um diese Vuln zu beheben. Ich kann bestätigen, dass mein Gerät eine aktualisierte Konfiguration erhalten hat, die ein korrektes Escaping für die RegExp-Wildcards hinzufügt, aber da es heute etwas knapp bemessen ist, habe ich es noch nicht genau geprüft.