Anzeige
Das Misfortune Cookie betrifft viele Home-Router im Internet.
Das Misfortune Cookie betrifft viele Home-Router im Internet. (Bild: Pixabay / Hans)

Misfortune Cookie: Die offene Lücke auf Port 7547

Das Misfortune Cookie betrifft viele Home-Router im Internet.
Das Misfortune Cookie betrifft viele Home-Router im Internet. (Bild: Pixabay / Hans)

Der HTTP-Server Rompager, der in Millionen von Internet-Devices eingesetzt wird, hat eine gravierende Sicherheitslücke. Auf dem 31C3 haben Forscher der Firma Check Point Details und Hintergründe zum wenig bekannten Protokoll TR-069 vorgestellt.

Anzeige

TR-069 ist ein Protokoll, von dem die meisten Internetanwender vermutlich noch nichts gehört haben. Doch aus Scans des gesamten IPv4-Adressraums nach offenen Ports geht hervor, dass es eine enorme Verbreitung hat: Etwa 45 Millionen Geräte im Internet lauschen auf diesem Port. TR-069 ist vor allem auf Home-Routern installiert und dient zur Fernkonfiguration der Geräte, beispielsweise durch Internet-Zugangsprovider. Das Protokoll baut auf HTTP auf und wird sehr häufig durch eine Software namens Rompager bereitgestellt.

Vor knapp zwei Wochen warnten Forscher der Firma Check Point vor einer Sicherheitslücke in Millionen von Internet-Devices, die Misfortune Cookie getauft wurde. Da Check Point nur wenige Details veröffentlicht hat, waren viele Fachleute skeptisch, auch Golem.de hat nur zurückhaltend über die Lücke berichtet. Doch auf dem 31C3 haben Lior Oppenheim und Shahar Tal von Check Point weitere Details zu Misfortune Cookie bekanntgegeben. Sie ist tatsächlich so gravierend wie zuerst gemeldet.

Die Hälfte aller TR-069-Geräte nutzt Rompager 4.07

Die Check-Point-Forscher haben im November 2014 den gesamten IPv4-Adressraum nach Geräten abgesucht, die auf Port 7547 lauschen. Dabei erhielten sie Antworten von 1,18 Prozent der IP-Adressen. Bemerkenswert dabei: Über die Hälfte davon - 52 Prozent - wurden mit Rompager betrieben und davon wiederum 98 Prozent mit derselben Version 4.07. Es stellte sich also heraus, dass ein Großteil der TR-069-Geräte dieselbe Version derselben Software benutzt. Diese Software ist noch dazu uralt: Rompager 4.07 wurde 2002 veröffentlicht, und es hat seitdem zahlreiche neuere Versionen gegeben, die jedoch kaum verbreitet sind. Die Softwareversion des Routers lässt sich einfach anhand des HTTP-Headers "Server" erkennen (z. B. "Server: RomPager/4.07 UPnP/1.0").

Für diese ältere Rompager-Version war bereits eine Sicherheitslücke bekannt, die sogenannte Rom-0-Lücke (CVE-2014-4019). Doch diese ließ sich nur ausnutzen, wenn Rompager das Konfigurationsinterface des Routers bereitstellt. Bei der Rom-0-Lücke kann man auf einer bestimmten URL ohne Kenntnis der Zugangsdaten die gesamte Konfiguration des Routers inklusive Zugangsdaten auslesen. Doch nur eine geringe Zahl von Geräten stellte ihr Konfigurationsinterface über das Internet bereit, somit waren die Auswirkungen dieser Lücke begrenzt.

Die Check-Point-Forscher haben einen handelsüblichen Router der Firma TP-Link untersucht, der ebenfalls Rompager 4.07 nutzt. Für den Router stand ein Firmware-Update bereit, doch das änderte nichts an der Rompager-Version. Es befand sich somit auf einem neuen Router mit aktueller Firmware ein veralteter HTTP-Server von 2002. Insgesamt fanden sich über 200 Geräte von 50 verschiedenen Herstellern, die alle Rompager 4.07 benutzen.

Fuzzing findet Lücke im HTTP-Parser

