WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?

Wenn Sie wissen möchten, welche Arten von forensischen WhatsApp-Artefakten auf verschiedenen Betriebssystemen existieren und wo genau diese zu finden sind, dann sind Sie hier genau richtig. Dieser Artikel stammt von einem Spezialisten des Group-IB Computer Forensics Laboratory Igor Michailow beginnt eine Reihe von Beiträgen über WhatsApp-Forensik und welche Informationen aus der Analyse des Geräts gewonnen werden können.

Beachten wir sofort, dass verschiedene Betriebssysteme unterschiedliche Arten von WhatsApp-Artefakten speichern. Wenn ein Forscher bestimmte Arten von WhatsApp-Daten von einem Gerät extrahieren kann, bedeutet dies nicht, dass ähnliche Datentypen von einem anderen Gerät extrahiert werden können. Wenn beispielsweise eine Systemeinheit mit Windows-Betriebssystem entfernt wird, werden WhatsApp-Chats wahrscheinlich nicht auf ihren Festplatten gefunden (mit Ausnahme von Sicherungskopien von iOS-Geräten, die auf denselben Laufwerken zu finden sind). Die Beschlagnahmung von Laptops und Mobilgeräten wird ihre eigenen Merkmale haben. Lassen Sie uns ausführlicher darüber sprechen.

WhatsApp-Artefakte auf einem Android-Gerät

Um WhatsApp-Artefakte von einem Android-Gerät zu extrahieren, muss der Forscher über Superuser-Rechte verfügen ('Wurzel') auf dem untersuchten Gerät oder auf andere Weise in der Lage sein, einen physischen Speicherauszug des Geräts oder seines Dateisystems zu extrahieren (z. B. mithilfe von Softwareschwachstellen eines bestimmten Mobilgeräts).

Anwendungsdateien befinden sich im Speicher des Telefons in dem Bereich, in dem Benutzerdaten gespeichert werden. In der Regel wird dieser Abschnitt benannt 'Benutzerdaten'. Entlang des Pfades liegen Unterverzeichnisse und Programmdateien: '/data/data/com.whatsapp/'.

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Die wichtigsten Dateien, die forensische WhatsApp-Artefakte im Android-Betriebssystem enthalten, sind Datenbanken 'wa.db' и 'msgstore.db'.

In der Datenbank 'wa.db' enthält die vollständige Kontaktliste eines WhatsApp-Benutzers, einschließlich Telefonnummer, Anzeigename, Zeitstempel und alle anderen Informationen, die bei der Registrierung für WhatsApp angegeben wurden. Datei 'wa.db' Entlang des Weges gelegen: '/data/data/com.whatsapp/databases/' und hat folgenden Aufbau:

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Die interessantesten Tabellen in der Datenbank 'wa.db' Für den Forscher sind:

  • 'wa_contacts'
    Diese Tabelle enthält Kontaktinformationen: WhatsApp-Kontakt-ID, Statusinformationen, Benutzeranzeigename, Zeitstempel usw.

    Tischauftritt:

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
    Tabellenstruktur

    Feldname Wert
    _id Datensatzsequenznummer (in der SQL-Tabelle)
    jid WhatsApp-Kontakt-ID, geschrieben im Format <Telefonnummer>@s.whatsapp.net
    is_whatsapp_user enthält „1“, wenn der Kontakt einem tatsächlichen WhatsApp-Benutzer entspricht, andernfalls „0“.
    Status enthält den im Kontaktstatus angezeigten Text
    status_timestamp enthält einen Zeitstempel im Unix Epoch Time (ms)-Format
    Anzahl Telefonnummer, die dem Kontakt zugeordnet ist
    raw_contact_id Seriennummer kontaktieren
    display_name Anzeigename des Kontakts
    Telefon-Typ Telefon-Typ
    phone_label Etikett, das der Kontaktnummer zugeordnet ist
    unseen_msg_count Anzahl der Nachrichten, die von einem Kontakt gesendet, aber vom Empfänger nicht gelesen wurden
    photo_ts enthält einen Zeitstempel im Unix Epoch Time-Format
    thumb_ts enthält einen Zeitstempel im Unix Epoch Time-Format
    photo_id_timestamp enthält einen Zeitstempel im Unix Epoch Time (ms)-Format
    Vorname Der Feldwert stimmt mit „display_name“ für jeden Kontakt überein
    wa_name WhatsApp-Kontaktname (der im Profil des Kontakts angegebene Name wird angezeigt)
    sort_name Kontaktname, der bei Sortiervorgängen verwendet wird
    Spitzname Spitzname des Kontakts in WhatsApp (der im Profil des Kontakts angegebene Spitzname wird angezeigt)
    Unternehmen Unternehmen (es wird das im Profil des Kontakts angegebene Unternehmen angezeigt)
    Titel Titel (Frau/Herr; im Kontaktprofil konfigurierter Titel wird angezeigt)
    Offset Verschiebung
  • 'sqlite_sequence'
    Diese Tabelle enthält Informationen über die Anzahl der Kontakte;
  • 'android_metadata'
    Diese Tabelle enthält Informationen zur WhatsApp-Sprachlokalisierung.

