Zwei Forscher haben es geschafft, mittels Reverse Engineering den Quellcode von Dropbox zu knacken. Dadurch wollen sie auf Sicherheitslücken aufmerksam machen, um so letztendlich die Nutzer des Speicherdienstes besser zu schützen. Die Details ihrer Vorgehensweise und die genauen Ergebnisse ihres Versuchs haben sie in dem Bericht “Looking Inside the (Drop) Box” veröffentlicht.
Dhiru Kholia und Przemyslaw Wegrzyn haben den Python-Code entschlüsselt, den der Dropbox-Client benutzt. Dabei konnten sie auch die Verschleierungstaktik von Dropbox erfolgreich umgehen, indem sie den Dropbox-Code Python27.dll unter Einsatz des PE-Explorers entpackten.
Die beiden Forscher konnten zudem mit Hilfe der Python-C-API-Funktion PyRun_SimpleString eigene Python-Programmzeilen einfügen, und dadurch den Dropbox-Client nach ihren Vorstellungen manipulieren. Durch das Einfügen des Codes PyMarshal_ReadLastObjectFromFile() war es möglich, den Python-Code zu deserialisieren. Eine Vorgehensweise, die auch bei ähnlich programmierten Anwendungen funktioniert.
Eine weitere Schutzmaβnahme gegen Reverse Engineering seitens Dropbox, das Opcode-Remapping, haben die Forscher ebenfalls ausgehebelt. Eine durch den Debugger Pyretic erstellte Mapping-Tabelle, die in vorigen Versionen des Clients gleich verwendet wurde, machte dies möglich. Mittels des Decompiler Uncompyle2 verwandelten Kholia und Wegrzyn schlieβlich den erhaltenen Bytecode in den Quellcode zurück.
Letztendlich sei es durch die Analyse des Python-Codes möglich, Nutzerkonten zu übernehmen. Eine Ursache dieser Sicherheitslücke ist die Tatsache, dass zwar auf der Dropbox-Webseite, nicht aber beim Dropbox-Client auf dem eigenen Rechner die Zwei-Faktor-Authentifizierung mit host_id und host_int zum Einsatz kommt . Nur die host_id wird benötigt, um ein Nutzerkonto hacken zu können. Die beiden Forscher haben es via Monkey Patching geschafft, die gewünschten Objekte der SSL-Verbindung zu verändern, um so die relevanten Daten der host-id vor deren Verschlüsselung einzusehen.
Ziel von Kholia und Wegrzyn ist es, Dropbox sicherer zu machen. Sie haben ihre Arbeit veröffentlicht und zudem einen quelloffenen Code für Dropbox geschrieben. Ganz nach dem Motto “Sicherheit durch Offenheit” wollen sie den Code für jedermann zugänglich machen, um weitere Sicherheitslücken zu finden und zu schlieβen. Denn das Konzept “security by obscurity”, d.h. die Geheimhaltung des Quellcodes, um Hacker fernzuhalten, gilt heutzutage als nicht sicher genug. Die beiden Forscher haben auch gezeigt, warum.