Der auf Sicherheit spezialisierte Forscher Stephen Sclafani entdeckte eine Sicherheitslücke in der obsoleten legacy REST API von Facebook, durch die er die privaten Nachrichten jedes Nutzers auslesen konnte, und durch die er im Namen jedes Nutzers posten, kommentieren oder liken konnte.
Die Sicherheitslücke lässt sich folgendermaßen erklären:
Vor der aktuellen Graph API war die REST API die Schnittstelle, durch die andere Webseiten und Applikationen mit Facebook interagieren konnten. Damit externe Anwendungen aber Aktionen wie das Posten im Namen eines Nutzers ausführen können, benötigen Sie dazu erst die vom Nutzer erteilte Berechtigung dazu. Für Facebook-interne Anwendungen (wie zum Beispiel „Facebook Mobile“) gelten diese Einschränkungen aber nicht, sonst könnte die mobile Facebook-App nicht so einfach posten, private Nachrichten lesen usw. Sclafani ist es nun mit einem einfachen POST-Befehl gelungen, sich als diese Facebook Mobile App „auszugeben“ und mit seinem Nutzer (mit dem er gerade in Facebook eingeloggt war) eine Statusmeldung zu posten.
[color-box]Hinweis: Diese Sicherheitslücke ist bereits seit Ende April 2014 geschlossen. Der Entdecker Stephen Sclafani hat für das Melden der Lücke von Facebook eine Belohnung von 20.000 $ erhalten.[/color-box]
Nach einigen weiteren Tests erkannt Sclafani, dass er durch die zusätzliche Angabe der UID eines beliebigen Facebook-Nutzers auch in dessen Namen verschiedenste Aktionen ausführen konnte. Folgende Aktionen waren durch diese Sicherheitslücke unter anderem möglich:
- Das Auslesen aller privaten Nachrichten eines beliebigen Nutzers
- Einen Post, einen Link oder ein Foto auf die eigene Timeline oder eine andere Seite, Gruppe oder Event posten.
- Kommentare schreiben oder löschen
- Objekte liken oder „ent-liken“
- Die primäre Email-Adresse auslesen
- Private Notizen (notes) auslesen, erstellen oder löschen
Schnelles handeln
Nachdem Sclafani die Sicherheitslücke erkannte und reproduzieren konnte, meldete er sie am 23. April 2014 an Facebook. Bemerkenswert ist hierbei, dass Facebook äußerst schnell reagierte und innerhalb von etwa 3 Stunden bereits eine erste temporäre Lösung für das Problem implementiert hatte. Nach einer Woche war das Problem dann auch permanent gelöst und der Entdecker Sclafani erhielt dafür im Zuge des Sicherheitslücken-Prämien-Programms von Facebook eine Belohnung in Höhe von 20.000 $. Damit erging es ihm besser als dem Hacker, der letztes Jahr (nachdem sein eingereichter Fehler abgelehnt wurde) kurzer Hand an Mark Zuckerbergs Pinnwand postete.