Hacking WhatsApp - So leicht lässt sich die App manipulieren

Der Autor

 

Ihr Kontakt bei diconium

Alexander Käppler
senior digital consultant

Ein Hinweis vorweg: Dies ist keine Hacking-Anleitung. Aber wir sind bei unseren Recherchen zu Whatsapp auf eine erstaunliche Sicherheitslücke gestoßen, die beispielhaft für die allgegenwärtige Manipulatinsgefahr moderner Kommunikationsmedien steht. Natürlich haben wir die betroffenen Parteien über unsere Entdeckung informiert.

Hacking Whatsapp

Hacking WhatsApp - So leicht lässt sich die App manipulieren

DETEKTIVARBEIT

Auf der Suche nach einer sinnvollen Beschreibung der Funktionsweise der WhatsApp API sind wir auf ein kleines Chrome Plugin gestoßen, das erstaunliche Fähigkeiten aufweist. Was das Hacker-Herz freuen wird, ist natürlich nicht ganz legal. Aus diesem Grund beschreiben wir hier nicht genau, was wir gemacht haben. Nur so viel – alles, was hier steht funktioniert wirklich. Und hat uns gleichzeitig mit einem Staunen und einem gewissen Unbehagen zurückgelassen.

Der Ursprung unserer Suche war die Beschreibung von Loran Kloez über eine „nicht dokumentierte WhatsApp API“. Er hat in mühevoller Kleinarbeit drei sehr interessante Funktionalitäten der WhatsApp-Web Anwendung identifiziert, die es einem Nutzer erlaubt, zu jeder beliebigen Telefonnummer das Profilbild, den Status-Text und den Online-Status abzurufen. Das bedeutet, egal, welche Telefonnummer man eingibt, es wird (wenn die Nummer vorhanden ist) ein Kontaktbild, ein About-Text und der online Status ausgegeben. Die Gefahr, die Hr. Kloez darin sieht ist der Umstand, so einfach viele Daten sammeln zu können. Wo sonst bekommt man schon eine Telefonnummer in Kombination mit einem Bild?

SCHRITT FÜR SCHRITT

Die angesprochenen API-Endpunkte für die WhatsApp Web Funktionen sind nicht im Firefox verfügbar, sondern nur im Chrome-Browser, und auch nur in dem offenen Tab, in welchem web.whatsapp.com läuft. Das bedeutet, um Zugriff auf diese Schnittstelle zu erhalten, brauchen wir ein Chrome Plugin bzw. eine Erweiterung. Glücklicherweise stellt Herr Kloez diese direkt unter http://bit.ly/2v1wQEf zur Verfügung. Nach der Installation der Erweiterung wird die WhatsApp Web Oberfläche leicht modifiziert.

Es erscheint oben links im Tab ein Button, über welchen man in die Telefon-Nummern-Suche einsteigen kann. Durch einen Klick auf den Button öffnet sich ein Flyout, in welchem man jetzt eine Range von Telefonnummern eingeben kann (von – bis). Die Nummern starten immer mit der Ländervorwahl, allerdings ohne ein „+“ oder „00“ vor der Handy- / Mobilfunknummer. Das Ergebnis der Recherche sieht dann in etwa so wie auf dem Bild (s. unten) aus.

Unter jedem Bild sind jetzt Telefonnummer und About-Status sowie online-Status angegeben. Die Daten sind hier aufgrund von Datenschutz entfernt.

whatsapphack bild 01 | diconium

Alleine diese Ausgabe ist für den einen oder anderen Datensammler Gold wert, für Datenschützer wahrscheinlich der pure Alptraum.

Nachdem diese Thematik bereits im Mai 2017 von Hr. Kloez an Facebook gemeldet wurde, dort jedoch kein Handlungsbedarf signalisiert wurde „…Summarized, they are aware of the possibility of this amount of data collection but they don’t see it as a problem or a privacy concern for that matter…“, haben wir entschlossen, zu prüfen, wie weit man denn bei diesem Plugin gehen kann.

Neben dem Gedanken der Datensammlung wuchs in uns die Vorstellung, was denn wäre, wenn man all diese Kontakte einfach so anschreiben könnte. Mit zwei Freiwilligen aus unserem Büro haben wir es getestet. Dazu wurde als erstes das Plugin etwas modifiziert und erweitert.

whatsapphack bild 02 | diconium

Das Ergebnis war, dass jetzt jede Telefonnummer, die unter einem Kontakt angezeigt war, anklickbar wurde. Dazu haben wir ein kleines Fenster hinzugefügt, über welches man eine Nachricht eingeben kann.

Um jetzt eine Nachricht senden zu können, haben wir uns der offiziellen WhatsApp API bedient. Diese erlaubt das Senden (ebenfalls nur im Tab des offenen WhatsApp-Web im Chrome Browser) über die Url https://api.whatsapp.com/send?phone=TELEFONNUMMER&text=NACHRICHT. Klickt man in dem modifizierten Plugin jetzt auf die Telefonnummer, dann wird sofort eine WhatsApp an diese Telefonnummer geschickt, mit dem Inhalt aus dem Message-Eingabe-Feld.

Das hat funktioniert, jedes Mal. Wir konnten uns so auch selbst relativ einfach Nachrichten schreiben. Wozu? Egal. Das aus unserer Sicht Interessanteste war, dass so Nachrichten an Telefonnummern geschickt wurden konnten, die nicht in unserem Adressbuch standen, zu Menschen, die wir gar nicht kennen und deren Kontakt wir auch nicht erst im Adressbuch anlegen müssen.

Das Versenden über die offizielle API geht natürlich auch ohne das Plugin von Hr. Kloez. Nur ist durch die Kombination beider Ansätze auf einmal eine Möglichkeit entstanden, ohne wildes Herumprobieren und Austesten Nachrichten an wildfremde Leute zu versenden. Getreu dem Motto „Die Welt ist nicht genug“ … Wenn wir per Klick an eine Person eine Botschaft senden können, können wir ja im Grunde auch an alle gefundenen Kontakte die gleiche Nachricht senden. Es wird nur leider ziemlich müßig, jeden gefundenen Kontakt anzuklicken. Es wäre doch sinnvoll auch das zu automatisieren, oder?

Die zweite Modifikation des Plugins setzt damit technisch auf der ersten Funktion auf und erweitert die Oberfläche lediglich um einen Button: den „An alle senden“-Button.

whatsapphack bild 03 | diconium

Bei einem Klick auf den „An alle“ – Button wird jetzt die gleiche Funktion wie bei einem einfachen Klick ausgeführt, nur eben für jede Nummer in der Liste. Das Ergebnis ist eine doch ziemlich große Flut an Nachrichten, die auf verschiedenste Nutzer treffen. Aus Gründen der Performance lassen wir noch ein wenig Zeit zwischen den einzelnen Sendungen. Das unsere IP-Adresse irgendwann gesperrt wird, ist absehbar, vielleicht sogar gleich die Telefonnummer mit. Das müsste verhindert werden, sollte jedoch kein Problem sein.

Trotz all der Marketing-Gedanken und Glücksgefühle, die sich hier breitmachen – eine Botschaft an 10.000.000 Nutzer mehr oder weniger gleichzeitig senden ist zwar sexy, aber leider illegal. Aus diesem Grund veröffentlichen wir das Plugin inklusive der Modifikationen auch nicht, sondern werden Facebook erneut auf die nach wie vor vorhandene Lücke aufmerksam machen.
 

Der Autor

 

Ihr Kontakt bei diconium

Alexander Käppler
senior digital consultant