Bei Check Point entschloss man sich nun, die Firmware zu analysieren. Diese nutzte das Betriebssystem ZynOS von der Firma Zyxel. Mit dem Tool Binwalker ließen sich die Firmware-Images entpacken. Auf dem untersuchten TP-Link-Router befanden sich Anschlüsse für eine serielle Schnittstelle, auf der man Debugging-Informationen auslesen konnte. Damit war die Analyse deutlich einfacher möglich. Mit Hilfe von einfachem Fuzzing der HTTP-Header fand Oppenheim bereits eine Möglichkeit, das Gerät über Sonderzeichen im HTTP-Usernamen zum Absturz zu bringen. Eine weitere Analyse ergab, dass sich mit dieser Lücke auch Code ausführen ließ. Das wäre schon ein großes Problem, aber die Lücke lässt sich nicht generisch ausnutzen, da das Speicherlayout auf unterschiedlichen Geräten nicht identisch ist. Oppenheimer fand noch eine weitere Lücke im Parser des HTTP-Requests, die sich jedoch nur über Port 80 ausnutzen ließ.

Die entscheidende Lücke befindet sich jedoch im Cookie-Parser des Webservers. Die Cookies von Rompager sind durchnummeriert, es ist Platz für 10 Cookies im Speicher vorgesehen. Da es sich um relativ simple MIPS-Geräte handelt, haben sie keine dynamische Speicherverwaltung. Wie Oppenheimer herausfand, werden die Cookies über eine Nummer indiziert. Und diese Nummer wird direkt als Index für den Speicherzugriff verwendet. Einen Check, ob das Cookie sich im richtigen Speicherbereich befindet, gab es nicht, ein klassischer Buffer Overflow war somit möglich. Und hier war das Speicherlayout so angeordnet, dass der Angriff unabhängig vom verwendeten Gerät funktionierte. Ein Beispiel zur Demonstration der Lücke ist folgender Cookie-Header:

Cookie: C107373883=/omg1337hax

Damit wird nur ein entsprechend harmloser String ausgegeben, dieselbe Lücke lässt sich aber auch zur Ausführung beliebigen Codes nutzen. Tal und Oppenheimer demonstrierten das während des Vortrags anhand eines vollkommen neuen TP-Link-Routers. Die Lücke ließ sich auf allen Geräten mit Rompager 4.07 ausnutzen, die von Check Point untersucht wurden. Dafür hatten die Check-Point-Forscher ein Chrome-Plugin entwickelt, mit dem sie direkt Administrationszugriff auf die betroffenen Geräte erhalten können, das jedoch nicht veröffentlicht wurde.

Was die Lücke besonders gravierend macht: In aller Regel lässt sich die Funktionalität von TR-069 nicht abschalten. Selbst wenn ein Router die Möglichkeit anbietet, TR-069 abzuschalten, lauscht Rompager weiterhin auf Port 7547 - die Lücke bleibt weiterhin offen. Einige Router-Hersteller haben inzwischen Updates bereitgestellt. Wer ein Gerät besitzt, für das kein Update bereitsteht, sollte versuchen, auf Alternativfirmware zurückzugreifen. Für viele Geräte gibt es etwa Firmware-Images der Projeket OpenWRT oder DD-WRT. Wer einen neuen Router kauft, sollte darauf achten, dass er keines der betroffenen Geräte erhält, solange kein Fix bereitsteht.

Das Problem besteht laut Check Point vor allem darin, dass die Entwicklung eines Routers so viele Beteiligte einschließt. Die hohe Verbreitung von Rompager 4.07 geht überwiegend auf ein SDK zurück, das die Software von Allegrosoft eingekauft hat. Dieses SDK wurde von sehr vielen Router-Herstellern genutzt. Anschließend haben viele Internet-Zugangsprovider noch modifizierte Router-Versionen produziert und an ihre Kunden verteilt. In dieser Kette gelangen neue Releases und Korrekturen nur sehr langsam zum Endnutzer. Daher war es möglich, dass ein Bug in einer über zehn Jahre alten Software zu einer so gravierenden Sicherheitslücke führte. Allegrosoft selbst ruft in einer Stellungnahme alle Hersteller von Geräten mit Rompager dazu auf, keine veralteten Versionen der Software zu nutzen.

