Datenleck bei SchülerVZ war größer als bekannt

Kurzfassung: Auch privat gestellte Daten waren bei SchülerVZ massenweise auslesbar. Wir haben 118.000 Datensätze von Berliner Schülern mit ihrem Geburtsdatum (Was teilweise nur für Freunde freigegeben war) zur Klärung an den Bundesverband Verbraucherzentrale übergeben, die mittlerweile auch beim Berliner Landesdatenschutzbeauftragten angekommen sind.

Die Vorgeschichte:

Lange Fassung: Vor zehn Tagen hatten wir erstmals über ein Datenleck bei SchülerVZ berichtet. Uns wurden 1,6 Millionen Datensätze von SchülerVZ-Nutzern zugeschickt. Einen Tag später war klar, dass mindestens eine weitere Person die Sicherheitslücken bei SchülerVZ ausgenutzt hatte, um massenweise Datensätze auszulesen. Diese zweite Person wurde verhaftet, nachdem sie SchülerVZ zu erpressen versuchte. In einer Mail vor seiner Reise nach Berlin erklärte uns der dann verhaftete, dass er auch erfolgreiche Phishing-Attacken durchgeführt hatte. Das deckt sich mit Hinweisen auf XSS-Lücken, auf die wir auch hingewiesen haben.

Am vergangenen Mittwoch brachten wir ein Interview mit einer dritten Person, die beschrieb, wie man noch mehr Daten aus SchülerVZ auslesen konnte. Dazu zählen auch Daten, die explizit nur für Freunde frei geschaltet waren. SchülerVZ dementierte sofort, dass dies möglich gewesen sei. In einer FAQ im StudiVZ-Blog wird immer noch darauf hingewiesen, dass dies nicht möglich gewesen sein kann.

Es wird behauptet, dass auch private Daten ausgelesen werden konnten?

Nach derzeitigem Kenntnisstand sind keine privaten Daten betroffen. Auch nicht indirekt über die Suche.

Ich habe mein Profil nur für meine Freunde sichtbar – Sind meine Daten trotzdem betroffen?

Nein, deine privatgestellten Daten sind nicht betroffen. Der Täter konnte nur Daten (Name, Profilfoto und Schule) kopieren, die für alle Nutzer im schülerVZ sichtbar waren. Alle Schutzmaßnahmen zur Privatsphäre haben gegriffen und wurden explizit NICHT geknackt.

Das ist nach unseren Informationen nicht so, bzw. ist die zweite Antwort auf den einen Fall hin formuliert. Wir haben SchülerVZ darauf hingewiesen, dass wir das nicht so sehen und das die erste Antwort so nicht richtig ist . Sonst hätten wir das Interview in dieser Form auch nicht veröffentlicht.

Wir haben gestern Abend eine Datei mit 118.000 Datensätzen von Berliner Schülern an die Verbraucherzentrale Bundesverband geschickt, um die Sicherheitslücke zu beweisen und die Frage zu klären. Diese dürften mittlerweile auch beim Berliner Landesdatenschutzbeauftragten gelandet sein. Wir haben einige der Datensätze vorab verifizieren können, indem wir auf privat geschaltete Nutzer gefunden und kontaktiert haben, ob das Geburtsdatum stimmt. Diese Datensätze enthalten die individuelle SchülerVZ-ID-Nummer, das Geburtsdatum und das Geschlecht. Unsere nun mehr dritte Quelle hatte kein Interesse daran, die umstrittene Berliner Schüler-ID-Kartei mit noch mehr Datenfelder zu schaffen. Ihr ging es nur darum, die Sicherheitslücke zu dokumentieren. Daher die Konzentration auf Geburtsdatum und ID. Es war aber problemlos möglich, dazu noch von allen Schülern Schule, Wohnort, Beziehungsstatus, Foto und weitere Informationen zu ermitteln. Die ersten beiden Fälle zeigen das Potential.

Möglich war das Identifizieren des Geburtsdatums über die Suchfunktion. Man musste nur ein Programm schreiben, was massenhaft Suchanfragen erzeugt und dann die Ergebnisse einer Nutzer-ID zuordnet und zusammenrechnet.

