WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?

Jika Anda ingin mengetahui jenis artefak forensik WhatsApp yang ada di sistem operasi berbeda dan di mana tepatnya artefak tersebut dapat ditemukan, maka inilah tempatnya. Artikel ini dari pakar di Laboratorium Forensik Komputer Group-IB Igor Mikhailov memulai rangkaian postingan tentang forensik WhatsApp dan informasi apa saja yang dapat diperoleh dari analisis perangkat.

Mari kita segera perhatikan bahwa sistem operasi yang berbeda menyimpan jenis artefak WhatsApp yang berbeda, dan jika peneliti dapat mengekstrak jenis data WhatsApp tertentu dari satu perangkat, ini tidak berarti jenis data serupa dapat diekstraksi dari perangkat lain. Misalnya, jika unit sistem yang menjalankan OS Windows dihapus, obrolan WhatsApp mungkin tidak akan ditemukan di disknya (dengan pengecualian salinan cadangan perangkat iOS, yang dapat ditemukan di drive yang sama). Penyitaan laptop dan perangkat seluler tentu memiliki ciri khas tersendiri. Mari kita bicarakan ini lebih detail.

Artefak WhatsApp di perangkat Android

Untuk mengekstrak artefak WhatsApp dari perangkat Android, peneliti harus memiliki hak pengguna super ('akar') pada perangkat yang sedang diselidiki atau dapat mengekstrak dump memori fisik perangkat, atau sistem filenya (misalnya, menggunakan kerentanan perangkat lunak pada perangkat seluler tertentu).

File aplikasi terletak di memori telepon di bagian penyimpanan data pengguna. Biasanya, bagian ini diberi nama 'data pengguna'. Subdirektori dan file program terletak di sepanjang jalur: '/data/data/com.whatsapp/'.

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
File utama yang berisi artefak forensik WhatsApp di OS Android adalah database 'wa.db' ΠΈ 'msgstore.db'.

Dalam basis data 'wa.db' berisi daftar kontak lengkap pengguna WhatsApp, termasuk nomor telepon, nama tampilan, cap waktu, dan informasi lain yang diberikan saat mendaftar WhatsApp. Mengajukan 'wa.db' terletak di sepanjang jalan: '/data/data/com.whatsapp/databases/' dan memiliki struktur sebagai berikut:

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Tabel paling menarik di database 'wa.db' bagi peneliti adalah:

  • 'wa_kontak'
    Tabel ini berisi informasi kontak: ID kontak WhatsApp, informasi status, nama tampilan pengguna, cap waktu, dll.

    Tampilan tabel:

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
    Struktur tabel

    Nama bidang Nilai
    _Indo mencatat nomor urut (dalam tabel SQL)
    jid ID kontak WhatsApp, ditulis dengan format <nomor telepon>@s.whatsapp.net
    is_whatsapp_user berisi '1' jika kontak tersebut sesuai dengan pengguna WhatsApp sebenarnya, '0' jika tidak
    status berisi teks yang ditampilkan dalam status kontak
    status_cap waktu berisi stempel waktu dalam format Unix Epoch Time (ms).
    jumlah nomor telepon yang terkait dengan kontak tersebut
    raw_contact_id nomor seri kontak
    display_name nama tampilan kontak
    tipe_telepon jenis telepon
    label_telepon label yang terkait dengan nomor kontak
    unseen_msg_count jumlah pesan yang dikirim oleh kontak tetapi tidak dibaca oleh penerima
    foto_ts berisi stempel waktu dalam format Unix Epoch Time
    jempol_ts berisi stempel waktu dalam format Unix Epoch Time
    stempel waktu_id_foto berisi stempel waktu dalam format Unix Epoch Time (ms).
    nama pemberian nilai bidang cocok dengan 'nama_tampilan' untuk setiap kontak
    nama_wa Nama kontak WhatsApp (nama yang ditentukan dalam profil kontak ditampilkan)
    urutkan_nama nama kontak yang digunakan dalam operasi pengurutan
    julukan nama panggilan kontak di WhatsApp (nama panggilan yang ditentukan dalam profil kontak ditampilkan)
    perusahaan perusahaan (perusahaan yang ditentukan dalam profil kontak ditampilkan)
    judul judul (Ms./Mr.; judul yang dikonfigurasi dalam profil kontak ditampilkan)
    mengimbangi bias
  • 'urutan_sqlite'
    Tabel ini berisi informasi tentang jumlah kontak;
  • 'android_metadata'
    Tabel ini berisi informasi tentang pelokalan bahasa WhatsApp.