Der Autor dieses Artikels hat ein simples Check-Tool entwickelt, mit dem sich Router online auf die verwendete Rompager-Version prüfen lassen. Der PHP-Quellcode wird in Kürze auf Github veröffentlicht, das Tool lässt sich dann auch lokal benutzen.


eye home zur Startseite
holminger 30. Dez 2014

Etwas, was mit OpenWRT oder DD-WRT läuft. Ich suche seit ein paar Jahren meine Router...

Nyckelpiga 30. Dez 2014

Nicht einmal bereits bekannte Lücken werden repariert? Warum müssen die ISPs gezwungen...

Avalanche 30. Dez 2014

dieser Vorfall zeigt ein weiters mal eindrucksvoll, warum für mich als Nutzer...

Schattenwerk 29. Dez 2014

Das dies "stattbekannt" sein soll bezweifel ich einmal stark. Ich kenne genug Leute, wo...

Kommentieren



Anzeige

Stellenmarkt
  1. operational services GmbH & Co. KG, Frankfurt
  2. über Hanseatisches Personalkontor Stuttgart, Crailsheim
  3. Daimler AG, Ulm
  4. Diehl Metering GmbH, Nürnberg


Anzeige
Hardware-Angebote
  1. (reduzierte Überstände, Restposten & Co.)

Folgen Sie uns
       


  1. Axon 7

    ZTEs Topsmartphone kommt für 450 Euro nach Deutschland

  2. Medienanstalten

    Analoge TV-Verbreitung bindet hohe Netzkapazitäten

  3. Vorstandard

    Nokia will bereits ein 5G-fähiges Netz haben

  4. Vielfliegerprogramm

    Hacker stehlen Millionen Air-India-Meilen

  5. Funknetz

    BVG bietet offenes WLAN auf vielen U-Bahnhöfen

  6. Curiosity

    Weitere Hinweise auf einst sauerstoffreiche Mars-Atmosphäre

  7. Helium

    Neues Gas aus Tansania

  8. Streaming

    Netflix arbeitet mit Partnern an einer Sprachsuche

  9. Millionenrückzahlung

    Gericht erklärt Happy Birthday für gemeinfrei

  10. Trials of the Blood Dragon im Test

    Motorräder im B-Movie-Rausch



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Schulunterricht: "Wir zocken die ganze Zeit Minecraft"
Schulunterricht
"Wir zocken die ganze Zeit Minecraft"
  1. Firaxis Games Lernen und prüfen mit Civilization Edu
  2. MCreator für Arduino Mit Klötzchen LEDs steuern
  3. Lifeboat-Community Minecraft-Spieler müssen sich neues Passwort craften

Oneplus Three im Test: Ein Alptraum für die Android-Konkurrenz
Oneplus Three im Test
Ein Alptraum für die Android-Konkurrenz
  1. Android-Smartphone Diskussionen um Speichermanagement beim Oneplus Three
  2. Smartphones Oneplus soll keine günstigeren Modellreihen mehr planen
  3. Ohne Einladung Oneplus Three kommt mit 6 GByte RAM für 400 Euro

Smart City: Der Bürger gestaltet mit
Smart City
Der Bürger gestaltet mit
  1. Vernetztes Fahren Bosch will (fast) alle Parkplatzprobleme lösen

  1. Re: Habe bei Wikipedia eine Zeit Beitraege gemacht

    BobQuentok | 22:19

  2. Re: Wow! 1.7*10^9 m³ ... das ist schon eine Menge..

    Eheran | 22:17

  3. Re: Braucht man unbedingt für Whatsapp und Fratzbuch!

    nightmar17 | 22:16

  4. Re: Das ist doch alles nicht relavent und auch...

    plutoniumsulfat | 22:14

  5. Re: Fragen

    mr_tux | 22:12


  1. 19:19

  2. 19:06

  3. 18:25

  4. 18:17

  5. 17:03

  6. 16:53

  7. 16:44

  8. 15:33


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel