Im Rahmen meiner Masterarbeit habe ich mir verschiedenste mobile Instant Messenger (IM) hinsichtlich ihrer Sicherheit angesehen. Dabei habe ich nicht nur den Datenstrom untersucht, der beim Senden/Empfangen von Nachrichten entsteht, sondern auch die von der App abgelegten Dateien am iPhone.
Folgende Apps für iPhone (iOS 8.3) wurden dabei im Mai / Juni 2015 untersucht:
- Facebook Messenger v 28.1
- Kik v 8.3.0
- LINE v 5.1.2
- Skype v 5.12.2
- Threema v 2.3.1
- Viber v 5.3.3
- Whatsapp v 2.12.2
Dabei wurden alle Apps auf einem iPhone 4S installiert, Nachrichten, Bilder, Standorte usw. damit versenden und dieser Traffic gleichzeitig mit Wireshark aufgezeichnet. Nach dem Generieren von Traffic wurde vom iPhone mittels iTunes ein Backup erstellt, um darin nach relevanten Daten der Apps zu suchen. Hier eine kurze Zusammenfassung:
Abgelegte Daten am iPhone
iTunes legt die Backups der iOS-Geräte unter folgendem Pfad unter OSX ab:
~/Library/Application Support/MobileSync/Backup
Darin befindet sich pro gesicherten iOS-Gerät ein Ordner. Prinzipiell lassen sich Backups mit Tools wie Dr. Fone (auch im kostenlosen Demo-Modus) automatisiert auslesen und analysieren. Diese App analysiert zB automatisch alles, was von Whatsapp zu finden ist. Jedoch wird von den getesteten Apps tatsächlich nur Whatsapp analysiert, der Rest bleibt außen vor.
Da mich aber die anderen Apps genauso interessieren und ich außerdem wissen will, wo jede App welche Infos ablegt, folgt eine manuelle Suche. Dazu habe ich mit dem Tool iPhone Backup Extractor das erstellte Backup eingelesen und erstmal herumgestöbert, interessante Ordner extrahiert und diese analysiert.
Facebook Messenger
Mit dem Backup Extractor habe ich den Ordner
com.facebook.Messenger
extrahiert und analysiert. Die eigentlichen Nachrichten befinden sich nicht in diesem Ordner. Die relevanten Daten (Kontakte, Nachrichten) legt die App in der Datenbank orca2.db ab. Diese findet sich in den iOS Dateien unter:
iOS Files/_store_/messenger_messages_v1/orca2.db
Kik
Diese IM App legt die Nachrichten in einer sqlite Datenbank ab:
com.kik.chat/Documents/kik.sqlite
Dort finden sich die Nachrichten und Kontakte des Nutzers.
LINE
Die relevante sqlite Datenbank mit den LINE Daten befindet sich unter
iOS Files/Library/Application Support/Messages/Line.sqlite
Wird diese mit dem Tool sqlitebrowser geöffnet, findet man in der Tabelle „ZMESSAGE“ die gesendeten und erhaltenen Nachrichten – im Klartext – also völlig unverschlüsselt. Unter ZCONTACT sind interessanter Weise ALLE Kontakte gelistet (sind wahrscheinlich beim Synchronisieren der Kontakte dorthing gelangt), in der Spalte ZMID sieht man welche davon LINE benutzen.
Gesendete Medien werden von LINE hier am iPhone abgelegt:
jp.naver.line/Library/Application Support/Message Attachments/
Skype
Die App mit der sowohl telefoniert als auch gechattet werden kann, legt am iPhone ihre wesentlichen Daten unter:
com.skype.skype/Library/Application Support/Skype//main.db
ab. Daraus können gesendete Nachrichten (auch über andere Geräte mit gleichem Benutzer) und Kontakte ausgelesen werden.
Threema
Diese App wählte ich, da es sich hierbei um eine Entwicklung aus der Schweiz handelt, die sich auf die Fahnen schreibt alles zu verschlüsseln. Threema legt im iOS seine Daten wie folgt ab:
com.threema.iapp/Documents/ThreemaData.sqlite
Auch hier können wie bei den anderen, aus dieser Datenbank die gesendeten Nachrichten und die gespeicherten Kontakte ausgelesen werden.
Viber
Wer nach Nachrichten sucht, die mit Viber versendet wurden, diese sind in folgender Datei zu finden:
com.viber/Documents/Contacts.data
Hier können neben den gesendeten Nachrichten und gespeicherten Kontakten auch die mit der App getätigten Anrufe ausgelesen werden.
Die relevante sqlite DB findet sich hierfür unter:
iOS Files/ChatStorage.sqlite
Diese kann wieder problemlos mit dem sqlitebrowser geöffnet werden – und auch hier finden sich die Nachrichten unverschlüsselt vor (Tabelle ZWAMESSAGE). In der Spalte ZFROMJID finden sich die Whatsapp Usernamen = Telefonnummern der Beteiligten. Jediglich die in der Tabelle ZWAMEDIAITEM gelisteten empfangenen/gesendeten Medien sind über den dort gespeicherten Link (zb. https://mmi621.whatsapp.net/d/
net.whatsapp.WhatsApp/Library/Media/
Geteilte Standorte, die ebenfalls in der Tabelle ZWAMEDIAITEM zu finden sind, lassen sich bequem auslesen und mit geeigneten Webseiten genau lokalisieren.
——
Weitere Infos werden regelmäßig aktualisiert.