Dalam basis data 'msgstore.db' berisi informasi tentang pesan terkirim, seperti nomor kontak, teks pesan, status pesan, stempel waktu, detail file transfer yang disertakan dalam pesan, dll. Mengajukan 'msgstore.db' terletak di sepanjang jalan: '/data/data/com.whatsapp/databases/' dan memiliki struktur sebagai berikut:

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Tabel paling menarik dalam file 'msgstore.db' bagi peneliti adalah:

  • 'urutan_sqlite'
    Tabel ini berisi informasi umum tentang database ini, seperti jumlah total pesan yang disimpan, jumlah total obrolan, dll.

    Tampilan tabel:

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?

  • 'pesan_fts_konten'
    Berisi teks pesan terkirim.

    Tampilan tabel:

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?

  • 'pesan'
    Tabel ini berisi informasi seperti nomor kontak, teks pesan, status pesan, stempel waktu, informasi tentang file transfer yang disertakan dalam pesan.

    Tampilan tabel:

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
    Struktur tabel

    Nama bidang Nilai
    _Indo mencatat nomor urut (dalam tabel SQL)
    kunci_remote_jid ID WhatsApp mitra komunikasi
    kunci_dari_saya arah pesan: '0' – masuk, '1' – keluar
    kunci_id pengenal pesan unik
    status status pesan: '0' – terkirim, '4' – menunggu di server, '5' – diterima di tujuan, '6' – pesan kontrol, '13' – pesan dibuka oleh penerima (sudah dibaca)
    perlu_dorongan memiliki nilai '2' jika itu adalah pesan siaran, jika tidak berisi '0'
    data teks pesan (ketika parameter 'media_wa_type' adalah '0')
    timestamp berisi stempel waktu dalam format Unix Epoch Time (ms), nilainya diambil dari jam perangkat
    media_url berisi URL file yang ditransfer (bila parameter 'media_wa_type' adalah '1', '2', '3')
    media_mime_type Jenis MIME dari file yang ditransfer (bila parameter 'media_wa_type' sama dengan '1', '2', '3')
    media_wa_type jenis pesan: '0' - teks, '1' - file grafik, '2' - file audio, '3' - file video, '4' - kartu kontak, '5' - geodata
    ukuran_media ukuran file yang ditransfer (bila parameter 'media_wa_type' adalah '1', '2', '3')
    nama_media nama file yang ditransfer (bila parameter 'media_wa_type' adalah '1', '2', '3')
    media_caption Berisi kata 'audio', 'video' untuk nilai yang sesuai dari parameter 'media_wa_type' (bila parameter 'media_wa_type' adalah '1', '3')
    media_hash hash yang dikodekan base64 dari file yang dikirimkan, dihitung menggunakan algoritma HAS-256 (ketika parameter 'media_wa_type' sama dengan '1', '2', '3')
    media_durasi durasi dalam detik untuk file media (bila 'media_wa_type' adalah '1', '2', '3')
    asal memiliki nilai '2' jika itu adalah pesan siaran, jika tidak berisi '0'
    lintang geodata: garis lintang (ketika parameter 'media_wa_type' adalah '5')
    garis bujur geodata: bujur (ketika parameter 'media_wa_type' adalah '5')
    jempol_gambar informasi layanan
    sumber daya_jarak jauh ID Pengirim (hanya untuk obrolan grup)
    stempel waktu_diterima waktu penerimaan, berisi stempel waktu dalam format Unix Epoch Time (ms), nilainya diambil dari jam perangkat (bila parameter 'key_from_me' memiliki '0', '-1' atau nilai lainnya)
    kirim_cap waktu tidak digunakan, biasanya bernilai '-1'
    stempel waktu_server_tanda terima waktu yang diterima oleh server pusat, berisi stempel waktu dalam format Unix Epoch Time (ms), nilainya diambil dari jam perangkat (bila parameter 'key_from_me' memiliki '1', '-1' atau nilai lainnya
    stempel waktu_perangkat_tanda terima waktu pesan diterima oleh pelanggan lain, berisi stempel waktu dalam format Unix Epoch Time (ms), nilainya diambil dari jam perangkat (bila parameter 'key_from_me' memiliki '1', '-1' atau nilai lainnya
    stempel waktu_perangkat_baca waktu membuka (membaca) pesan, berisi stempel waktu dalam format Unix Epoch Time (ms), nilainya diambil dari jam perangkat
    stempel waktu_perangkat_diputar waktu pemutaran pesan, berisi stempel waktu dalam format Unix Epoch Time (ms), nilainya diambil dari jam perangkat
    data mentah thumbnail file yang ditransfer (bila parameter 'media_wa_type' adalah '1' atau '3')
    penerima_jumlah jumlah penerima (untuk pesan siaran)
    partisipan_hash digunakan saat mengirimkan pesan dengan geodata
    membintangi tidak digunakan
    dikutip_baris_id tidak diketahui, biasanya mengandung nilai '0'
    disebutkan_jids tidak digunakan
    multicast_id tidak digunakan
    mengimbangi bias

    Daftar bidang ini tidak lengkap. Untuk versi WhatsApp yang berbeda, beberapa kolom mungkin ada atau tidak ada. Selain itu, bidang mungkin ada 'media_enc_hash', 'edit_versi', 'id_transaksi_pembayaran' dan lain-lain

  • 'pesan_thumbnail'
    Tabel ini berisi informasi tentang gambar dan cap waktu yang ditransfer. Pada kolom 'stempel waktu', waktu ditunjukkan dalam format Unix Epoch Time (ms).
  • 'daftar_obrol'
    Tabel ini berisi informasi tentang obrolan.

    Tampilan tabel:

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?

Selain itu, saat memeriksa WhatsApp di perangkat seluler yang menjalankan Android, Anda harus memperhatikan file-file berikut:

  • berkas 'msgstore.db.cryptXX' (di mana XX adalah satu atau dua digit dari 0 hingga 12, misalnya msgstore.db.crypt12). Berisi cadangan pesan WhatsApp terenkripsi (file cadangan msgstore.db). Berkas 'msgstore.db.cryptXX' terletak di sepanjang jalan: '/data/media/0/WhatsApp/Database/' (kartu SD virtual), '/mnt/sdcard/WhatsApp/Database/ (kartu SD fisik)'.
  • berkas 'kunci'. Berisi kunci kriptografi. Terletak di sepanjang jalan: '/data/data/com.whatsapp/files/'. Digunakan untuk mendekripsi cadangan WhatsApp terenkripsi.
  • berkas 'com.whatsapp_preferences.xml'. Berisi informasi tentang profil akun WhatsApp Anda. File tersebut terletak di sepanjang jalur: '/data/data/com.whatsapp/shared_prefs/'.

    Fragmen konten file

    <?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> (имя Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°)
    … 
  • berkas 'registrasi.RegisterPhone.xml'. Berisi informasi tentang nomor telepon yang terkait dengan akun WhatsApp. File tersebut terletak di sepanjang jalur: '/data/data/com.whatsapp/shared_prefs/'.

    Isi berkas

    <?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>
  • berkas 'axolotl.db'. Berisi kunci kriptografi dan data lain yang diperlukan untuk mengidentifikasi pemilik akun. Terletak di sepanjang jalan: '/data/data/com.whatsapp/databases/'.
  • berkas 'pengaturan obrolan.db'. Berisi informasi konfigurasi aplikasi.
  • berkas 'wa.db'. Berisi rincian kontak. Database yang sangat menarik (dari aspek forensik) dan informatif. Ini mungkin berisi informasi rinci tentang kontak yang dihapus.

Anda juga perlu memperhatikan direktori berikut:

  • Direktori '/data/media/0/WhatsApp/Media/Gambar WhatsApp/'. Berisi file grafik yang ditransfer.
  • Direktori '/data/media/0/WhatsApp/Media/Catatan Suara WhatsApp/'. Berisi pesan suara dalam file berformat .OPUS.
  • Direktori '/data/data/com.whatsapp/cache/Gambar Profil/'. Berisi file grafik – gambar kontak.
  • Direktori '/data/data/com.whatsapp/files/Avatar/'. Berisi file grafik – gambar mini kontak. File-file ini memiliki ekstensi '.j' namun tetap merupakan file gambar JPEG (JPG).
  • Direktori '/data/data/com.whatsapp/files/Avatar/'. Berisi file grafik - gambar dan thumbnail dari gambar yang ditetapkan sebagai avatar oleh pemilik akun.
  • Direktori '/data/data/com.whatsapp/files/Log/'. Berisi log operasi program (file 'whatsapp.log') dan salinan cadangan log operasi program (file dengan nama dalam format whatsapp-yyyy-mm-dd.1.log.gz).

File Log WhatsApp:

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Fragmen jurnal2017-01-10 09:37:09.757 LL_I D [524:WhatsApp Worker #1] pemberitahuan panggilan tak terjawab/jumlah init:0 stempel waktu:0
2017-01-10 09:37:09.758 LL_I D [524:WhatsApp Worker #1] pemberitahuan/pembaruan panggilan tak terjawab batalkan benar
2017-01-10 09:37:09.768 LL_I D [1:utama] aplikasi-init/muat-saya
2017-01-10 09:37:09.772 LL_I D [1:utama] file kata sandi hilang atau tidak dapat dibaca
2017-01-10 09:37:09.782 Statistik LL_I D [1:utama] Pesan Teks: 59 terkirim, 82 diterima / Pesan Media: 1 terkirim (0 byte), 0 diterima (9850158 byte) / Pesan Offline: 81 diterima ( penundaan rata-rata 19522 msec) / Layanan Pesan: 116075 byte terkirim, 211729 byte diterima / Panggilan Voip: 1 panggilan keluar, 0 panggilan masuk, 2492 byte terkirim, 1530 byte diterima / Google Drive: 0 byte terkirim, 0 byte diterima / Roaming: 1524 byte terkirim, 1826 byte diterima / Total Data: 118567 byte terkirim, 10063417 byte diterima
2017-01-10 09:37:09.785 LL_I D [1:utama] media-state-manager/refresh-media-state/writable-media
2017-01-10 09:37:09.806 LL_I D [1:utama] aplikasi-init/inisialisasi/timer/stop: 24
2017-01-10 09:37:09.811 LL_I D [1:utama] toko pesan/periksakesehatan
2017-01-10 09:37:09.817 LL_I D [1:utama] msgstore/checkhealth/jurnal/hapus salah
2017-01-10 09:37:09.818 LL_I D [1:utama] msgstore/checkhealth/back/delete false
2017-01-10 09:37:09.818 LL_I D [1:utama] msgstore/checkdb/data/data/com.whatsapp/databases/msgstore.db
2017-01-10 09:37:09.819 LL_I D [1:utama] msgstore/checkdb/list _jobqueue-WhatsAppJobManager 16384 drw=011
2017-01-10 09:37:09.820 LL_I D [1:utama] pesan/checkdb/list _jobqueue-WhatsAppJobManager-journal 21032 drw=011
2017-01-10 09:37:09.820 LL_I D [1:utama] msgstore/checkdb/list axolotl.db 184320 drw=011
2017-01-10 09:37:09.821 LL_I D [1:utama] msgstore/checkdb/list axolotl.db-wal 436752 drw=011
2017-01-10 09:37:09.821 LL_I D [1:utama] msgstore/checkdb/list axolotl.db-shm 32768 drw=011
2017-01-10 09:37:09.822 LL_I D [1:utama] msgstore/checkdb/list msgstore.db 540672 drw=011
2017-01-10 09:37:09.823 LL_I D [1:utama] msgstore/checkdb/list msgstore.db-wal 0 drw=011
2017-01-10 09:37:09.823 LL_I D [1:utama] msgstore/checkdb/list msgstore.db-shm 32768 drw=011
2017-01-10 09:37:09.824 LL_I D [1:utama] pesan/checkdb/list wa.db 69632 drw=011
2017-01-10 09:37:09.825 LL_I D [1:utama] pesan/checkdb/list wa.db-wal 428512 drw=011
2017-01-10 09:37:09.825 LL_I D [1:utama] msgstore/checkdb/list wa.db-shm 32768 drw=011
2017-01-10 09:37:09.826 LL_I D [1:utama] msgstore/checkdb/list chatsettings.db 4096 drw=011
2017-01-10 09:37:09.826 LL_I D [1:utama] msgstore/checkdb/list chatsettings.db-wal 70072 drw=011
2017-01-10 09:37:09.827 LL_I D [1:utama] msgstore/checkdb/list chatsettings.db-shm 32768 drw=011
2017-01-10 09:37:09.838 LL_I D [1:utama] msgstore/checkdb/versi 1
2017-01-10 09:37:09.839 LL_I D [1:utama] toko pesan/canquery
2017-01-10 09:37:09.846 LL_I D [1:utama] toko pesan/canquery/hitungan 1
2017-01-10 09:37:09.847 LL_I D [1:utama] pesan/canquery/timer/stop: 8
2017-01-10 09:37:09.847 LL_I D [1:utama] toko pesan/canquery 517 | waktu yang dihabiskan:8
2017-01-10 09:37:09.848 LL_I D [529:WhatsApp Worker #3] media-state-manager/refresh-media-state/internal-storage tersedia:1,345,622,016 total:5,687,922,688

  • Direktori '/data/media/0/WhatsApp/Media/WhatsApp Audio/'. Berisi file audio yang diterima.
  • Direktori '/data/media/0/WhatsApp/Media/WhatsApp Audio/Terkirim/'. Berisi file audio yang dikirim.
  • Direktori '/data/media/0/WhatsApp/Media/Gambar WhatsApp/'. Berisi file grafik yang dihasilkan.
  • Direktori '/data/media/0/WhatsApp/Media/Gambar WhatsApp/Terkirim/'. Berisi file grafik yang dikirim.
  • Direktori '/data/media/0/WhatsApp/Media/Video WhatsApp/'. Berisi file video yang diterima.
  • Direktori '/data/media/0/WhatsApp/Media/Video WhatsApp/Terkirim/'. Berisi file video yang dikirim.
  • Direktori '/data/media/0/WhatsApp/Media/Foto Profil WhatsApp/'. Berisi file grafik yang terkait dengan pemilik akun WhatsApp.
  • Untuk menghemat ruang memori di smartphone Android Anda, beberapa data WhatsApp dapat disimpan di kartu SD. Di kartu SD, di direktori root, ada direktori 'Ada apa', di mana artefak berikut dari program ini dapat ditemukan:

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?

  • Direktori '.Membagikan' ('/mnt/sdcard/WhatsApp/.Bagikan/'). Berisi salinan file yang telah dibagikan kepada pengguna WhatsApp lain.
  • Direktori '.sampah' ('/mnt/sdcard/WhatsApp/.trash/'). Berisi file yang dihapus.
  • Direktori 'Database' ('/mnt/sdcard/WhatsApp/Database/'). Berisi cadangan terenkripsi. Mereka dapat didekripsi jika file tersebut ada 'kunci', diekstraksi dari memori perangkat yang dianalisis.

    File terletak di subdirektori 'Database':

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?

  • Direktori 'Setengah' ('/mnt/kartu sd/WhatsApp/Media/'). Berisi subdirektori 'Wallpaper', 'Audio WhatsApp', 'Gambar WhatsApp', 'Foto Profil WhatsApp', 'Video WhatsApp', 'Catatan Suara WhatsApp', yang berisi file multimedia yang diterima dan dikirimkan (file grafik, file video, pesan suara, foto yang terkait dengan profil pemilik akun WhatsApp, wallpaper).
  • Direktori 'Foto profil' ('/mnt/sdcard/WhatsApp/Gambar Profil/'). Berisi file grafik yang terkait dengan profil pemilik akun WhatsApp.
  • Terkadang mungkin ada direktori di kartu SD 'file' ('/mnt/sdcard/WhatsApp/File/'). Direktori ini berisi file yang menyimpan pengaturan program dan preferensi pengguna.

Fitur penyimpanan data di beberapa model perangkat seluler

Beberapa model perangkat seluler yang menjalankan OS Android mungkin menyimpan artefak WhatsApp di lokasi berbeda. Hal ini disebabkan oleh perubahan ruang penyimpanan data aplikasi oleh perangkat lunak sistem perangkat seluler. Misalnya, perangkat seluler Xiaomi memiliki fungsi untuk membuat ruang kerja kedua (β€œSecondSpace”). Saat fungsi ini diaktifkan, lokasi data berubah. Jadi, jika di perangkat seluler biasa yang menjalankan OS Android, data pengguna disimpan di direktori '/data/pengguna/0/' (yang merupakan referensi ke yang biasa '/data/data/'), lalu di ruang kerja kedua data aplikasi disimpan di direktori '/data/pengguna/10/'. Artinya, menggunakan contoh lokasi file 'wa.db':

  • di smartphone biasa yang menjalankan OS Android: /data/user/0/com.whatsapp/databases/wa.db' (yang setara '/data/data/com.whatsapp/databases/wa.db');
  • di ruang kerja kedua smartphone Xiaomi: '/data/user/10/com.whatsapp/databases/wa.db'.

Artefak WhatsApp di perangkat iOS

Berbeda dengan OS Android, di iOS, data aplikasi WhatsApp ditransfer ke salinan cadangan (iTunes backup). Oleh karena itu, mengekstraksi data dari aplikasi ini tidak memerlukan ekstraksi sistem file atau membuat dump memori fisik perangkat yang sedang diselidiki. Sebagian besar informasi relevan terkandung dalam database 'Penyimpanan Obrolan.sqlite', yang terletak di sepanjang jalan: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/' (di beberapa program, jalur ini muncul sebagai 'AppDomainGroup-group.net.whatsapp.WhatsApp.shared').

Struktur 'Penyimpanan Obrolan.sqlite':

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Tabel paling informatif dalam database 'ChatStorage.sqlite' adalah 'Pesan ZWAM' ΠΈ 'ZWAMEDIAITEM'.

Penampilan meja 'Pesan ZWAM':

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Struktur tabel 'ZWAMESSAGE'

Nama bidang Nilai
Z_PK mencatat nomor urut (dalam tabel SQL)
Z_ENT pengidentifikasi tabel, memiliki nilai '9'
Z_OPT tidak diketahui, biasanya berisi nilai dari '1' hingga '6'
ZPESAN ANAK TERKIRIMCOUNT tidak diketahui, biasanya mengandung nilai '0'
ZCHILDMSAGESPLAYEDCOUNT tidak diketahui, biasanya mengandung nilai '0'
ZCHILDMSAGESREADCOUNT tidak diketahui, biasanya mengandung nilai '0'
ZDATAITEMVERSI tidak diketahui, biasanya berisi nilai '3', kemungkinan merupakan indikator pesan teks
ZDOCID tidak diketahui
ZENCRETRYCOUNT tidak diketahui, biasanya mengandung nilai '0'
ZFILTEREDRECIPIENTCOUNT tidak diketahui, biasanya berisi nilai '0', '2', '256'
ZISFROMME arah pesan: '0' – masuk, '1' – keluar
ZMESSAGEERRORSTATUS status pengiriman pesan. Jika pesan terkirim/diterima, maka bernilai '0'
JENIS PESAN Z jenis pesan yang dikirimkan
ZSORT tidak diketahui
ZSPOTLIGHSTATUS tidak diketahui
ZBINTANG tidak diketahui, tidak digunakan
ZCHATSESSION tidak diketahui
ZGROUPMEMBER tidak diketahui, tidak digunakan
SESI ZLASTS tidak diketahui
ZMEDIAITEM tidak diketahui
ZMESSAGEINFO tidak diketahui
ZPESAN ORANG TUA tidak diketahui, tidak digunakan
ZMESSAGEDATE stempel waktu dalam format Epoch Time OS X
ZSENTDATE waktu pesan dikirim dalam format OS X Epoch Time
ZFROMJID ID Pengirim WhatsApp
ZMEDIASECTIONID berisi tahun dan bulan pengiriman file media
ZPHASH tidak diketahui, tidak digunakan
ZPUSHPAME nama kontak yang mengirimkan file media dalam format UTF-8
ZSTANZID pengenal pesan unik
ZTEXT Pesan teks
ZTOJID ID WhatsApp penerima
OFFSET bias

Penampilan meja 'ZWAMEDIAITEM':

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Struktur tabel 'ZWAMEDIAITEM'

Nama bidang Nilai
Z_PK mencatat nomor urut (dalam tabel SQL)
Z_ENT pengidentifikasi tabel, memiliki nilai '8'
Z_OPT tidak diketahui, biasanya berisi nilai dari '1' hingga '3'.
ZCLOUDSTATUS berisi nilai '4' jika file dimuat.
ZFILESIZE berisi panjang file (dalam byte) untuk file yang diunduh
ZMEDIAORIGIN tidak diketahui, biasanya bernilai '0'
ZMOVIEDURASI durasi file media, untuk file pdf mungkin berisi jumlah halaman dokumen
ZPESAN berisi nomor seri (nomornya berbeda dengan yang tertera pada kolom 'Z_PK')
ZASPEKTRASI rasio aspek, tidak digunakan, biasanya disetel ke '0'
ZHAKURASI tidak diketahui, biasanya bernilai '0'
ZLATTITUD lebar dalam piksel
ZONGTITUDE tinggi dalam piksel
ZMEDIAURLDATE stempel waktu dalam format Epoch Time OS X
ZAUTHORNAME penulis (untuk dokumen, mungkin berisi nama file)
NAMA KOLEKSI Z tidak digunakan
ZMEDIALOCALPATH nama file (termasuk jalur) di sistem file perangkat
URL ZMEDIA URL tempat file media berada. Jika file ditransfer dari satu pelanggan ke pelanggan lain, file tersebut dienkripsi dan ekstensinya akan ditunjukkan sebagai ekstensi dari file yang ditransfer - .enc
ZTHUMBNAILLOCALPATH jalur ke thumbnail file di sistem file perangkat
ZTITLE tajuk berkas
ZVCARDNAME hash file media; saat mentransfer file ke grup, mungkin berisi pengidentifikasi pengirim
ZVCARDSTRING berisi informasi tentang jenis file yang ditransfer (misalnya, gambar/jpeg); saat mentransfer file ke grup, mungkin berisi pengenal penerima
ZXMPPTHUMBPATH jalur ke thumbnail file di sistem file perangkat
ZMEDIAKEY tidak diketahui, mungkin berisi kunci untuk mendekripsi file terenkripsi.
ZMETADATA metadata pesan yang dikirimkan
Mengimbangi bias

Tabel database menarik lainnya 'Penyimpanan Obrolan.sqlite' adalah:

  • 'ZWAPROFILEPUSHNAME'. Cocokkan ID WhatsApp dengan nama kontak;
  • 'ITEM GAMBAR ZWAPROFILE'. Mencocokkan ID WhatsApp dengan avatar kontak;
  • 'Z_PRIMARYKEY'. Tabel berisi informasi umum tentang database ini, seperti jumlah total pesan yang disimpan, jumlah total obrolan, dll.

Selain itu, saat memeriksa WhatsApp di perangkat seluler yang menjalankan iOS, Anda harus memperhatikan file-file berikut:

  • berkas 'BackedUpKeyValue.sqlite'. Berisi kunci kriptografi dan data lain yang diperlukan untuk mengidentifikasi pemilik akun. Terletak di sepanjang jalan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • berkas 'KontakV2.sqlite'. Berisi informasi mengenai kontak pengguna, seperti nama lengkap, nomor telepon, status kontak (dalam bentuk teks), ID WhatsApp, dll. Terletak di sepanjang jalan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • berkas 'versi_konsumen'. Berisi nomor versi aplikasi WhatsApp yang diinstal. Terletak di sepanjang jalan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • berkas 'wallpaper_saat ini.jpg'. Berisi wallpaper latar belakang WhatsApp saat ini. Terletak di sepanjang jalan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/. Versi aplikasi yang lebih lama menggunakan file tersebut 'kertas dinding', yang terletak di sepanjang jalan: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'.
  • berkas 'kontak yang diblokir.dat'. Berisi informasi tentang kontak yang diblokir. Terletak di sepanjang jalan: /private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/.
  • berkas 'pw.dat'. Berisi kata sandi terenkripsi. Terletak di sepanjang jalan: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/'.
  • berkas 'net.whatsapp.WhatsApp.plist' (atau mengajukan 'grup.net.whatsapp.WhatsApp.shared.plist'). Berisi informasi tentang profil akun WhatsApp Anda. File tersebut terletak di sepanjang jalur: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Library/Preferences/'.

Isi file 'group.net.whatsapp.WhatsApp.shared.plist' WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Anda juga perlu memperhatikan direktori berikut:

  • Direktori '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Media/Profile/'. Berisi thumbnail kontak, grup (file dengan ekstensi .ibu jari), avatar kontak, avatar pemilik akun WhatsApp (file 'Foto.jpg').
  • Direktori '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Message/Media/'. Berisi file multimedia dan thumbnail-nya
  • Direktori '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'. Berisi log operasi program (file 'panggilan.log') dan salinan cadangan log operasi program (file 'panggilan.cadangan.log').
  • Direktori '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/stickers/'. Berisi stiker (file dalam format '.webp').
  • Direktori '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/Logs/'. Berisi log operasi program.

Artefak WhatsApp di Windows

Artefak WhatsApp di Windows dapat ditemukan di beberapa tempat. Pertama-tama, ini adalah direktori yang berisi file program yang dapat dieksekusi dan tambahan (untuk Windows 8/10):

  • 'C:Program Files (x86)WhatsApp'
  • 'C:Pengguna%Profil pengguna% AppDataLocalWhatsApp'
  • 'C:Pengguna%Profil pengguna% File Program AppDataLocalVirtualStore (x86)WhatsApp'

Di katalog 'C:Pengguna%Profil pengguna% AppDataLocalWhatsApp' file log berada 'SquirrelSetup.log', yang berisi informasi tentang memeriksa pembaruan dan menginstal program.

Di katalog 'C:Pengguna%Profil pengguna% AppDataRoamingWhatsApp' Ada beberapa subdirektori:

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
berkas 'proses-utama.log' berisi informasi tentang pengoperasian program WhatsApp.

Subdirektori 'database' berisi file 'Database.db', tetapi file ini tidak berisi informasi apa pun tentang obrolan atau kontak.

Yang paling menarik dari sudut pandang forensik adalah file-file yang terletak di direktori 'Cache'. Ini pada dasarnya adalah file yang diberi nama 'F_*******' (di mana * adalah angka dari 0 hingga 9) berisi file multimedia dan dokumen terenkripsi, tetapi ada juga file yang tidak terenkripsi di antaranya. Yang menarik adalah file-filenya 'data_0', 'data_1', 'data_2', 'data_3', terletak di subdirektori yang sama. File 'data_0', 'data_1', 'data_3' berisi tautan eksternal ke file dan dokumen multimedia terenkripsi yang dikirimkan.

Contoh informasi yang terkandung dalam file 'data_1'WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Juga mengajukan 'data_3' mungkin berisi file grafik.

berkas 'data_2' berisi avatar kontak (dapat dipulihkan dengan mencari berdasarkan header file).

Avatar yang terdapat dalam file 'data_2':

WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
Dengan demikian, obrolan itu sendiri tidak dapat ditemukan di memori komputer, tetapi Anda dapat menemukan:

  • file multimedia;
  • dokumen yang dikirimkan melalui WhatsApp;
  • informasi tentang kontak pemilik akun.

Artefak WhatsApp di MacOS

Di MacOS Anda dapat menemukan jenis artefak WhatsApp yang mirip dengan yang ditemukan di OS Windows.

File program terletak di direktori berikut:

  • 'C:AplikasiWhatsApp.app'
  • 'C:Aplikasi._WhatsApp.app'
  • 'C:Pengguna%Profil pengguna%Preferensi Perpustakaan'
  • 'C:Pengguna%Profil pengguna%LibraryLogsWhatsApp'
  • 'C:Pengguna%Profil pengguna%PerpustakaanStatus Aplikasi TersimpanWhatsApp.savedState'
  • 'C:Pengguna%Profil pengguna%Skrip Aplikasi Perpustakaan'
  • 'C:Pengguna%Profil pengguna%LibraryApplication SupportCloudDocs'
  • 'C:Pengguna%Profil pengguna%PerpustakaanDukungan AplikasiWhatsApp.ShipIt'
  • 'C:Pengguna%Profil pengguna%LibraryContainerscom.rockysandstudio.app-for-whatsapp'
  • 'C:Pengguna%Profil pengguna% Perpustakaan Dokumen Seluler <variabel teks> Akun WhatsApp'
    Direktori ini berisi subdirektori yang namanya merupakan nomor telepon yang terkait dengan pemilik akun WhatsApp.
  • 'C:Pengguna%Profil pengguna%LibraryCachesWhatsApp.ShipIt'
    Direktori ini berisi informasi tentang instalasi program.
  • 'C:Pengguna%Profil pengguna%GambarsiPerpustakaan Foto.photolibraryMasters', 'C:Users%Profil pengguna%PicturesiPhoto Library.photolibraryThumbnails'
    Direktori ini berisi file layanan program, termasuk foto dan thumbnail kontak WhatsApp.
  • 'C:Pengguna%Profil pengguna%LibraryCachesWhatsApp'
    Direktori ini berisi beberapa database SQLite yang digunakan untuk cache data.
  • 'C:Pengguna%Profil pengguna%PerpustakaanDukungan AplikasiWhatsApp'
    Direktori ini berisi beberapa subdirektori:

    WhatsApp di telapak tangan Anda: di mana dan bagaimana Anda dapat menemukan artefak forensik?
    Di katalog 'C:Pengguna%Profil pengguna%PerpustakaanDukungan AplikasiWhatsAppCache' ada file 'data_0', 'data_1', 'data_2', 'data_3' dan file dengan nama 'F_*******' (di mana * adalah angka dari 0 hingga 9). Untuk informasi tentang informasi apa yang terkandung dalam file-file ini, lihat Artefak WhatsApp di Windows.

    Di katalog 'C:Pengguna%Profil pengguna%PerpustakaanDukungan AplikasiWhatsAppIndexedDB' mungkin berisi file multimedia (file tidak memiliki ekstensi).

    berkas 'proses-utama.log' berisi informasi tentang pengoperasian program WhatsApp.

sumber

  1. Analisis forensik WhatsApp Messenger pada smartphone Android, oleh Cosimo Anglano, 2014.
  2. Whatsapp Forensik: Eksplorasi sistem berkas dan basis data pada aplikasi Android dan iOS oleh Ahmad Pratama, 2014.

Dalam artikel berikut dalam seri ini:

Dekripsi database WhatsApp terenkripsiArtikel yang akan memberikan informasi tentang bagaimana kunci enkripsi WhatsApp dihasilkan dan contoh praktis yang menunjukkan cara mendekripsi database terenkripsi aplikasi ini.
Mengekstrak data WhatsApp dari penyimpanan cloudSebuah artikel di mana kami akan memberi tahu Anda data WhatsApp apa yang disimpan di cloud dan menjelaskan metode untuk mengambil data ini dari penyimpanan cloud.
Ekstraksi Data WhatsApp: Contoh PraktisArtikel yang akan menjelaskan langkah demi langkah program apa saja dan cara mengekstrak data WhatsApp dari berbagai perangkat.

Sumber: www.habr.com

Tambah komentar