zurück zur Übersicht

CloudFlare Breach: Kritische Informationen aus der Nachbar-Session

Ärger mit CloudFlare: wegen eines Bugs in der SSH-Implementierung konnten vertrauliche Daten "entkommen"CloudFlare oder treffender die inoffizielle Bezeichnung „Cloudbleed“, hat durch Fehler in der Serversoftware monatelang sensible Daten von Kunden-Webseiten im Netz verteilt.

CloudFlare bietet eine Reihe von Dienstleistungen für Websites, von denen eine ein kostenloser HTTPS-Wrapper um eine bereits vorhandene Website des Kunden ist. Das bedeutet, dass Web-Entwickler sehr einfach SSL für die Web-Site verwenden können, kostenlos, was per se gut ist.

Nicht gut ist, dass jetzt alle Web-Entwickler, die diesen Service nutzen, einem „Single Point Of Failure“ unterliegen: kritische Daten von eigenen SSH-Sessions sind zum Teil auch in den Sessions anderer Nutzer sichtbar.

Fehler nur zufällig entdeckt

Wie so oft in der iT-Security wurde diese Lücke nicht von automatisierten Tools entdeckt. Das mag aber auch daran liegen, dass es sich hier auch um einen sehr komplexen „Bug“ handelt.

Doch wie kam es nun eigentlich zur Entdeckung?

Travis Ormandy bemerkte das Problem am Freitag Nachmittag als er für ein anderes Projekt „Fuzzing“ durchführte. Fuzzing ist eine Methode zum Testen von Software, mit der Programmierfehler und Sicherheitslücken aufgespürt werden sollen. Eingabeschnittstellen der getesteten Systeme werden dabei mit zufälligen Daten („Fuzz“) überflutet, um sie zum Absturz zu bringen.

Freitag Nachmittag ist natürlich eine überaus schlechte Zeit, um per Telefon eine Person zu erreichen, die sich des Problemes annehmen kann. Travis Ormandy wendete sich daher per Twitter an CloudFlare, mit der Bitte um dringende Rückmeldung. CloudFlare reagierte prompt und innerhalb weniger Stunden war ein erster „Fix“ ausgerollt.

Die Schwachstelle im Detail

Einfach zusammengefasst handelt es sich um einen simplen Zeigerfehler im C-Programm. In einer If-Abfrage wurde auf „gleich“ und nicht auf „größer als oder gleich“ geprüft, was schlussendlich zu einem „buffer overrun“ führte.

Die Symptome dieses Bugs waren, dass die „Browser-Session“ eines anderen angemeldeten Users in die eigene einfließen konnte. So wurden z.b API-Schlüssel und Passwörter „veröffentlicht“.

Entstanden ist dieser Fehler nicht eigentlich durch unachtsame Programmierung im C-Code, sondern durch ein automatisches Konvertieren des Quellcodes von „Ragel“ nach C. Das warf zunächst die Frage auf, ob die Konvertierung an sich fehlerhaft war, oder ob Ragel nicht richtig verwendet wurde. Nach sorgfältiger Analyse kam CloudFare zu dem Schluss, dass der Ragel-Code selbst bereits einen Bug enthielt, der zu diesem Verhalten führte. Um einen raschen ersten „Fix“ anbieten zu können, wurden einige Feautures von CloudFlare zeitweise deaktiviert.

Passwörter und private Dating-Nachrichten wurden versehentlich veröffentlicht

Unter den geleakten Daten befinden sich wohl Passwörter, private Nachrichten von Dating-Seiten und was sonst noch so auf der „Leitung“ unterwegs war. Aussagen von CloudFlare zufolge waren keine „private keys“ von Kunden betroffen, sondern die private Keys der CloudFlare internen Systeme. Nach eigenen Angaben besteht die Möglichkeit eines Lecks seit ca 22.9.2016.

Ein erhöhtes Risiko bestand allerdings erst nach dem 13.02.2017, da hier ein neuer Parser eingesetzt wurde.

Angeordnete Amnesie

In der Zeit, in der der Bug bestand, haben natürlich die Crawler von Suchmaschinen wie Google, Bing oder Yahoo einiges an Daten verarbeitet und archiviert oder zwischengespeichert. Darunter waren wohl auch Daten, die durch den Bug unbeabsichtigt im Netz gelandet sind.

Das Schwierige war/ist es nun, diese Daten, die erfasst wurden, zu entfernen. Google, Bing und Yahoo betrieben hier immensen Aufwand, um das zu bewerkstelligen, bevor man damit an die Öffentlichkeit ging.

Licht am Ende des Tunnels?

Positiv zu bemerken ist das schnelle Reagieren von CloudFlare und das offene Zusammenspiel aller beteiligten Parteien (Google, Bing, Yahoo). Das Problem konnte so sehr zügig behoben werden.

Ob dieser Bug möglicherweise in den Cyber-Crime-Netzwerken des Dark Net (eine kleine „Safari“ durch die Schattenseite des Internets hier) schon länger bekannt war, und gezielt ausgenutzt wurde, weiß niemand so richtig.

Zumindest ist das Problem jetzt behoben.

 


 

https://blog.cloudflare.com/incident-report-on-memory-leak-caused-by-cloudflare-parser-bug/

https://bugs.chromium.org/p/project-zero/issues/detail?id=1139

https://github.com/pirate/sites-using-cloudflare

https://www.heise.de/security/meldung/Cloudbleed-Geheime-Inhalte-von-Millionen-Webseiten-durch-Cloudflare-oeffentlich-3634075.html
Bild: ©iT-CUBE SYSTEMS AG 2017

Schreibe einen Kommentar