Vielen unbekannt besitzt Facebook für seine Arbeitnehmer einen gesicherten Dateitransfer unter https://files.fb.com. Zu diesem berichtete ein Hacker kürzlich eine besonders kritische Schwachstelle im Rücksetzen des Passworts.
Nir Goldshlager, ein Entwickler, erläutert, wie er diese Lücke entdeckte, die er Facebook dann mitteilte, ohne sie zu veröffentlichen, bis sie geschlossen war.
Bei Analyse der Site entdeckte er, dass Facebook ein Skript von “Accellion Secure File Sharing Service” nutzt. Also lud er dessen
Demo-Version von Accellion und erkundete den Quellcode und darin enthaltene Dateiorte.
Im Code fiel ihm eine Seite zur Registrierung von Nutzern auf, die auch auf files.fb.com existiert. Zwar hatte Facebook den Link zur Registrierung von seiner Homepage entfernt, dabei aber versehentlich die verlinkte Seite an ihrer ursprünglichen Adresse belassen:
/courier/web/1000@/wmReg.html.
So konnte Goldshlager ein Nutzerkonto für sein weiteres Eindringen anlegen. Er bemerkte dann, dass der Demo-Quellcode des Dienstes mit ionCube PHP Encoder verschlüsselt ist, sodass er etliche Codeteile nicht entschlüsseln konnte.
Dennoch ist der Quelltext einer Web-Applikation für die Analyse ihrer Lücken Gold wert: Mit diesem Code lässt sich leicht nach ihren entscheidenden Schwachstellen suchen. Allerdings ignorierte Goldshlager diesen Ansatz wegen der Verschlüsselung.
Auf der Site gibt es weiterhin eine Seite zur Rücksetzung eines Passworts (wmPassupdate.html). Tatsächlich konnte dort jeder das Kennwort eines jeden Kontos neu festlegen. Goldshlager bemerkte, dass, wenn man diesen Reset beantragte, die Seite den Nutzer durch einen Cookie, “referer”, validierte, der die Email-ID dieses eingeloggten Nutzers enthielt, verschlüsselt in Base64.
[Bild: Facebook Employees]
Zum Schluss drang Goldshlager in den Dienst des Dateitransfers ein, indem er Cookie-Inhalte auf die Email-ID und Kennwortparameter eines Opfers setzte. So konnte er Kennworte von Facebook-Angestellten neu setzen. Er berichtete Facebook diese Schwachstelle, das diese daraufhin behob.