Gefangen im Netz
Michèle Trebo
In den letzten Jahren wurde WhatsApp die meist gewählte Alternative zu herkömlichen Messenger Diensten wie SMS oder MMS. Innert kurzer Zeit erreichte die App – welche für Android, Blackberry, iOS, Nokia und WindowsPhone Geräte verfügbar ist – eine enorme Verbreitung. Im Oktober 2011 vermeldeten sie über 1 Mia. Nachrichten an einem Tag. Für Netzbetreiber ist die App ein Ärgernis, da sie weniger Umsatz mit SMS/MMS Dienste erzielen. Für Security Researcher ist die App ein Ärgernis, weil es scheint, als ignorierten die Entwickler jegliche Best Practice bei der Entwicklung. Nach 3 Jahren wurde erst eine Verschlüsselung eingebaut, der Status von Dritten konnte manipuliert werden und derzeit lesen wir überall über das Passwort Problem.
Kurze Zeit nach der Einführung von Verschlüsselung, im August 2012, gelangte die App erneut in die Kritik. Der Webentwickler Sam Granger veröffentlichte am 5. September in einem Blog-Post seine Forschungsresultate zum Authentisierungsmechanismus vom WhatsApp-Client an dessen Webfrontend-Server.
Für die Android Version von WhatsApp fand Granger heraus, dass als Passwort der MD5-Hash der umgekehrten IMEI verwendet wird. Eine Woche später veröffentlichte Ezio Amodio in einem Blog-Post, dass bei Apples iOS die MAC-Adresse der WLAN-Schnittstelle verwendet wird. Apple untersagt seinen Entwicklern seit einiger Zeit das auslesen der Gerätenummer.
Das Team von Heise-Security veröffentlichte in einem News-Artikel am 14. September 2012, wie einfach es Ihnen gelang mit Hilfe der PHP-basierten WhatsAPI Accounts zu übernehmen. Die Source von WhatsAPI wurde kurzzeitig vom Netz genommen. In der Commit-Meldung informieren die Entwickler von WhatsAPI, dass sie die API entfernt haben und in Kontakt mit dem Legal-Team von WhatsApp Inc. stehen. Dennoch portierte Sascha Gehlich, CEO FILSH Media GmbH, die API in node.js und veröffentlichte eine Webapplikation, in der man sich – durch Übermittlung der Telefonnummer und der zugehörigen IMEI/MAC-Adresse – am Webfrontend-Server von WhatsApp authentisieren kann. Die Verwendung statischer und bekannter Nummern als Passwort hat fatale Folgen. Mehr dazu im letzten Abschnitt dieses Artikel.
Um zu demonstrieren, wie leicht man an eine IMEI kommt, möchte ich hier zwei Wege unter Android vorstellen.
Hat ein Angreifer die Möglichkeit, physikalischen Zugriff auf das Gerät zu erhalten, gibt es einfache Wege an die IMEI zu gelangen:
Settings
→ About Phone
→ Phone identity
*#*#4636#*#*
→ Phone Info
Network Signal Info
Kann einem nichts ahnenden Benutzer eine App verkauft werden, die im Hintergrund verschiedene Informationen ausliest und dem Angreifer zusendet, sind keine Grenzen gesetzt. Gehen wir davon aus, der Angreifer kennt seine Zielperson nicht und benötigt daher die Telefon- und IMEI-Nummer. Mit diesen Informationen ist es möglich, dass der Account der Zielperson übernommen werden kann und er eine Social-Engineering Attacke auf dessen Kontakte fahren könnte.
READ_PHONE_STATE
):TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String IMEI = tm.getDeviceId();
READ_PHONE_STATE
):TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String phone_no = tm.getLine1Number();
READ_CONTACTS
):Cursor phone = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, CONTACT-ID-CURRENT-CONTACT, null, null); String phone_no = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
Beinahe wöchentlich gerät WhatsApp derzeit negativ in die Schlagzeilen. Genau so oft kann man Einschätzungen lesen, die sehr allgemein gehalten und ohne Differenzierung geäussert werden. Für die Teilaspekte der Problematik können folgende Aussagen zusammengefasst werden:
Zusammenfassend kann gesagt werden, dass man nicht zwingend auf die App zu verzichten braucht. Man sollte sich jedoch über die Risiken im Klaren sein und sein Verhalten dementsprechend anpassen. Bei Verdacht, dass eine Nachricht von einem übernommenen Account stammt, sollten Sie sich beispielsweise via Telefon mit dem Kontakt in Verbindung setzen und die Echtheit überprüfen. Wie schon erwähnt, sollte der unbeaufsichtigte Zugriff auf ein Mobiltelefon unterbunden werden. Benutzer von Android und iOS Geräte sollten sich überlegen, welche App auf ihrem Gerät welche Berechtigung benötigt. Zusätzlich ist Benutzern von iOS Geräten anzuraten, midestens halböffentliche und öffentliche WLAN Netzwerke zu meiden bis das Problem behoben wurde. Da die MAC Adresse auch in einem verschlüsselten WLAN im Klartext übertragen wird.
Unsere Spezialisten kontaktieren Sie gern!
Michèle Trebo
Lucie Hoffmann
Yann Santschi
Michael Schneider
Unsere Spezialisten kontaktieren Sie gern!