In der Datenbank 'msgstore.db' Enthält Informationen zu gesendeten Nachrichten, wie z. B. Kontaktnummer, Nachrichtentext, Nachrichtenstatus, Zeitstempel, Details zu den in Nachrichten enthaltenen übertragenen Dateien usw. Datei 'msgstore.db' Entlang des Weges gelegen: '/data/data/com.whatsapp/databases/' und hat folgenden Aufbau:

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Die interessantesten Tabellen in der Datei 'msgstore.db' Für den Forscher sind:

  • 'sqlite_sequence'
    Diese Tabelle enthält allgemeine Informationen zu dieser Datenbank, wie z. B. die Gesamtzahl der gespeicherten Nachrichten, die Gesamtzahl der Chats usw.

    Tischauftritt:

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?

  • 'message_fts_content'
    Enthält den Text gesendeter Nachrichten.

    Tischauftritt:

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?

  • 'Mitteilungen'
    Diese Tabelle enthält Informationen wie Kontaktnummer, Nachrichtentext, Nachrichtenstatus, Zeitstempel und Informationen zu übertragenen Dateien, die in Nachrichten enthalten sind.

    Tischauftritt:

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
    Tabellenstruktur

    Feldname Wert
    _id Datensatzsequenznummer (in der SQL-Tabelle)
    key_remote_jid WhatsApp-ID des Kommunikationspartners
    key_from_me Nachrichtenrichtung: „0“ – eingehend, „1“ – ausgehend
    key_id eindeutige Nachrichtenkennung
    Status Nachrichtenstatus: „0“ – zugestellt, „4“ – auf dem Server wartend, „5“ – am Ziel empfangen, „6“ – Kontrollnachricht, „13“ – vom Empfänger geöffnete Nachricht (gelesen)
    need_push hat den Wert '2', wenn es sich um eine Broadcast-Nachricht handelt, andernfalls enthält es '0'
    technische Daten Nachrichtentext (wenn der Parameter „media_wa_type“ „0“ ist)
    Zeitstempel enthält einen Zeitstempel im Unix Epoch Time (ms)-Format, der Wert wird von der Geräteuhr übernommen
    media_url enthält die URL der übertragenen Datei (wenn der Parameter „media_wa_type“ „1“, „2“, „3“ ist)
    media_mime_type MIME-Typ der übertragenen Datei (wenn der Parameter „media_wa_type“ gleich „1“, „2“, „3“ ist)
    media_wa_type Nachrichtentyp: „0“ – Text, „1“ – Grafikdatei, „2“ – Audiodatei, „3“ – Videodatei, „4“ – Kontaktkarte, „5“ – Geodaten
    media_size Größe der übertragenen Datei (wenn der Parameter „media_wa_type“ „1“, „2“, „3“ ist)
    Medienname Name der übertragenen Datei (wenn der Parameter „media_wa_type“ „1“, „2“, „3“ ist)
    media_caption Enthält die Wörter „Audio“, „Video“ für die entsprechenden Werte des Parameters „media_wa_type“ (wenn der Parameter „media_wa_type“ „1“, „3“ ist).
    media_hash Base64-codierter Hash der übertragenen Datei, berechnet mit dem HAS-256-Algorithmus (wenn der Parameter „media_wa_type“ gleich „1“, „2“, „3“ ist)
    media_duration Dauer in Sekunden für die Mediendatei (wenn „media_wa_type“ „1“, „2“, „3“ ist)
    Herkunft hat den Wert '2', wenn es sich um eine Broadcast-Nachricht handelt, andernfalls enthält es '0'
    Breite Geodaten: Breitengrad (wenn der Parameter „media_wa_type“ „5“ ist)
    Länge Geodaten: Längengrad (wenn der Parameter „media_wa_type“ „5“ ist)
    thumb_image Service Information
    remote_resource Absender-ID (nur für Gruppenchats)
    empfangener_Zeitstempel Zeitpunkt des Empfangs, enthält einen Zeitstempel im Format Unix Epoch Time (ms), der Wert wird von der Geräteuhr übernommen (wenn der Parameter „key_from_me“ „0“, „-1“ oder einen anderen Wert hat)
    send_timestamp nicht verwendet, hat normalerweise den Wert '-1'
    Empfangsserver_Zeitstempel Die vom zentralen Server empfangene Zeit enthält einen Zeitstempel im Format Unix Epoch Time (ms). Der Wert wird von der Geräteuhr übernommen (wenn der Parameter „key_from_me“ „1“, „-1“ oder einen anderen Wert hat
    quittungsgerät_zeitstempel Zeitpunkt, zu dem die Nachricht von einem anderen Abonnenten empfangen wurde, enthält einen Zeitstempel im Unix Epoch Time (ms)-Format. Der Wert wird von der Geräteuhr übernommen (wenn der Parameter „key_from_me“ „1“, „-1“ oder einen anderen Wert hat
    read_device_timestamp Zeitpunkt des Öffnens (Lesens) der Nachricht, enthält einen Zeitstempel im Unix Epoch Time (ms)-Format, der Wert wird von der Geräteuhr übernommen
    Abgespielter_Geräte_Zeitstempel Nachrichtenwiedergabezeit, enthält einen Zeitstempel im Unix Epoch Time (ms)-Format, der Wert wird von der Geräteuhr übernommen
    Rohdaten Miniaturansicht der übertragenen Datei (wenn der Parameter „media_wa_type“ „1“ oder „3“ ist)
    Empfänger_Anzahl Anzahl der Empfänger (für Broadcast-Nachrichten)
    Teilnehmer_Hash Wird bei der Übermittlung von Nachrichten mit Geodaten verwendet
    Lieblings Wird nicht benutzt
    quoted_row_id unbekannt, enthält normalerweise den Wert '0'
    erwähnte_jids Wird nicht benutzt
    multicast_id Wird nicht benutzt
    Offset Verschiebung

    Diese Liste der Felder ist nicht vollständig. Bei verschiedenen Versionen von WhatsApp können einige Felder vorhanden sein oder fehlen. Zusätzlich können Felder vorhanden sein 'media_enc_hash', 'edit_version', 'zahlungstransaktions_id' usw.

  • 'messages_thumbnails'
    Diese Tabelle enthält Informationen zu übertragenen Bildern und Zeitstempeln. In der Spalte „Zeitstempel“ wird die Zeit im Unix Epoch Time-Format (ms) angegeben.
  • 'chat_list'
    Diese Tabelle enthält Informationen zu Chats.

    Tischauftritt:

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?

Wenn Sie WhatsApp auf einem mobilen Gerät mit Android untersuchen, sollten Sie außerdem auf die folgenden Dateien achten:

  • Datei 'msgstore.db.cryptXX' (wobei XX eine oder zwei Ziffern von 0 bis 12 ist, zum Beispiel msgstore.db.crypt12). Enthält eine verschlüsselte Sicherung von WhatsApp-Nachrichten (Sicherungsdatei msgstore.db). Datei(en) 'msgstore.db.cryptXX' Entlang des Weges gelegen: '/data/media/0/WhatsApp/Databases/' (virtuelle SD-Karte), '/mnt/sdcard/WhatsApp/Databases/ (physische SD-Karte)‘.
  • Datei 'Schlüssel'. Enthält einen kryptografischen Schlüssel. Entlang des Weges gelegen: '/data/data/com.whatsapp/files/'. Wird zum Entschlüsseln verschlüsselter WhatsApp-Backups verwendet.
  • Datei 'com.whatsapp_preferences.xml'. Enthält Informationen zu Ihrem WhatsApp-Kontoprofil. Die Datei befindet sich im Pfad: '/data/data/com.whatsapp/shared_prefs/'.

    Dateiinhaltsfragment

    <?xml version="1.0" encoding="ISO-8859-1"?>
    …
    <string name="ph">9123456789</string> (номер телефона, ассоциированный с аккаунтом WhatsApp)
    …
    <string name="version">2.17.395</string> (версия WhatsApp)
    …
    <string name="my_current_status">Hey there! I am using WhatsApp.</string> (сообщение, отображаемое в статусе аккаунта)
    …
    <string name="push_name">Alex</string> (имя владельца аккаунта)
    … 
  • Datei 'registration.RegisterPhone.xml'. Enthält Informationen über die mit dem WhatsApp-Konto verknüpfte Telefonnummer. Die Datei befindet sich im Pfad: '/data/data/com.whatsapp/shared_prefs/'.

    Dateiinhalte

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <map>
    <string name="com.whatsapp.registration.RegisterPhone.phone_number">9123456789</string>
    <int name="com.whatsapp.registration.RegisterPhone.verification_state" value="0"/>
    <int name="com.whatsapp.registration.RegisterPhone.country_code_position" value="-1"/>
    <string name="com.whatsapp.registration.RegisterPhone.input_phone_number">912 345-67-89</string>
    <int name="com.whatsapp.registration.RegisterPhone.phone_number_position" value="10"/>
    <string name="com.whatsapp.registration.RegisterPhone.input_country_code">7</string>
    <string name="com.whatsapp.registration.RegisterPhone.country_code">7</string>
    </map>
  • Datei 'axolotl.db'. Enthält kryptografische Schlüssel und andere Daten, die zur Identifizierung des Kontoinhabers erforderlich sind. Entlang des Weges gelegen: '/data/data/com.whatsapp/databases/'.
  • Datei 'chatsettings.db'. Enthält Informationen zur Anwendungskonfiguration.
  • Datei 'wa.db'. Enthält Kontaktdaten. Eine (forensisch gesehen) sehr interessante und informative Datenbank. Es kann detaillierte Informationen zu gelöschten Kontakten enthalten.

Sie müssen außerdem auf die folgenden Verzeichnisse achten:

  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Images/'. Enthält übertragene Grafikdateien.
  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Sprachnotizen/'. Enthält Sprachnachrichten in Dateien im .OPUS-Format.
  • Verzeichnis '/data/data/com.whatsapp/cache/Profile Pictures/'. Enthält Grafikdateien – Bilder von Kontakten.
  • Verzeichnis '/data/data/com.whatsapp/files/Avatars/'. Enthält Grafikdateien – Miniaturbilder von Kontakten. Diese Dateien haben die Erweiterung „.j“, sind aber dennoch JPEG-Bilddateien (JPG).
  • Verzeichnis '/data/data/com.whatsapp/files/Avatars/'. Enthält Grafikdateien – ein Bild und eine Miniaturansicht des Bildes, das vom Kontoinhaber als Avatar festgelegt wurde.
  • Verzeichnis '/data/data/com.whatsapp/files/Logs/'. Enthält das Programmbetriebsprotokoll (Datei „whatsapp.log“) und Sicherungskopien der Programmbetriebsprotokolle (Dateien mit Namen im Format whatsapp-jjjj-mm-tt.1.log.gz).

WhatsApp-Protokolldateien:

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Tagebuchfragment2017-01-10 09:37:09.757 LL_I D [524:WhatsApp Worker #1] failedcallnotification/init count:0 timestamp:0
2017-01-10 09:37:09.758 LL_I D [524:WhatsApp Worker #1] failedcallnotification/update cancel true
2017-01-10 09:37:09.768 LL_I D [1:main] app-init/load-me
2017-01-10 09:37:09.772 LL_I D [1:main] Passwortdatei fehlt oder ist nicht lesbar
2017-01-10 09:37:09.782 LL_I D [1:main] Statistiken Textnachrichten: 59 gesendet, 82 empfangen / Mediennachrichten: 1 gesendet (0 Bytes), 0 empfangen (9850158 Bytes) / Offline-Nachrichten: 81 empfangen ( 19522 ms durchschnittliche Verzögerung) / Nachrichtendienst: 116075 Bytes gesendet, 211729 Bytes empfangen / VoIP-Anrufe: 1 ausgehender Anruf, 0 eingehende Anrufe, 2492 Bytes gesendet, 1530 Bytes empfangen / Google Drive: 0 Bytes gesendet, 0 Bytes empfangen / Roaming: 1524 Gesendete Bytes, 1826 empfangene Bytes / Gesamtdaten: 118567 gesendete Bytes, 10063417 empfangene Bytes
2017-01-10 09:37:09.785 LL_I D [1:main] media-state-manager/refresh-media-state/writable-media
2017-01-10 09:37:09.806 LL_I D [1:main] app-init/initialize/timer/stop: 24
2017-01-10 09:37:09.811 LL_I D [1:main] msgstore/checkhealth
2017-01-10 09:37:09.817 LL_I D [1:main] msgstore/checkhealth/journal/delete false
2017-01-10 09:37:09.818 LL_I D [1:main] msgstore/checkhealth/back/delete false
2017-01-10 09:37:09.818 LL_I D [1:main] msgstore/checkdb/data/data/com.whatsapp/databases/msgstore.db
2017-01-10 09:37:09.819 LL_I D [1:main] msgstore/checkdb/list _jobqueue-WhatsAppJobManager 16384 drw=011
2017-01-10 09:37:09.820 LL_I D [1:main] msgstore/checkdb/list _jobqueue-WhatsAppJobManager-journal 21032 drw=011
2017-01-10 09:37:09.820 LL_I D [1:main] msgstore/checkdb/list axolotl.db 184320 drw=011
2017-01-10 09:37:09.821 LL_I D [1:main] msgstore/checkdb/list axolotl.db-wal 436752 drw=011
2017-01-10 09:37:09.821 LL_I D [1:main] msgstore/checkdb/list axolotl.db-shm 32768 drw=011
2017-01-10 09:37:09.822 LL_I D [1:main] msgstore/checkdb/list msgstore.db 540672 drw=011
2017-01-10 09:37:09.823 LL_I D [1:main] msgstore/checkdb/list msgstore.db-wal 0 drw=011
2017-01-10 09:37:09.823 LL_I D [1:main] msgstore/checkdb/list msgstore.db-shm 32768 drw=011
2017-01-10 09:37:09.824 LL_I D [1:main] msgstore/checkdb/list wa.db 69632 drw=011
2017-01-10 09:37:09.825 LL_I D [1:main] msgstore/checkdb/list wa.db-wal 428512 drw=011
2017-01-10 09:37:09.825 LL_I D [1:main] msgstore/checkdb/list wa.db-shm 32768 drw=011
2017-01-10 09:37:09.826 LL_I D [1:main] msgstore/checkdb/list chatsettings.db 4096 drw=011
2017-01-10 09:37:09.826 LL_I D [1:main] msgstore/checkdb/list chatsettings.db-wal 70072 drw=011
2017-01-10 09:37:09.827 LL_I D [1:main] msgstore/checkdb/list chatsettings.db-shm 32768 drw=011
2017-01-10 09:37:09.838 LL_I D [1:main] msgstore/checkdb/version 1
2017-01-10 09:37:09.839 LL_I D [1:main] msgstore/canquery
2017-01-10 09:37:09.846 LL_I D [1:main] msgstore/canquery/count 1
2017-01-10 09:37:09.847 LL_I D [1:main] msgstore/canquery/timer/stop: 8
2017-01-10 09:37:09.847 LL_I D [1:main] msgstore/canquery 517 | Zeitaufwand:8
2017 01:10:09 LL_I D [37:WhatsApp Worker #09.848] media-state-manager/refresh-media-state/internal-storage available:529 total:3

  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Audio/'. Enthält die empfangenen Audiodateien.
  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Audio/Sent/'. Enthält gesendete Audiodateien.
  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Images/'. Enthält die resultierenden Grafikdateien.
  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Images/Sent/'. Enthält gesendete Grafikdateien.
  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Video/'. Enthält empfangene Videodateien.
  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp Video/Sent/'. Enthält gesendete Videodateien.
  • Verzeichnis '/data/media/0/WhatsApp/Media/WhatsApp-Profilfotos/'. Enthält Grafikdateien, die dem Besitzer des WhatsApp-Kontos zugeordnet sind.
  • Um Speicherplatz auf Ihrem Android-Smartphone zu sparen, können einige WhatsApp-Daten auf einer SD-Karte gespeichert werden. Auf der SD-Karte befindet sich im Stammverzeichnis ein Verzeichnis „WhatsApp“, wo die folgenden Artefakte dieses Programms zu finden sind:

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?

  • Verzeichnis '.Aktie' ('/mnt/sdcard/WhatsApp/.Share/'). Enthält Kopien von Dateien, die mit anderen WhatsApp-Benutzern geteilt wurden.
  • Verzeichnis '.Müll' ('/mnt/sdcard/WhatsApp/.trash/'). Enthält gelöschte Dateien.
  • Verzeichnis 'Datenbanken' ('/mnt/sdcard/WhatsApp/Databases/'). Enthält verschlüsselte Backups. Sie können entschlüsselt werden, wenn die Datei vorhanden ist 'Schlüssel', extrahiert aus dem Speicher des analysierten Geräts.

    Dateien, die sich in einem Unterverzeichnis befinden 'Datenbanken':

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?

  • Verzeichnis 'Halb' ('/mnt/sdcard/WhatsApp/Media/'). Enthält Unterverzeichnisse 'Hintergrund', „WhatsApp-Audio“, „WhatsApp-Bilder“, „WhatsApp-Profilfotos“, „WhatsApp-Video“, „WhatsApp-Sprachnotizen“, die empfangene und übertragene Multimediadateien (Grafikdateien, Videodateien, Sprachnachrichten, Fotos, die mit dem Profil des WhatsApp-Kontoinhabers verknüpft sind, Hintergrundbilder) enthalten.
  • Verzeichnis 'Profilbilder' ('/mnt/sdcard/WhatsApp/Profile Pictures/'). Enthält Grafikdateien, die mit dem Profil des WhatsApp-Kontoinhabers verknüpft sind.
  • Manchmal ist auf der SD-Karte ein Verzeichnis vorhanden 'Dateien' ('/mnt/sdcard/WhatsApp/Files/'). Dieses Verzeichnis enthält Dateien, in denen Programmeinstellungen und Benutzereinstellungen gespeichert sind.

Funktionen der Datenspeicherung in einigen Modellen mobiler Geräte

Bei einigen Modellen mobiler Geräte mit Android-Betriebssystem werden WhatsApp-Artefakte möglicherweise an einem anderen Ort gespeichert. Dies ist auf Änderungen des Speicherplatzes der Anwendungsdaten durch die Systemsoftware des Mobilgeräts zurückzuführen. Beispielsweise verfügen Xiaomi-Mobilgeräte über eine Funktion zum Erstellen eines zweiten Arbeitsbereichs („SecondSpace“). Bei Aktivierung dieser Funktion ändert sich der Speicherort der Daten. Wenn also auf einem normalen Mobilgerät mit Android-Betriebssystem Benutzerdaten im Verzeichnis gespeichert werden '/data/user/0/' (was eine Anspielung auf das Übliche ist '/Daten/Daten/'), dann werden im zweiten Arbeitsbereich Anwendungsdaten im Verzeichnis gespeichert '/data/user/10/'. Das heißt, am Beispiel des Dateispeicherorts 'wa.db':

  • in einem normalen Smartphone mit Android-Betriebssystem: /data/user/0/com.whatsapp/databases/wa.db' (was gleichbedeutend ist '/data/data/com.whatsapp/databases/wa.db');
  • im zweiten Arbeitsbereich des Xiaomi-Smartphones: '/data/user/10/com.whatsapp/databases/wa.db'.

WhatsApp-Artefakte auf iOS-Geräten

Im Gegensatz zum Android-Betriebssystem werden WhatsApp-Anwendungsdaten in iOS in eine Sicherungskopie (iTunes-Backup) übertragen. Daher ist zum Extrahieren von Daten aus dieser Anwendung weder das Extrahieren des Dateisystems noch das Erstellen eines physischen Speicherabzugs des untersuchten Geräts erforderlich. Die meisten relevanten Informationen sind in der Datenbank enthalten 'ChatStorage.sqlite', die sich entlang des Weges befindet: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/' (In einigen Programmen erscheint dieser Pfad als „AppDomainGroup-group.net.whatsapp.WhatsApp.shared“).

Struktur 'ChatStorage.sqlite':

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Die informativsten Tabellen in der Datenbank „ChatStorage.sqlite“ sind 'ZWAMESSAGE' и 'ZWAMEDIAITEM'.

Tischauftritt 'ZWAMESSAGE':

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Struktur der Tabelle 'ZWAMESSAGE'

Feldname Wert
Z_PK Datensatzsequenznummer (in der SQL-Tabelle)
Z_ENT Tabellenkennung, hat den Wert '9'
Z_OPT unbekannt, enthält normalerweise Werte von '1' bis '6'
ZCHILDMESSAGESDELIVEREDCOUNT unbekannt, enthält normalerweise den Wert '0'
ZCHILDMESSAGESPLAYEDCOUNT unbekannt, enthält normalerweise den Wert '0'
ZCHILDMESSAGESREADCOUNT unbekannt, enthält normalerweise den Wert '0'
ZDATAITEMVERSION unbekannt, enthält normalerweise den Wert „3“, wahrscheinlich ein SMS-Indikator
ZDOCID unbekannt
ZENCRETRYCOUNT unbekannt, enthält normalerweise den Wert '0'
ZFILTEREDRECIPIENTCOUNT unbekannt, enthält normalerweise die Werte '0', '2', '256'
ZISFROMME Nachrichtenrichtung: „0“ – eingehend, „1“ – ausgehend
ZMESSAGEERRORSTATUS Status der Nachrichtenübertragung. Wenn die Nachricht gesendet/empfangen wird, hat sie den Wert „0“
ZMESSAGETYPE Art der übermittelten Nachricht
ZSORT unbekannt
ZSPOTLIGHTSTATUS unbekannt
ZSTARRED unbekannt, nicht verwendet
ZCHATSESSION unbekannt
ZGROUPMEMBER unbekannt, nicht verwendet
ZLASTSESSION unbekannt
ZMEDIAITEM unbekannt
ZMESSAGEINFO unbekannt
ZPARENTMESSAGE unbekannt, nicht verwendet
ZMESSAGEDATE Zeitstempel im OS X Epoch Time-Format
ZSENTDATE Uhrzeit, zu der die Nachricht im OS X Epoch Time-Format gesendet wurde
ZFROMJID WhatsApp-Absender-ID
ZMEDIASECTIONID enthält das Jahr und den Monat, in dem die Mediendatei gesendet wurde
ZPHASH unbekannt, nicht verwendet
ZPUSHPAME Name des Kontakts, der die Mediendatei im UTF-8-Format gesendet hat
ZSTANZID eindeutige Nachrichtenkennung
ZTEXT Nachrichtentext
ZTOJID WhatsApp-ID des Empfängers
OFFSET Verschiebung

Tischauftritt 'ZWAMEDIAITEM':

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Struktur der Tabelle 'ZWAMEDIAITEM'

Feldname Wert
Z_PK Datensatzsequenznummer (in der SQL-Tabelle)
Z_ENT Tabellenkennung, hat den Wert '8'
Z_OPT unbekannt, enthält normalerweise Werte von '1' bis '3'.
ZCLOUDSTATUS enthält den Wert „4“, wenn die Datei geladen ist.
ZFILESIZE enthält die Dateilänge (in Bytes) für heruntergeladene Dateien
ZMEDIAORIGIN unbekannt, hat normalerweise den Wert '0'
ZMOVIEDAUER Dauer der Mediendatei, bei PDF-Dateien kann die Anzahl der Seiten des Dokuments enthalten sein
ZNACHRICHT enthält eine Seriennummer (die Nummer unterscheidet sich von der in der Spalte „Z_PK“ angegebenen)
ZASPECTRATIO Seitenverhältnis, nicht verwendet, normalerweise auf '0' gesetzt
ZHAGENAUIGKEIT unbekannt, hat normalerweise den Wert '0'
ZLATTITUDE Breite in Pixel
ZLONGTITUDE Höhe in Pixel
ZMEDIAURLDATE Zeitstempel im OS X Epoch Time-Format
ZAUTHORNAME Autor (kann bei Dokumenten den Dateinamen enthalten)
ZCOLLECTIONNAME Wird nicht benutzt
ZMEDIALOCALPATH Dateiname (einschließlich Pfad) im Gerätedateisystem
ZMEDIAURL Die URL, unter der sich die Mediendatei befand. Wenn eine Datei von einem Abonnenten an einen anderen übertragen wurde, wurde sie verschlüsselt und ihre Erweiterung wird als Erweiterung der übertragenen Datei angezeigt – .enc
ZTHUMBNAILLOCALPATH Pfad zur Miniaturansicht der Datei im Dateisystem des Geräts
ZTITEL Dateikopf
ZVCARDNAME Hash der Mediendatei; bei der Übertragung der Datei an eine Gruppe kann dieser die Absenderkennung enthalten
ZVCARDSTRING enthält Informationen über den Typ der übertragenen Datei (z. B. Bild/JPEG); bei der Übertragung einer Datei an eine Gruppe kann sie die Kennung des Empfängers enthalten
ZXMPPTHUMBPATH Pfad zur Miniaturansicht der Datei im Dateisystem des Geräts
ZMEDIAKEY unbekannt, enthält wahrscheinlich den Schlüssel zum Entschlüsseln der verschlüsselten Datei.
ZMETADATA Metadaten der übermittelten Nachricht
Offsetdruck Verschiebung

Weitere interessante Datenbanktabellen 'ChatStorage.sqlite' sind:

  • 'ZWAPROFILEPUSHNAME'. Ordnet WhatsApp-ID dem Kontaktnamen zu;
  • 'ZWAPROFILEPICTUREITEM'. Ordnet WhatsApp-ID dem Kontakt-Avatar zu;
  • 'Z_PRIMARYKEY'. Die Tabelle enthält allgemeine Informationen zu dieser Datenbank, wie z. B. die Gesamtzahl der gespeicherten Nachrichten, die Gesamtzahl der Chats usw.

Wenn Sie WhatsApp auf einem Mobilgerät mit iOS untersuchen, sollten Sie außerdem auf die folgenden Dateien achten:

  • Datei 'BackedUpKeyValue.sqlite'. Enthält kryptografische Schlüssel und andere Daten, die zur Identifizierung des Kontoinhabers erforderlich sind. Entlang des Weges gelegen: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • Datei 'KontakteV2.sqlite'. Enthält Informationen zu den Kontakten des Benutzers, wie z. B. vollständiger Name, Telefonnummer, Kontaktstatus (in Textform), WhatsApp-ID usw. Entlang des Weges gelegen: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • Datei 'consumer_version'. Enthält die Versionsnummer der installierten WhatsApp-Anwendung. Entlang des Weges gelegen: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • Datei 'aktuelles_Hintergrundbild.jpg'. Enthält das aktuelle WhatsApp-Hintergrundbild. Entlang des Weges gelegen: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/. Ältere Versionen der Anwendung verwenden die Datei 'Hintergrund', die sich entlang des Weges befindet: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'.
  • Datei 'blockedcontacts.dat'. Enthält Informationen zu blockierten Kontakten. Entlang des Weges gelegen: /private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/.
  • Datei 'pw.dat'. Enthält ein verschlüsseltes Passwort. Entlang des Weges gelegen: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/'.
  • Datei 'net.whatsapp.WhatsApp.plist' (oder Datei 'group.net.whatsapp.WhatsApp.shared.plist'). Enthält Informationen zu Ihrem WhatsApp-Kontoprofil. Die Datei befindet sich im Pfad: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Library/Preferences/'.

Inhalt der Datei „group.net.whatsapp.WhatsApp.shared.plist“ WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Sie müssen außerdem auf die folgenden Verzeichnisse achten:

  • Verzeichnis '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Media/Profile/'. Enthält Miniaturansichten von Kontakten, Gruppen (Dateien mit der Erweiterung .Daumen), Kontakt-Avatare, Avatar des WhatsApp-Kontoinhabers (Datei 'Foto.jpg').
  • Verzeichnis '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Message/Media/'. Enthält Multimediadateien und deren Miniaturansichten
  • Verzeichnis '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'. Enthält das Programmbetriebsprotokoll (Datei 'Anrufe.log') und Sicherungskopien der Programmbetriebsprotokolle (Datei 'calls.backup.log').
  • Verzeichnis '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/stickers/'. Enthält Aufkleber (Dateien im Format '.webp').
  • Verzeichnis '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/Logs/'. Enthält Programmbetriebsprotokolle.

WhatsApp-Artefakte unter Windows

WhatsApp-Artefakte unter Windows können an mehreren Stellen gefunden werden. Dies sind zunächst Verzeichnisse, die ausführbare Dateien und Hilfsdateien des Programms enthalten (für Windows 8/10):

  • „C:Programme (x86)WhatsApp“
  • 'C:Benutzer%Benutzerprofil% AppDataLocalWhatsApp'
  • „C:Benutzer%Benutzerprofil% AppDataLocalVirtualStore-Programmdateien (x86)WhatsApp“

Im Katalog 'C:Benutzer%Benutzerprofil% AppDataLocalWhatsApp' Die Protokolldatei befindet sich 'SquirrelSetup.log', das Informationen zur Suche nach Updates und zur Installation des Programms enthält.

Im Katalog 'C:Benutzer%Benutzerprofil% AppDataRoamingWhatsApp' Es gibt mehrere Unterverzeichnisse:

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Datei 'main-process.log' enthält Informationen zur Funktionsweise des WhatsApp-Programms.

Unterverzeichnis 'Datenbanken' enthält eine Datei 'Datenbanken.db', aber diese Datei enthält keine Informationen über Chats oder Kontakte.

Aus forensischer Sicht am interessantesten sind die Dateien, die sich im Verzeichnis befinden 'Zwischenspeicher'. Dabei handelt es sich grundsätzlich um Dateien mit dem Namen 'F_*******' (wobei * eine Zahl von 0 bis 9 ist), die verschlüsselte Multimediadateien und Dokumente enthält, darunter aber auch unverschlüsselte Dateien. Von besonderem Interesse sind die Akten 'data_0', 'data_1', 'data_2', 'data_3', befindet sich im selben Unterverzeichnis. Dateien 'data_0', 'data_1', 'data_3' enthalten externe Links zu übertragenen verschlüsselten Multimediadateien und Dokumenten.

Beispiel für Informationen in der Datei „data_1“WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Auch Datei 'data_3' kann Grafikdateien enthalten.

Datei 'data_2' enthält Kontakt-Avatare (kann durch Suche nach Dateikopfzeilen wiederhergestellt werden).

In der Datei enthaltene Avatare 'data_2':

WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
Daher sind die Chats selbst nicht im Speicher des Computers zu finden, Sie finden jedoch:

  • Multimediadateien;
  • Über WhatsApp übermittelte Dokumente;
  • Informationen zu den Kontakten des Kontoinhabers.

WhatsApp-Artefakte unter MacOS

Unter MacOS finden Sie Arten von WhatsApp-Artefakten, die denen im Windows-Betriebssystem ähneln.

Die Programmdateien befinden sich in folgenden Verzeichnissen:

  • „C:ApplicationsWhatsApp.app“
  • „C:Anwendungen._WhatsApp.app“
  • 'C:Benutzer%Benutzerprofil%LibraryPreferences'
  • 'C:Benutzer%Benutzerprofil%LibraryLogsWhatsApp'
  • 'C:Users%Benutzerprofil%LibrarySaved Application StateWhatsApp.savedState'
  • 'C:Benutzer%Benutzerprofil%LibraryApplication Scripts'
  • 'C:Benutzer%Benutzerprofil%LibraryApplication SupportCloudDocs'
  • 'C:Benutzer%Benutzerprofil%LibraryApplication SupportWhatsApp.ShipIt'
  • „C:Benutzer%Benutzerprofil%LibraryContainerscom.rockysandstudio.app-for-whatsapp“
  • „C:Benutzer%Benutzerprofil% Bibliothek Mobile Dokumente <Textvariable> WhatsApp-Konten“
    Dieses Verzeichnis enthält Unterverzeichnisse, deren Namen Telefonnummern sind, die mit dem Besitzer des WhatsApp-Kontos verknüpft sind.
  • 'C:Benutzer%Benutzerprofil%LibraryCachesWhatsApp.ShipIt'
    Dieses Verzeichnis enthält Informationen zur Installation des Programms.
  • 'C:Benutzer%Benutzerprofil%PicturesiPhoto Library.photolibraryMasters', 'C:Benutzer%Benutzerprofil%PicturesiPhoto Library.photolibraryThumbnails'
    Diese Verzeichnisse enthalten Servicedateien des Programms, darunter Fotos und Miniaturansichten von WhatsApp-Kontakten.
  • 'C:Benutzer%Benutzerprofil%LibraryCachesWhatsApp'
    Dieses Verzeichnis enthält mehrere SQLite-Datenbanken, die für das Daten-Caching verwendet werden.
  • „C:Benutzer%Benutzerprofil%LibraryApplication SupportWhatsApp“
    Dieses Verzeichnis enthält mehrere Unterverzeichnisse:

    WhatsApp in Ihrer Handfläche: Wo und wie können Sie forensische Artefakte finden?
    Im Katalog „C:Benutzer%Benutzerprofil%LibraryApplication SupportWhatsAppCache“ Es gibt Dateien 'data_0', 'data_1', 'data_2', 'data_3' und Dateien mit Namen 'F_*******' (wobei * eine Zahl von 0 bis 9 ist). Informationen darüber, welche Informationen diese Dateien enthalten, finden Sie unter WhatsApp-Artefakte unter Windows.

    Im Katalog 'C:Benutzer%Benutzerprofil%LibraryApplication SupportWhatsAppIndexedDB' kann Multimediadateien enthalten (Dateien haben keine Erweiterungen).

    Datei 'main-process.log' enthält Informationen zur Funktionsweise des WhatsApp-Programms.

Quellen

  1. Forensische Analyse von WhatsApp Messenger auf Android-Smartphones, von Cosimo Anglano, 2014.
  2. Whatsapp Forensics: Eksplorasi System Berkas und Basisdaten für Android und iOS von Ahmad Pratama, 2014.

In den folgenden Artikeln dieser Reihe:

Entschlüsselung verschlüsselter WhatsApp-DatenbankenEin Artikel mit Informationen zur Generierung des WhatsApp-Verschlüsselungsschlüssels und praktischen Beispielen, die zeigen, wie die verschlüsselten Datenbanken dieser Anwendung entschlüsselt werden.
Extrahieren von WhatsApp-Daten aus dem Cloud-SpeicherEin Artikel, in dem wir Ihnen sagen, welche WhatsApp-Daten in den Clouds gespeichert sind und Methoden zum Abrufen dieser Daten aus Cloud-Speichern beschreiben.
WhatsApp-Datenextraktion: Praktische BeispieleEin Artikel, der Schritt für Schritt beschreibt, welche Programme und wie WhatsApp-Daten von verschiedenen Geräten extrahiert werden.

Source: habr.com

Kommentar hinzufügen