Die Logik hinter dem Auslesen des Geburtsdatums:

So konnte / kann man vorgehen: Die Super-Suche innerhalb der VZ-Plattform bietet verschiedene Suchparameter (Alter, Beziehungsstatus, pol. Einstellung,…). Diese werden, sobald man eine Suche gestartet hat, in eine URL übersetzt, welche alle Sucheinstellungen enthält.

Beispiele für URL-Fragmente aus der Super-Suche:

– schoolSince/2005
– status/1
– gender/1
– relationship/2
– political/5
– schoolCountryId/1
– conc/1
– lookingFor/1
– bdayDay/12

Die Begriffe stehen für das entsprechende Suchkriterium.

Wobei die Zahlen hinter den Begriffen für den entsprechenden Wert stehen, „gender/1“ steht z.B. für weiblich und „gender/2“ für männlich.
Dieser Umstand machte es besonders leicht über Zählschleifen unzählige Suchanfragen an den SchülerVZ-Server zu schicken.

Beispiel für Geburtsdatumsabfrage (vereinfachte Darstellung aus dem Sourcecode):

for ($gday = 1 $gday < 32; $gday++){ for ($gmon = 1 $gmon < 13; $gmon++){ for ($gyear = 1970 $gyear < 2000; $gyear++){ //MeinVZ $search = 'Search/SearchSuper/gender/1/bdayDay/'.$gday.'/bdayMonth/'.$gmon.'/bdayYear/'.$gyear.'/platform/3/foreignNetworkCountryId/1/doSearch/1'; //StudiVZ $search = 'Search/SearchSuper/gender/1/bdayDay/'.$gday.'/bdayMonth/'.$gmon.'/bdayYear/'.$gyear.'/platform/1/uniCountryId/1/uniStateId/1/doSearch/1'; //Abfrage SchuelerVZ nach Geburtsdatum $search = 'Search/SearchSuper/bdayDay/'.$gday.'/bdayMonth/'.$gmon.'/bdayYear/'.$gyear.'/schoolCountryId/1/schoolStateId/1/doSearch/1' //. // Nur Auszug: Quelltext gekürzt! //. } }}

Die entstehenden $search-Strings werden danach an ein HTTP-Modul übergeben, welches den Inhalt der Suchergebnisse ausliest. Anschließend müssen nur noch alle gefundenen Profile als Datensatz in die Datenbank eingetragen werden, oder falls das Profil schon existiert, das Geburtsdatum aktualisiert werden. Die Sicherheitslücke bei SchülerVZ machte es möglich, auch versteckte Profilangaben nach und nach über Variation der Suchparameter auszulesen.

Überprüfung der Datensätze:

Wir hatten nun die Informationen, wie die Daten massenhaft ausgelesen konnten und einen Datensatz von 118.000 Nutzern mit den Feldern ID, Geburtsdatum und Geschlecht. Damit kam die Frage der Verifizierung der Daten. SchülerVZ hatte nach Bekanntgabe des Datenlecks angekündigt, Die Nutzer-IDs zu verändern, damit die im Umlauf befindlichen Datensätze unbrauchbar werden. Allerdings haben wir herausgefunden, dass dies nicht bei allen Nutzern geschah. Wir haben also nach dem Zufallsprinzip Nutzer-IDs aufgerufen und nach denjenigen gesucht, die ihr Geburtsdatum nicht öffentlich gemacht haben. Davon haben wir eine Reihe angeschrieben und gefragt, ob das Geburtsdatum in unserem Datensatz stimmt. Einige haben geantwortet und dies bestätigt. Somit konnten wir davon ausgehen, dass die Daten valide sind.

Dieser nunmehr dritte Datensatz zeigt:

    Die Beteuerungen von SchülerVZ, dass nur innerhalb des Systems öffentlich zugängliche Daten massenhaft ausgelesen worden, entspricht wohl nicht ganz der Realität. Wie sonst konnte unsere dritte Quelle in den letzten Monaten von 118.000 Berliner Schülern das Geburtsdatum ermitteln, das teilweise nur Freunden frei gegeben war?!
    Wie viele weitere erfolgreiche Datenausspäh-Aktionen gab es eigentlich in den letzten Monaten bei SchülerVZ, wenn uns mittlerweile drei Datensätze von unterschiedlichen Quellen bekannt geworden sind?
    Wir haben bisher nur Fälle von SchülerVZ dokumentiert. Es ist davon auszugehen, dass die beiden Schwester-Plattformen MeinVZ und StudiVZ ebenfalls betroffen waren, die auf dieselbe Technik aufsetzen. Da sind weitere Veröffentlichungen vorprogrammiert! (Wir freuen uns über sachdienliche Hinweise)
    Daten im Netz sind in der Regel nicht sicher. Auch nur für Freunde in Social-Networks frei gegebene Informationen bieten nur eine symbolisch gefühlte Sicherheit. Darauf sollte man sich nicht verlassen.
    Es muss darüber nachgedacht werden, das Haftungsrisiko für Plattform-Betreiber zu erhöhen, damit diese mehr Anreiz bekommen, in IT-Sicherheit und damit dem Datenschutz für ihre Nutzer zu investieren.

In einer Pressemitteilung kommentiert der Bundesverband Verbraucherzentrale den Fall und fordert Konsequenzen:

Der vzbv fordert die Anbieter Sozialer Netzwerke auf, mehr für den Schutz der Daten ihrer Kunden zu tun. „Statt zu versprechen, dass ihre Daten gut aufgehoben sind, müssen die Anbieter die technisch höchste Sicherheit bieten – wenn nötig auch zu Lasten des Nutzerkomforts“, appelliert Vorstand Gerd Billen. Zudem sollten die Betreiber die potentiellen Risiken klar benennen, die mit einer Veröffentlichung privater Daten im Netz verbunden sind. Nur so könnten die Nutzer – im Falle von SchülerVZ Schülern und deren Eltern – abwägen, wie freizügig sie ihre persönlichen Daten kommunizieren.

SchülerVZ hat mittlerweile aufgrund unserer Berichterstattung notwendige Schritte unternommen, das massenhafte Auslesen von vielen Datensätzen zu erschweren. Das freut uns und dieses Engagement ist sicherlich noch steigerungsfähig.

Update:

SchülerVZ hat nach eigenen Angaben die Lücke Ende Juli geschlossen. Das ist erfreulich für die Nutzersicherheit. Unsere Liste wurde einen Monat vorher erstellt. Das ändert aber nichts an der Geschichte, dass bis dahin auch privat gestellte Daten massenhaft aus der Plattform gesaugt werden konnten.

Update: Auch wenn das seit 2006 bekannte Supersuche-Problem vor zwei Monaten endlich gelöst wurde, kann es immer noch sein, dass das Geburtsdatum bei der Problem-Lösung vergessen wurde. Dafür gibt es Anhaltszeichen.

Update von 13:12 Uhr: Nun gibt es ein offizielles Statement von SchülerVZ. Darin bestätigen sie den Fall, erklären, dass sie die Lücke Ende Juli geschlossen haben und kündigen weitere Massnahmen zur Datensicherheit an.

Darüber hinaus haben wir bei einer internen Prüfung festgestellt, dass die Einstellmöglichkeiten bzgl. der Suchbarkeit nach Geburtsdaten missverstanden werden können. Diese missverständlichen Einstellmöglichkeiten werden wir im Laufe des Tages beheben. Zusätzlich werden wir auch die Suche nach Geburtsdatum und Alter komplett deaktivieren. Im Zuge einer weiteren Verschärfung unserer Sicherheitsmaßnahmen werden wir auch in den nächsten 24 Stunden die Nutzer IDs neu setzen. Hierdurch kann es zu temporären Einschränkungen für unsere Nutzer kommen.

61 Kommentare
  1. High Tech Lowlife 28. Okt 2009 @ 9:44
  2. Bernd Schneider 28. Okt 2009 @ 15:38
Unterstütze unsere Recherchen und Berichterstattung für Grundrechte und ein freies Internet durch eine Spende. Spenden