Agar siz turli xil operatsion tizimlarda WhatsApp sud-tibbiy artefaktlarining qanday turlari mavjudligini va ularni aniq qaerdan topish mumkinligini bilmoqchi bo'lsangiz, bu siz uchun joy. Ushbu maqola Group-IB kompyuter sud-tibbiyot laboratoriyasi mutaxassisidan olingan Igor Mixaylov WhatsApp kriminalistikasi va qurilmani tahlil qilish orqali qanday ma'lumotlarni olish mumkinligi haqida bir qator postlarni boshlaydi.
Darhol shuni ta'kidlaymizki, turli xil operatsion tizimlar WhatsApp artefaktlarining har xil turlarini saqlaydi va agar tadqiqotchi bir qurilmadan ma'lum turdagi WhatsApp ma'lumotlarini ajratib olishi mumkin bo'lsa, bu o'xshash turdagi ma'lumotlarni boshqa qurilmadan olish mumkin degani emas. Misol uchun, agar Windows OS bilan ishlaydigan tizim bloki o'chirilgan bo'lsa, WhatsApp chatlari uning disklarida topilmasligi mumkin (iOS qurilmalarining zaxira nusxalari bundan mustasno, ularni xuddi shu drayverlarda topish mumkin). Noutbuklar va mobil qurilmalarni olib qo'yish o'ziga xos xususiyatlarga ega bo'ladi. Keling, bu haqda batafsilroq gaplashaylik.
Android qurilmasidagi WhatsApp artefaktlari
Android qurilmasidan WhatsApp artefaktlarini olish uchun tadqiqotchi superfoydalanuvchi huquqlariga ega boʻlishi kerak ("ildiz") oʻrganilayotgan qurilmada yoki boshqa yoʻl bilan qurilma xotirasi yoki uning fayl tizimidan jismoniy chiqindini chiqarib olish imkoniyatiga ega boʻling (masalan, maʼlum bir mobil qurilmaning dasturiy zaifliklaridan foydalanish).
Ilova fayllari telefon xotirasida foydalanuvchi ma'lumotlari saqlanadigan bo'limda joylashgan. Qoida tariqasida, bu bo'lim nomlanadi "foydalanuvchi ma'lumotlari". Kichik kataloglar va dastur fayllari yo'lda joylashgan: '/data/data/com.whatsapp/'.
Android operatsion tizimida WhatsApp sud-tibbiy artefaktlarini o'z ichiga olgan asosiy fayllar ma'lumotlar bazalaridir 'wa.db' и 'msgstore.db'.
Ma'lumotlar bazasida 'wa.db' WhatsApp foydalanuvchisining to'liq kontaktlar ro'yxati, jumladan telefon raqami, displey nomi, vaqt belgilari va WhatsApp-da ro'yxatdan o'tish paytida taqdim etilgan boshqa ma'lumotlarni o'z ichiga oladi. Fayl 'wa.db' yo'l bo'ylab joylashgan: '/data/data/com.whatsapp/databases/' va quyidagi tuzilishga ega:
Ma'lumotlar bazasidagi eng qiziqarli jadvallar 'wa.db' tadqiqotchi uchun:
- 'wa_contacts'
Ushbu jadvalda kontakt ma'lumotlari mavjud: WhatsApp kontakt identifikatori, holat ma'lumotlari, foydalanuvchi nomi, vaqt belgilari va boshqalar.Jadval ko'rinishi:
Jadval tuzilishiMaydon nomi ma'no _id rekord tartib raqami (SQL jadvalida) jid <telefon raqami>@s.whatsapp.net formatida yozilgan WhatsApp kontakt identifikatori is_whatsapp_foydalanuvchisi Agar kontakt haqiqiy WhatsApp foydalanuvchisiga to'g'ri kelsa, unda "1", aks holda "0" mavjud holat kontakt holatida ko'rsatilgan matnni o'z ichiga oladi status_vaqt tamg'asi Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud soni aloqa bilan bog'liq telefon raqami raw_contact_id aloqa seriya raqami DISPLAY_NAME kontaktning ko'rsatiladigan nomi telefon_turi telefon turi telefon_yorlig'i aloqa raqami bilan bog'langan yorliq ko'rinmagan_xabarlar soni kontakt tomonidan yuborilgan, ammo qabul qiluvchi tomonidan o'qilmagan xabarlar soni photo_ts Unix Epoch Time formatida vaqt tamg'asi mavjud thumb_ts Unix Epoch Time formatida vaqt tamg'asi mavjud photo_id_vaqt tamg'asi Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud ismi maydon qiymati har bir kontakt uchun "display_name" ga mos keladi wa_name WhatsApp kontakt nomi (kontakt profilida ko'rsatilgan ism ko'rsatiladi) sort_name saralash operatsiyalarida ishlatiladigan kontakt nomi taxallus WhatsApp-dagi kontaktning taxallusi (aloqa profilida ko'rsatilgan taxallus ko'rsatiladi) kompaniya kompaniya (aloqa profilida ko'rsatilgan kompaniya ko'rsatiladi) sarlavha sarlavha (Xonim/janob; kontakt profilida sozlangan sarlavha ko'rsatiladi) ofset tarafkashlik - 'sqlite_sequence'
Ushbu jadvalda kontaktlar soni haqidagi ma'lumotlar mavjud; - 'android_metadata'
Ushbu jadval WhatsApp tilini mahalliylashtirish haqida ma'lumotni o'z ichiga oladi.
Ma'lumotlar bazasida 'msgstore.db' yuborilgan xabarlar haqidagi ma'lumotlarni o'z ichiga oladi, masalan, aloqa raqami, xabar matni, xabar holati, vaqt belgilari, xabarlarga kiritilgan uzatilgan fayllar tafsilotlari va boshqalar. Fayl 'msgstore.db' yo'l bo'ylab joylashgan: '/data/data/com.whatsapp/databases/' va quyidagi tuzilishga ega:
Fayldagi eng qiziqarli jadvallar 'msgstore.db' tadqiqotchi uchun:
- 'sqlite_sequence'
Ushbu jadvalda ushbu ma'lumotlar bazasi haqida umumiy ma'lumotlar mavjud, masalan, saqlangan xabarlarning umumiy soni, umumiy suhbatlar soni va boshqalar.Jadval ko'rinishi:
- 'message_fts_content'
Yuborilgan xabarlar matnini o'z ichiga oladi.Jadval ko'rinishi:
- "xabarlar"
Ushbu jadvalda aloqa raqami, xabar matni, xabar holati, vaqt belgilari, xabarlarga kiritilgan uzatilgan fayllar haqidagi ma'lumotlar mavjud.Jadval ko'rinishi:
Jadval tuzilishiMaydon nomi ma'no _id rekord tartib raqami (SQL jadvalida) key_remote_jid Aloqa hamkorining WhatsApp identifikatori kalit_mendan xabar yo'nalishi: "0" - kiruvchi, "1" - chiquvchi key_id noyob xabar identifikatori holat xabar holati: “0” – yetkazib berildi, “4” – serverda kutilmoqda, “5” – belgilangan joyda qabul qilindi, “6” – nazorat xabari, “13” – qabul qiluvchi tomonidan ochilgan xabar (o‘qilgan) need_push agar u translyatsiya xabari bo'lsa, "2" qiymatiga ega, aks holda "0" ni o'z ichiga oladi ma'lumotlar xabar matni ('media_wa_type' parametri '0' bo'lganda) TIMESTAMP Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud, qiymat qurilma soatidan olinadi media_url o'tkazilgan faylning URL manzilini o'z ichiga oladi ('media_wa_type' parametri '1', '2', '3' bo'lsa) media_mime_type O'tkazilgan faylning MIME turi ('media_wa_type' parametri '1', '2', '3' ga teng bo'lganda) media_wa_type xabar turi: "0" - matn, "1" - grafik fayl, "2" - audio fayl, "3" - video fayl, "4" - kontakt kartasi, "5" - geoma'lumotlar media_size uzatilgan fayl hajmi ('media_wa_type' parametri '1', '2', '3' bo'lsa) media_nomi uzatilgan fayl nomi ('media_wa_type' parametri '1', '2', '3' bo'lsa) media_taglavha "media_wa_type" parametrining mos qiymatlari uchun "audio", "video" so'zlarini o'z ichiga oladi ("media_wa_type" parametri "1", "3" bo'lsa) media_hash HAS-64 algoritmi yordamida hisoblangan uzatilgan faylning base256 kodlangan xeshi ('media_wa_type' parametri '1', '2', '3' ga teng bo'lganda) media_davomiyligi media faylning davomiyligi ('media_wa_type' '1', '2', '3' bo'lganda) kelib chiqishi agar u translyatsiya xabari bo'lsa, "2" qiymatiga ega, aks holda "0" ni o'z ichiga oladi kenglik geoma'lumotlar: kenglik ('media_wa_type' parametri '5' bo'lganda) uzunlik geoma'lumotlar: uzunlik ('media_wa_type' parametri '5' bo'lganda) bosh barmoq_tasvir xizmat ma'lumotlari masofaviy_resurs Yuboruvchi identifikatori (faqat guruh chatlari uchun) qabul qilingan_vaqt tamg'asi qabul qilish vaqti, Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud, qiymat qurilma soatidan olinadi ('key_from_me' parametri '0', '-1' yoki boshqa qiymatga ega bo'lganda) yuborish_vaqt tamg'asi ishlatilmaydi, odatda "-1" qiymatiga ega receipt_server_vaqt tamg'asi markaziy server tomonidan qabul qilingan vaqt, Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud, qiymat qurilma soatidan olinadi ("key_from_me" parametri "1", "-1" yoki boshqa qiymatga ega bo'lganda receipt_device_vaqt tamg'asi xabar boshqa abonent tomonidan qabul qilingan vaqt, Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud, qiymat qurilma soatidan olinadi ("key_from_me" parametri "1", "-1" yoki boshqa qiymatga ega bo'lganda o'qish_qurilma_vaqt tamg'asi xabarni ochish (o'qish) vaqti, Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud, qiymat qurilma soatidan olinadi o'ynalgan_device_vaqt tamg'asi xabarni ijro etish vaqti, Unix Epoch Time (ms) formatida vaqt tamg'asi mavjud, qiymat qurilma soatidan olinadi xom_ma'lumotlar uzatilgan faylning eskizi ("media_wa_type" parametri "1" yoki "3" bo'lsa) qabul qiluvchilar_soni qabul qiluvchilar soni (efir xabarlari uchun) ishtirokchi_hash geoma'lumotlar bilan xabarlarni uzatishda ishlatiladi yulduzi ishlatilmayapti quoted_row_id noma'lum, odatda "0" qiymatini o'z ichiga oladi eslatilgan_jidlar ishlatilmayapti multicast_id ishlatilmayapti ofset tarafkashlik Ushbu sohalar ro'yxati to'liq emas. WhatsApp-ning turli versiyalari uchun ba'zi maydonlar mavjud yoki yo'q bo'lishi mumkin. Bundan tashqari, maydonlar mavjud bo'lishi mumkin 'media_enc_hash', 'edit_version', 'to'lov_transaction_id' va hokazo.
- 'messages_thumbnails'
Ushbu jadvalda uzatilgan tasvirlar va vaqt belgilari haqida ma'lumotlar mavjud. "Vaqt tamg'asi" ustunida vaqt Unix Epoch Time (ms) formatida ko'rsatilgan. - 'chat_list'
Ushbu jadval chatlar haqida ma'lumotni o'z ichiga oladi.Jadval ko'rinishi:
Bundan tashqari, Android operatsion tizimida ishlaydigan mobil qurilmada WhatsApp-ni tekshirishda siz quyidagi fayllarga e'tibor berishingiz kerak:
- Fayl 'msgstore.db.cryptXX' (bu erda XX 0 dan 12 gacha bo'lgan bir yoki ikkita raqam, masalan, msgstore.db.crypt12). WhatsApp xabarlarining shifrlangan zaxira nusxasini o'z ichiga oladi (zaxira fayli msgstore.db). Fayllar) 'msgstore.db.cryptXX' yo'l bo'ylab joylashgan: '/ma'lumotlar/media/0/WhatsApp/Ma'lumotlar bazalari/' (virtual SD karta), '/mnt/sdcard/WhatsApp/ma'lumotlar bazalari/ (jismoniy SD karta)'.
- Fayl "kalit". Kriptografik kalitni o'z ichiga oladi. Yo'l bo'ylab joylashgan: '/data/data/com.whatsapp/files/'. Shifrlangan WhatsApp zaxira nusxalarini ochish uchun foydalaniladi.
- Fayl 'com.whatsapp_preferences.xml'. WhatsApp hisob qaydnomangiz profili haqidagi ma'lumotlarni o'z ichiga oladi. Fayl yo'l bo'ylab joylashgan: '/data/data/com.whatsapp/shared_prefs/'.
Fayl mazmuni fragmenti
<?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> (имя владельца аккаунта) …
- Fayl 'registration.RegisterPhone.xml'. WhatsApp hisobi bilan bog'langan telefon raqami haqida ma'lumotni o'z ichiga oladi. Fayl yo'l bo'ylab joylashgan: '/data/data/com.whatsapp/shared_prefs/'.
Fayl tarkibi
<?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>
- Fayl 'axolotl.db'. Hisob egasini aniqlash uchun zarur bo'lgan kriptografik kalitlar va boshqa ma'lumotlarni o'z ichiga oladi. Yo'l bo'ylab joylashgan: '/data/data/com.whatsapp/databases/'.
- Fayl 'chatsettings.db'. Ilova konfiguratsiyasi ma'lumotlarini o'z ichiga oladi.
- Fayl 'wa.db'. Kontakt ma'lumotlarini o'z ichiga oladi. Juda qiziqarli (sud-tibbiyot nuqtai nazaridan) va informatsion ma'lumotlar bazasi. Unda o'chirilgan kontaktlar haqida batafsil ma'lumot bo'lishi mumkin.
Shuningdek, siz quyidagi kataloglarga e'tibor berishingiz kerak:
- katalog '/data/media/0/WhatsApp/Media/WhatsApp Images/'. O'tkazilgan grafik fayllarni o'z ichiga oladi.
- katalog '/data/media/0/WhatsApp/Media/WhatsApp ovozli qaydlari/'. .OPUS formatidagi fayllardagi ovozli xabarlarni o'z ichiga oladi.
- katalog '/data/data/com.whatsapp/cache/Profil rasmlari/'. Grafik fayllarni o'z ichiga oladi - kontaktlarning rasmlari.
- katalog '/data/data/com.whatsapp/files/Avatars/'. Grafik fayllarni o'z ichiga oladi - kontaktlarning kichik rasmlari. Ushbu fayllar ".j" kengaytmasiga ega, ammo JPEG (JPG) tasvir fayllari.
- katalog '/data/data/com.whatsapp/files/Avatars/'. Grafik fayllarni o'z ichiga oladi - hisob egasi tomonidan avatar sifatida o'rnatilgan tasvir va eskiz.
- katalog '/data/data/com.whatsapp/files/Logs/'. U dasturning ishlash jurnalini ("whatsapp.log" fayli) va dastur operatsiyalari jurnallarining zaxira nusxalarini (whatsapp-yyyy-mm-dd.1.log.gz formatidagi nomli fayllar) o'z ichiga oladi.
WhatsApp jurnali fayllari:
Jurnal parchasi2017-01-10 09:37:09.757 LL_I D [524:WhatsApp Worker #1] o'tkazib yuborilgan qo'ng'iroqlar bildirishnomasi/init soni:0 vaqt tamg'asi:0
2017-01-10 09:37:09.758 LL_I D [524:WhatsApp ishchi #1] o'tkazib yuborilgan qo'ng'iroq bildirishnomasi/yangilanishni bekor qilish rost
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:asosiy] parol fayli yoʻq yoki oʻqib boʻlmaydi
2017-01-10 09:37:09.782 LL_I D [1:main] statistics Matnli xabarlar: 59 ta yuborildi, 82 ta qabul qilindi / Media Xabarlar: 1 ta yuborildi (0 bayt), 0 ta qabul qilindi (9850158 bayt) / Oflayn xabarlar: 81 ta qabul qilindi ( 19522 ms o'rtacha kechikish) / Xabar xizmati: 116075 bayt yuborildi, 211729 bayt qabul qilindi / Voip qo'ng'iroqlari: 1 chiquvchi qo'ng'iroq, 0 kiruvchi qo'ng'iroq, 2492 bayt yuborildi, 1530 bayt qabul qilindi / Google Drive: 0 bayt yuborildi, 0 bayt qabul qilindi / Roam bayt yuborildi, 1524 bayt qabul qilindi / Jami ma'lumotlar: 1826 bayt yuborildi, 118567 bayt qabul qilindi
2017-01-10 09:37:09.785 LL_I D [1:asosiy] media-davlat-menejeri/refresh-media-state/writable-media
2017-01-10 09:37:09.806 LL_I D [1:asosiy] ilovani ishga tushirish/initializatsiya/taymer/stop: 24
2017-01-10 09:37:09.811 LL_I D [1:asosiy] msgstore/checkhealth
2017-01-10 09:37:09.817 LL_I D [1:main] msgstore/checkhealth/jurnal/noto‘g‘rini o‘chirish
2017-01-10 09:37:09.818 LL_I D [1:main] msgstore/checkhealth/orqaga/noto'g'ri o'chirish
2017-01-10 09:37:09.818 LL_I D [1:main] msgstore/checkdb/data/data/com.whatsapp/database/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-jurnal 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:asosiy] msgstore/checkdb/versiya 1
2017-01-10 09:37:09.839 LL_I D [1:asosiy] msgstore/canquery
2017-01-10 09:37:09.846 LL_I D [1:asosiy] msgstore/canquery/count 1
2017-01-10 09:37:09.847 LL_I D [1:main] msgstore/canquery/taymer/stop: 8
2017-01-10 09:37:09.847 LL_I D [1:main] msgstore/canquery 517 | sarflangan vaqt: 8
2017-01-10 09:37:09.848 LL_I D [529:WhatsApp Worker #3] media-davlat boshqaruvchisi/yangilash-media-holat/ichki xotira mavjud: 1,345,622,016 jami: 5,687,922,688
- katalog '/data/media/0/WhatsApp/Media/WhatsApp Audio/'. Qabul qilingan audio fayllarni o'z ichiga oladi.
- katalog '/data/media/0/WhatsApp/Media/WhatsApp Audio/Yuborilgan/'. Yuborilgan audio fayllarni o'z ichiga oladi.
- katalog '/data/media/0/WhatsApp/Media/WhatsApp Images/'. Olingan grafik fayllarni o'z ichiga oladi.
- katalog '/data/media/0/WhatsApp/Media/WhatsApp rasmlari/yuborilgan/'. Yuborilgan grafik fayllarni o'z ichiga oladi.
- katalog '/data/media/0/WhatsApp/Media/WhatsApp Video/'. Qabul qilingan video fayllarni o'z ichiga oladi.
- katalog '/data/media/0/WhatsApp/Media/WhatsApp Video/Yuborilgan/'. Yuborilgan video fayllarni o'z ichiga oladi.
- katalog '/data/media/0/WhatsApp/Media/WhatsApp profil rasmlari/'. WhatsApp akkaunti egasi bilan bog'langan grafik fayllarni o'z ichiga oladi.
- Android smartfoningizda xotira maydonini tejash uchun ba'zi WhatsApp ma'lumotlarini SD-kartada saqlash mumkin. SD-kartada, ildiz katalogida katalog mavjud "WhatsApp", bu dasturning quyidagi artefaktlarini topish mumkin:
- katalog ".Ulashish" ('/mnt/sdcard/WhatsApp/.Share/'). Boshqa WhatsApp foydalanuvchilari bilan baham ko'rilgan fayllarning nusxalarini o'z ichiga oladi.
- katalog '.axlat' ('/mnt/sdcard/WhatsApp/.trash/'). O'chirilgan fayllarni o'z ichiga oladi.
- katalog "Ma'lumotlar bazalari" ('/mnt/sdcard/WhatsApp/ma'lumotlar bazalari/'). Shifrlangan zaxira nusxalarini o'z ichiga oladi. Agar fayl mavjud bo'lsa, ular shifrlanishi mumkin "kalit", tahlil qilingan qurilma xotirasidan olingan.
Kichik katalogda joylashgan fayllar "Ma'lumotlar bazalari":
- katalog "yarim" ('/mnt/sdcard/WhatsApp/Media/'). Kichik kataloglarni o'z ichiga oladi "Devor qog'ozi", "WhatsApp Audio", "WhatsApp rasmlari", "WhatsApp profil rasmlari", "WhatsApp video", "WhatsApp ovozli qaydlari"Qabul qilingan va uzatilgan multimedia fayllari (grafik fayllar, video fayllar, ovozli xabarlar, WhatsApp akkaunti egasining profili bilan bog'liq fotosuratlar, fon rasmlari) mavjud.
- katalog "Profil rasmlari" ('/mnt/sdcard/WhatsApp/Profil rasmlari/'). WhatsApp hisobi egasining profili bilan bog'langan grafik fayllarni o'z ichiga oladi.
- Ba'zan SD-kartada katalog mavjud bo'lishi mumkin 'fayllar' ('/mnt/sdcard/WhatsApp/Fayllar/'). Ushbu katalogda dastur sozlamalari va foydalanuvchi parametrlarini saqlaydigan fayllar mavjud.
Mobil qurilmalarning ayrim modellarida ma'lumotlarni saqlash xususiyatlari
Android operatsion tizimida ishlaydigan mobil qurilmalarning ayrim modellari WhatsApp artefaktlarini boshqa joyda saqlashi mumkin. Bu mobil qurilmaning tizim dasturiy ta'minoti tomonidan ilova ma'lumotlarini saqlash joyidagi o'zgarishlar bilan bog'liq. Misol uchun, Xiaomi mobil qurilmalarida ikkinchi ish maydonini ("SecondSpace") yaratish funktsiyasi mavjud. Ushbu funktsiya faollashtirilganda ma'lumotlarning joylashuvi o'zgaradi. Shunday qilib, agar Android OS bilan ishlaydigan oddiy mobil qurilmada foydalanuvchi ma'lumotlari katalogda saqlangan bo'lsa '/data/user/0/' (bu odatdagiga ishora '/ma'lumotlar/ma'lumotlar/'), keyin ikkinchi ish maydonida ilova ma'lumotlari katalogda saqlanadi '/data/user/10/'. Ya'ni, fayl joylashuvi misolidan foydalanish 'wa.db':
- Android operatsion tizimida ishlaydigan oddiy smartfonda: /data/user/0/com.whatsapp/databases/wa.db' (bu ekvivalent '/data/data/com.whatsapp/database/wa.db');
- Xiaomi smartfonining ikkinchi ish joyida: '/data/user/10/com.whatsapp/databases/wa.db'.
iOS qurilmasidagi WhatsApp artefaktlari
Android OS dan farqli o'laroq, iOS-da WhatsApp ilovasi ma'lumotlari zaxira nusxasiga (iTunes zaxira nusxasi) o'tkaziladi. Shuning uchun, ushbu ilovadan ma'lumotlarni olish fayl tizimini chiqarishni yoki tekshirilayotgan qurilmaning jismoniy xotirasini yaratishni talab qilmaydi. Tegishli ma'lumotlarning aksariyati ma'lumotlar bazasida mavjud "ChatStorage.sqlite"yo'l bo'ylab joylashgan: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/' (ba'zi dasturlarda bu yo'l sifatida ko'rinadi 'AppDomainGroup-group.net.whatsapp.WhatsApp.shared').
tuzilma "ChatStorage.sqlite":
"ChatStorage.sqlite" ma'lumotlar bazasidagi eng ma'lumotli jadvallar "ZWAMESSAGE" и 'ZWAMEDIAITEM'.
Jadval ko'rinishi "ZWAMESSAGE":
"ZWAMESSAGE" jadvalining tuzilishi
Maydon nomi | ma'no |
---|---|
Z_PK | rekord tartib raqami (SQL jadvalida) |
Z_ENT | jadval identifikatori "9" qiymatiga ega |
Z_OPT | noma'lum, odatda "1" dan "6" gacha bo'lgan qiymatlarni o'z ichiga oladi |
ZCHILDMESSAGESDELIVEREDCOUNT | noma'lum, odatda "0" qiymatini o'z ichiga oladi |
ZCHILDMESSAGESPLAYEDCOUNT | noma'lum, odatda "0" qiymatini o'z ichiga oladi |
ZCHILDMESSAGESREADCOUNT | noma'lum, odatda "0" qiymatini o'z ichiga oladi |
ZDATAITEMVERSION | noma'lum, odatda "3" qiymatini o'z ichiga oladi, ehtimol matnli xabar ko'rsatkichi |
ZDOCID | noma'lum |
ZENCRETRYCOUNT | noma'lum, odatda "0" qiymatini o'z ichiga oladi |
ZFILTEREDRECIPIENTCOUNT | noma'lum, odatda '0', '2', '256' qiymatlarini o'z ichiga oladi |
ZISFROMME | xabar yo'nalishi: "0" - kiruvchi, "1" - chiquvchi |
ZMESSAGEERRORSTATUS | xabarni uzatish holati. Agar xabar yuborilgan/qabul qilingan bo'lsa, u "0" qiymatiga ega bo'ladi. |
ZMESSAGETYPE | uzatilayotgan xabar turi |
ZSORT | noma'lum |
SPOTLIGHSTATUS | noma'lum |
ZSTARRED | noma'lum, ishlatilmaydi |
ZCHATSESSION | noma'lum |
ZGROUPMEMBER | noma'lum, ishlatilmaydi |
YAXSHI SESSIYA | noma'lum |
ZMEDIAITEM | noma'lum |
ZMESSAGEINFO | noma'lum |
ZPARENTMESSAGE | noma'lum, ishlatilmaydi |
ZMESSAGEDATE | OS X Epoch Time formatidagi vaqt tamg'asi |
ZSENTDATE | xabar OS X Epoch Time formatida yuborilgan vaqt |
ZFROMJID | WhatsApp jo'natuvchi identifikatori |
ZMEDIASECTIONID | media fayl yuborilgan yil va oyni o'z ichiga oladi |
ZPHASH | noma'lum, ishlatilmaydi |
ZPUSHPAME | media faylni UTF-8 formatida yuborgan kontaktning nomi |
ZSTANZID | noyob xabar identifikatori |
ZTEXT | Xabar matni |
ZTOJID | Qabul qiluvchining WhatsApp identifikatori |
OFSET | tarafkashlik |
Jadval ko'rinishi 'ZWAMEDIAITEM':
"ZWAMEDIAITEM" jadvalining tuzilishi
Maydon nomi | ma'no |
---|---|
Z_PK | rekord tartib raqami (SQL jadvalida) |
Z_ENT | jadval identifikatori "8" qiymatiga ega |
Z_OPT | noma'lum, odatda "1" dan "3" gacha bo'lgan qiymatlarni o'z ichiga oladi. |
ZCLOUDSTATUS | fayl yuklangan bo'lsa, "4" qiymatini o'z ichiga oladi. |
ZFILESIZE | yuklangan fayllar uchun fayl uzunligini (baytlarda) o'z ichiga oladi |
ZMEDIAORIGIN | noma'lum, odatda "0" qiymatiga ega |
ZMOVIEDURATION | media faylning davomiyligi, pdf fayllar uchun hujjatning sahifalari sonini o'z ichiga olishi mumkin |
ZMESSAGE | seriya raqamini o'z ichiga oladi (raqam "Z_PK" ustunida ko'rsatilganidan farq qiladi) |
ZASPEKTRASİYA | tomonlar nisbati, foydalanilmaydi, odatda “0” ga o‘rnatiladi |
QO'LQONLIK | noma'lum, odatda "0" qiymatiga ega |
ZLATTITUDE | piksellardagi kenglik |
ZUZINLIK | piksellardagi balandlik |
ZMEDIAURLDATE | OS X Epoch Time formatidagi vaqt tamg'asi |
ZAUTHORNAME | muallif (hujjatlar uchun fayl nomi bo'lishi mumkin) |
ZCOLLECTIONNAME | ishlatilmayapti |
ZMEDIALOCALPATH | qurilma fayl tizimidagi fayl nomi (shu jumladan yo'l). |
ZMEDIAURL | Media fayl joylashgan URL manzili. Agar fayl bir obunachidan boshqasiga o'tkazilgan bo'lsa, u shifrlangan va uning kengaytmasi uzatilgan faylning kengaytmasi sifatida ko'rsatiladi - .enc |
ZTHUMBNAILLOCALPATH | qurilma fayl tizimidagi fayl eskiziga yo'l |
ZTITLE | fayl sarlavhasi |
ZVCARDNAME | media faylning xeshi; faylni guruhga o'tkazishda u jo'natuvchi identifikatorini o'z ichiga olishi mumkin |
ZVCARDSTRING | o'tkazilayotgan fayl turi haqidagi ma'lumotlarni o'z ichiga oladi (masalan, rasm/jpeg); faylni guruhga o'tkazishda u qabul qiluvchining identifikatorini o'z ichiga olishi mumkin |
ZXMPPTHUMBPATH | qurilma fayl tizimidagi fayl eskiziga yo'l |
ZMEDIAKEY | noma'lum, ehtimol shifrlangan faylning shifrini ochish uchun kalitni o'z ichiga oladi. |
ZMETADATA | uzatilgan xabarning metama'lumotlari |
Ofset | tarafkashlik |
Boshqa qiziqarli ma'lumotlar bazasi jadvallari "ChatStorage.sqlite" quyidagilar:
- "ZWAPROFILEPUSHNAME". Kontakt nomi bilan WhatsApp ID mos keladi;
- "ZWAPROFILEPICTUREITEM". WhatsApp identifikatori kontakt avatariga mos keladi;
- "Z_PRIMARYKEY". Jadvalda ushbu ma'lumotlar bazasi haqida umumiy ma'lumotlar mavjud, masalan, saqlangan xabarlarning umumiy soni, suhbatlarning umumiy soni va boshqalar.
Bundan tashqari, iOS operatsion tizimida ishlaydigan mobil qurilmada WhatsApp-ni tekshirishda siz quyidagi fayllarga e'tibor berishingiz kerak:
- Fayl "BackedUpKeyValue.sqlite". Hisob egasini aniqlash uchun zarur bo'lgan kriptografik kalitlar va boshqa ma'lumotlarni o'z ichiga oladi. Yo'l bo'ylab joylashgan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
- Fayl "KontaktlarV2.sqlite". Foydalanuvchining kontaktlari haqidagi ma'lumotlarni o'z ichiga oladi, masalan, to'liq ism, telefon raqami, kontakt holati (matn shaklida), WhatsApp ID va boshqalar. Yo'l bo'ylab joylashgan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
- Fayl 'consumer_version'. O'rnatilgan WhatsApp ilovasining versiya raqamini o'z ichiga oladi. Yo'l bo'ylab joylashgan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
- Fayl 'current_wallpaper.jpg'. Joriy WhatsApp fon fon rasmi mavjud. Yo'l bo'ylab joylashgan: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/. Ilovaning eski versiyalari fayldan foydalanadi "fon rasmi"yo'l bo'ylab joylashgan: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'.
- Fayl 'blockedcontacts.dat'. Bloklangan kontaktlar haqidagi ma'lumotlarni o'z ichiga oladi. Yo'l bo'ylab joylashgan: /private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/.
- Fayl 'pw.dat'. Shifrlangan parolni o'z ichiga oladi. Yo'l bo'ylab joylashgan: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/'.
- Fayl 'net.whatsapp.WhatsApp.plist' (yoki fayl 'group.net.whatsapp.WhatsApp.shared.plist'). WhatsApp hisob qaydnomangiz profili haqidagi ma'lumotlarni o'z ichiga oladi. Fayl yo'l bo'ylab joylashgan: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Library/Preferences/'.
"group.net.whatsapp.WhatsApp.shared.plist" faylining mazmuni
Shuningdek, siz quyidagi kataloglarga e'tibor berishingiz kerak:
- katalog '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Media/Profile/'. Kontaktlar, guruhlar (kengaytmali fayllar) eskizlarini o'z ichiga oladi .pishka), kontakt avatarlari, WhatsApp hisob qaydnomasi egasi avatarlari (fayl 'Photo.jpg').
- katalog '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Message/Media/'. Multimedia fayllari va ularning eskizlari mavjud
- katalog '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'. Dasturning ishlash jurnalini o'z ichiga oladi (fayl 'calls.log') va dastur operatsiyalari jurnallarining zaxira nusxalari (fayl 'calls.backup.log').
- katalog '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/stickers/'. Stikerlarni o'z ichiga oladi (formatdagi fayllar '.webp').
- katalog '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/Logs/'. Dastur operatsiyalari jurnallarini o'z ichiga oladi.
Windows-dagi WhatsApp artefaktlari
Windows-dagi WhatsApp artefaktlarini bir necha joylarda topish mumkin. Birinchidan, bu bajariladigan va yordamchi dastur fayllarini o'z ichiga olgan kataloglar (Windows 8/10 uchun):
- 'C:Dastur fayllari (x86)WhatsApp'
- 'C:Foydalanuvchilar%Foydalanuvchi profili% AppDataLocalWhatsApp'
- 'C:Users%Foydalanuvchi profili% AppDataLocalVirtualStore dasturi fayllari (x86)WhatsApp'
Katalogda 'C:Foydalanuvchilar%Foydalanuvchi profili% AppDataLocalWhatsApp' jurnal fayli joylashgan 'SquirrelSetup.log', unda yangilanishlarni tekshirish va dasturni o'rnatish haqida ma'lumot mavjud.
Katalogda 'C:Foydalanuvchilar%Foydalanuvchi profili% AppDataRoamingWhatsApp' Bir nechta kichik kataloglar mavjud:
Fayl 'main-process.log' WhatsApp dasturining ishlashi haqida ma'lumotni o'z ichiga oladi.
Kichik katalog "ma'lumotlar bazalari" faylni o'z ichiga oladi 'Ma'lumotlar bazalari.db', lekin bu faylda chatlar yoki kontaktlar haqida hech qanday ma'lumot yo'q.
Sud ekspertizasi nuqtai nazaridan eng qiziqlari katalogda joylashgan fayllardir "Kesh". Bular asosan nomli fayllardir 'f_********' (bu erda * 0 dan 9 gacha bo'lgan raqam) shifrlangan multimedia fayllari va hujjatlarini o'z ichiga oladi, lekin ular orasida shifrlanmagan fayllar ham mavjud. Fayllar alohida qiziqish uyg'otadi 'ma'lumotlar_0', 'ma'lumotlar_1', 'ma'lumotlar_2', 'ma'lumotlar_3', bir xil pastki katalogda joylashgan. Fayllar 'ma'lumotlar_0', 'ma'lumotlar_1', 'ma'lumotlar_3' uzatilgan shifrlangan multimedia fayllari va hujjatlariga tashqi havolalarni o'z ichiga oladi.
“Data_1” faylidagi maʼlumotlarga misol
Shuningdek, fayl 'ma'lumotlar_3' grafik fayllarni o'z ichiga olishi mumkin.
Fayl 'ma'lumotlar_2' kontakt avatarlarini o'z ichiga oladi (fayl sarlavhalari bo'yicha qidirish orqali tiklanishi mumkin).
Fayldagi avatarlar 'ma'lumotlar_2':
Shunday qilib, chatlarning o'zini kompyuter xotirasida topib bo'lmaydi, lekin siz quyidagilarni topishingiz mumkin:
- multimedia fayllari;
- WhatsApp orqali uzatiladigan hujjatlar;
- hisob egasining kontaktlari haqida ma'lumot.
MacOS-da WhatsApp artefaktlari
MacOS-da siz Windows operatsion tizimida topilganlarga o'xshash WhatsApp artefaktlarining turlarini topishingiz mumkin.
Dastur fayllari quyidagi kataloglarda joylashgan:
- 'C:ApplicationsWhatsApp.app'
- 'C:Applications._WhatsApp.app'
- 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryPreferences'
- 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryLogsWhatsApp'
- 'C:Foydalanuvchilar%Foydalanuvchi profili%LibrarySaqlangan Ilova holatiWhatsApp.savedState'
- 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryApplication skriptlari'
- 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryApplication SupportCloudDocs'
- 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryApplication SupportWhatsApp.ShipIt'
- 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryContainerscom.rockysandstudio.app-for-whatsapp'
- 'C:Users%User profile% Library Mobile Documents <matn o'zgaruvchisi> WhatsApp hisoblari'
Ushbu katalogda nomlari WhatsApp akkaunti egasi bilan bog'langan telefon raqamlari bo'lgan kichik kataloglar mavjud. - 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryCachesWhatsApp.ShipIt'
Ushbu katalogda dasturni o'rnatish haqida ma'lumotlar mavjud. - 'C:Foydalanuvchilar%Foydalanuvchi profili%PicturesiPhoto Library.photolibraryMasters', 'C:Foydalanuvchilar%Foydalanuvchi profili%PicturesiPhoto Library.photolibraryThumbnails'
Ushbu kataloglarda dasturning xizmat fayllari, jumladan WhatsApp kontaktlarining fotosuratlari va eskizlari mavjud. - 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryCachesWhatsApp'
Ushbu katalog ma'lumotlarni keshlash uchun ishlatiladigan bir nechta SQLite ma'lumotlar bazalarini o'z ichiga oladi. - 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryApplication SupportWhatsApp'
Ushbu katalog bir nechta kichik kataloglarni o'z ichiga oladi:
Katalogda 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryApplication SupportWhatsAppCache' fayllar mavjud 'ma'lumotlar_0', 'ma'lumotlar_1', 'ma'lumotlar_2', 'ma'lumotlar_3' va nomli fayllar 'f_********' (bu erda * 0 dan 9 gacha bo'lgan raqam). Ushbu fayllarda qanday ma'lumotlar borligi haqida ma'lumot olish uchun Windows-dagi WhatsApp artefaktlariga qarang.Katalogda 'C:Foydalanuvchilar%Foydalanuvchi profili%LibraryApplication SupportWhatsAppIndexedDB' multimedia fayllarini o'z ichiga olishi mumkin (fayllarda kengaytmalar yo'q).
Fayl 'main-process.log' WhatsApp dasturining ishlashi haqida ma'lumotni o'z ichiga oladi.
Axborot manbalari
- Android smartfonlarida WhatsApp messenjerining sud-tibbiy tahlili, Cosimo Anglano tomonidan, 2014 yil.
- Whatsapp Sud-tibbiy ekspertizasi: Eksplorasi tizimi ma'lumotlar bazasida Android va iOS ilovalari tomonidan Ahmad Pratama, 2014 yil.
Ushbu turkumdagi quyidagi maqolalarda:
Shifrlangan WhatsApp ma'lumotlar bazalarining shifrini ochishWhatsApp shifrlash kaliti qanday yaratilganligi haqida ma'lumot beradigan maqola va ushbu ilovaning shifrlangan ma'lumotlar bazalarini qanday shifrlashni ko'rsatadigan amaliy misollar.
WhatsApp ma'lumotlarini bulutli xotiradan chiqarib olishBiz sizga WhatsApp ma'lumotlari bulutlarda qanday saqlanishini aytib beramiz va ushbu ma'lumotlarni bulutli omborlardan olish usullarini tasvirlab beradigan maqola.
WhatsApp ma'lumotlarini olish: amaliy misollarQanday dasturlar va turli xil qurilmalardan WhatsApp ma'lumotlarini qanday chiqarishni bosqichma-bosqich tasvirlab beradigan maqola.
Manba: www.habr.com