WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?

Kung gusto mong malaman kung anong mga uri ng WhatsApp forensic artifact ang umiiral sa iba't ibang operating system at kung saan eksaktong matatagpuan ang mga ito, ito ang lugar para sa iyo. Ang artikulong ito ay mula sa isang espesyalista sa Group-IB Computer Forensics Laboratory Igor Mikhailov nagsisimula ng serye ng mga post tungkol sa WhatsApp forensics at kung anong impormasyon ang makukuha mula sa pagsusuri sa device.

Agad nating tandaan na ang iba't ibang mga operating system ay nag-iimbak ng iba't ibang uri ng mga artifact ng WhatsApp, at kung ang isang mananaliksik ay makakapag-extract ng ilang uri ng data ng WhatsApp mula sa isang device, hindi ito nangangahulugan na ang mga katulad na uri ng data ay maaaring makuha mula sa isa pang device. Halimbawa, kung aalisin ang isang unit ng system na nagpapatakbo ng Windows OS, malamang na hindi makikita ang mga chat sa WhatsApp sa mga disk nito (maliban sa mga backup na kopya ng mga iOS device, na makikita sa parehong mga drive). Ang pag-agaw ng mga laptop at mobile device ay magkakaroon ng sariling katangian. Pag-usapan natin ito nang mas detalyado.

Mga artifact ng WhatsApp sa Android device

Upang ma-extract ang mga artifact ng WhatsApp mula sa isang Android device, ang mananaliksik ay dapat magkaroon ng mga karapatan ng superuser ('ugat') sa device na sinisiyasat o kung hindi man ay makapag-extract ng pisikal na memory dump ng device, o ng file system nito (halimbawa, gamit ang mga kahinaan sa software ng isang partikular na mobile device).

Ang mga file ng application ay matatagpuan sa memorya ng telepono sa seksyon kung saan naka-save ang data ng user. Bilang isang tuntunin, pinangalanan ang seksyong ito 'userdata'. Ang mga subdirectory at mga file ng programa ay matatagpuan sa landas: '/data/data/com.whatsapp/'.

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Ang mga pangunahing file na naglalaman ng mga forensic artifact ng WhatsApp sa Android OS ay mga database 'wa.db' ΠΈ 'msgstore.db'.

Sa database 'wa.db' naglalaman ng kumpletong listahan ng contact ng isang user ng WhatsApp, kabilang ang numero ng telepono, display name, timestamp at anumang iba pang impormasyong ibinigay habang nagrerehistro para sa WhatsApp. file 'wa.db' matatagpuan sa daanan: '/data/data/com.whatsapp/databases/' at may sumusunod na istraktura:

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Ang pinaka-kagiliw-giliw na mga talahanayan sa database 'wa.db' para sa mananaliksik ay:

  • 'wa_contacts'
    Ang talahanayang ito ay naglalaman ng impormasyon sa pakikipag-ugnayan: WhatsApp contact id, impormasyon ng katayuan, pangalan ng display ng user, mga timestamp, atbp.

    Hitsura ng talahanayan:

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
    Istraktura ng talahanayan

    Pangalan ng field Halaga
    _id record sequence number (sa SQL table)
    jid WhatsApp contact ID, nakasulat sa format na <phone number>@s.whatsapp.net
    is_whatsapp_user naglalaman ng '1' kung ang contact ay tumutugma sa isang aktwal na gumagamit ng WhatsApp, '0' kung hindi
    katayuan naglalaman ng tekstong ipinapakita sa katayuan ng contact
    status_timestamp naglalaman ng timestamp sa Unix Epoch Time (ms) na format
    numero numero ng telepono na nauugnay sa contact
    raw_contact_id makipag-ugnayan sa serial number
    display_name contact display name
    phone_type uri ng telepono
    phone_label label na nauugnay sa contact number
    unseen_msg_count bilang ng mga mensaheng ipinadala ng isang contact ngunit hindi binasa ng tatanggap
    photo_ts naglalaman ng timestamp sa Unix Epoch Time na format
    thumb_ts naglalaman ng timestamp sa Unix Epoch Time na format
    photo_id_timestamp naglalaman ng timestamp sa Unix Epoch Time (ms) na format
    ibinigay na pangalan tumutugma ang value ng field sa 'display_name' para sa bawat contact
    wa_name Pangalan ng contact sa WhatsApp (ipinapakita ang pangalan na tinukoy sa profile ng contact)
    sort_name pangalan ng contact na ginagamit sa mga pagpapatakbo ng pag-uuri
    palayaw nickname ng contact sa WhatsApp (ipinapakita ang nickname na tinukoy sa profile ng contact)
    kompanya kumpanya (ang kumpanyang tinukoy sa profile ng contact ay ipinapakita)
    pamagat pamagat (Ms./Mr.; title na naka-configure sa contact profile ay ipinapakita)
    ginalaw bias
  • 'sqlite_sequence'
    Ang talahanayang ito ay naglalaman ng impormasyon tungkol sa bilang ng mga contact;
  • 'android_metadata'
    Ang talahanayang ito ay naglalaman ng impormasyon tungkol sa lokalisasyon ng wika ng WhatsApp.

Sa database 'msgstore.db' naglalaman ng impormasyon tungkol sa mga ipinadalang mensahe, tulad ng contact number, text message, status ng mensahe, timestamp, mga detalye ng mga nailipat na file na kasama sa mga mensahe, atbp. file 'msgstore.db' matatagpuan sa daanan: '/data/data/com.whatsapp/databases/' at may sumusunod na istraktura:

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Ang pinaka-kagiliw-giliw na mga talahanayan sa file 'msgstore.db' para sa mananaliksik ay:

  • 'sqlite_sequence'
    Ang talahanayang ito ay naglalaman ng pangkalahatang impormasyon tungkol sa database na ito, tulad ng kabuuang bilang ng mga mensaheng nakaimbak, ang kabuuang bilang ng mga chat, atbp.

    Hitsura ng talahanayan:

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?

  • 'message_fts_content'
    Naglalaman ng teksto ng mga ipinadalang mensahe.

    Hitsura ng talahanayan:

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?

  • 'mensahe'
    Ang talahanayang ito ay naglalaman ng impormasyon tulad ng numero ng contact, text ng mensahe, status ng mensahe, mga timestamp, impormasyon tungkol sa mga nailipat na file na kasama sa mga mensahe.

    Hitsura ng talahanayan:

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
    Istraktura ng talahanayan

    Pangalan ng field Halaga
    _id record sequence number (sa SQL table)
    key_remote_jid WhatsApp ID ng kasosyo sa komunikasyon
    key_from_me direksyon ng mensahe: '0' – papasok, '1' – papalabas
    key_id natatanging identifier ng mensahe
    katayuan status ng mensahe: '0' – naihatid, '4' – naghihintay sa server, '5' – natanggap sa destinasyon, '6' – control message, '13' – mensaheng binuksan ng tatanggap (basahin)
    kailangan_itulak ay may value na '2' kung ito ay isang broadcast message, kung hindi man ay naglalaman ng '0'
    data text ng mensahe (kapag ang parameter na 'media_wa_type' ay '0')
    timestamp naglalaman ng timestamp sa Unix Epoch Time (ms) na format, ang halaga ay kinuha mula sa orasan ng device
    media_url naglalaman ng URL ng inilipat na file (kapag ang parameter na 'media_wa_type' ay '1', '2', '3')
    media_mime_type Uri ng MIME ng inilipat na file (kapag ang parameter na 'media_wa_type' ay katumbas ng '1', '2', '3')
    media_wa_type uri ng mensahe: '0' - text, '1' - graphic file, '2' - audio file, '3' - video file, '4' - contact card, '5' - geodata
    media_size laki ng inilipat na file (kapag ang parameter na 'media_wa_type' ay '1', '2', '3')
    media_name pangalan ng inilipat na file (kapag ang parameter na 'media_wa_type' ay '1', '2', '3')
    media_caption Naglalaman ng mga salitang 'audio', 'video' para sa mga katumbas na halaga ng parameter na 'media_wa_type' (kapag ang parameter na 'media_wa_type' ay '1', '3')
    media_hash base64 na naka-encode na hash ng ipinadalang file, na kinakalkula gamit ang HAS-256 algorithm (kapag ang parameter na 'media_wa_type' ay katumbas ng '1', '2', '3')
    media_duration tagal sa mga segundo para sa media file (kapag ang 'media_wa_type' ay '1', '2', '3')
    pinagmulan ay may value na '2' kung ito ay isang broadcast message, kung hindi man ay naglalaman ng '0'
    latitud geodata: latitude (kapag ang parameter na 'media_wa_type' ay '5')
    longitude geodata: longitude (kapag ang parameter na 'media_wa_type' ay '5')
    thumb_image impormasyon ng serbisyo
    remote_resource Sender ID (para sa mga panggrupong chat lang)
    natanggap_timestamp oras ng pagtanggap, naglalaman ng timestamp sa Unix Epoch Time (ms) na format, ang halaga ay kinuha mula sa orasan ng device (kapag ang parameter na 'key_from_me' ay may '0', '-1' o iba pang halaga)
    send_timestamp hindi ginagamit, kadalasan ay may value na '-1'
    receipt_server_timestamp oras na natanggap ng central server, naglalaman ng timestamp sa Unix Epoch Time (ms) na format, ang halaga ay kinukuha mula sa device clock (kapag ang 'key_from_me' na parameter ay may '1', '-1' o iba pang value
    receipt_device_timestamp oras na natanggap ang mensahe ng isa pang subscriber, naglalaman ng timestamp sa Unix Epoch Time (ms) na format, kinukuha ang value mula sa device clock (kapag ang parameter na 'key_from_me' ay may '1', '-1' o ibang value
    read_device_timestamp oras ng pagbubukas (pagbasa) ng mensahe, naglalaman ng timestamp sa Unix Epoch Time (ms) na format, ang halaga ay kinuha mula sa orasan ng device
    playing_device_timestamp oras ng pag-playback ng mensahe, naglalaman ng timestamp sa Unix Epoch Time (ms) na format, ang halaga ay kinuha mula sa orasan ng device
    raw_data thumbnail ng inilipat na file (kapag ang parameter na 'media_wa_type' ay '1' o '3')
    recipient_count bilang ng mga tatanggap (para sa mga mensahe sa broadcast)
    kalahok_hash ginagamit kapag nagpapadala ng mga mensahe gamit ang geodata
    naka-star hindi ginagamit
    quoted_row_id hindi kilala, kadalasang naglalaman ng value na '0'
    nabanggit_jids hindi ginagamit
    multicast_id hindi ginagamit
    ginalaw bias

    Ang listahan ng mga field na ito ay hindi kumpleto. Para sa iba't ibang bersyon ng WhatsApp, maaaring mayroon o wala ang ilang field. Bukod pa rito, maaaring may mga field 'media_enc_hash', 'edit_version', 'payment_transaction_id' at iba pa

  • 'messages_thumbnails'
    Ang talahanayang ito ay naglalaman ng impormasyon tungkol sa mga inilipat na larawan at timestamp. Sa column na 'timestamp', ang oras ay nakasaad sa Unix Epoch Time (ms) na format.
  • 'chat_list'
    Ang talahanayang ito ay naglalaman ng impormasyon tungkol sa mga chat.

    Hitsura ng talahanayan:

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?

Gayundin, kapag sinusuri ang WhatsApp sa isang mobile device na nagpapatakbo ng Android, dapat mong bigyang pansin ang mga sumusunod na file:

  • talaksan 'msgstore.db.cryptXX' (kung saan ang XX ay isa o dalawang digit mula 0 hanggang 12, halimbawa, msgstore.db.crypt12). Naglalaman ng naka-encrypt na backup ng mga mensahe sa WhatsApp (backup file msgstore.db). Mga file) 'msgstore.db.cryptXX' matatagpuan sa daanan: '/data/media/0/WhatsApp/Databases/' (virtual SD card), '/mnt/sdcard/WhatsApp/Databases/ (pisikal na SD card)'.
  • talaksan 'susi'. Naglalaman ng cryptographic key. Matatagpuan sa kahabaan ng landas: '/data/data/com.whatsapp/files/'. Ginagamit upang i-decrypt ang mga naka-encrypt na backup ng WhatsApp.
  • talaksan 'com.whatsapp_preferences.xml'. Naglalaman ng impormasyon tungkol sa iyong profile sa WhatsApp account. Ang file ay matatagpuan sa kahabaan ng landas: '/data/data/com.whatsapp/shared_prefs/'.

    fragment ng nilalaman ng 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> (имя Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°)
    … 
  • talaksan 'registration.RegisterPhone.xml'. Naglalaman ng impormasyon tungkol sa numero ng telepono na nauugnay sa WhatsApp account. Ang file ay matatagpuan sa kahabaan ng landas: '/data/data/com.whatsapp/shared_prefs/'.

    Mga nilalaman ng file

    <?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>
  • talaksan 'axolotl.db'. Naglalaman ng mga cryptographic key at iba pang data na kinakailangan upang matukoy ang may-ari ng account. Matatagpuan sa kahabaan ng landas: '/data/data/com.whatsapp/databases/'.
  • talaksan 'chatsettings.db'. Naglalaman ng impormasyon sa pagsasaayos ng application.
  • talaksan 'wa.db'. Naglalaman ng mga detalye ng contact. Isang napaka-interesante (mula sa forensic na aspeto) at nagbibigay-kaalaman na database. Maaari itong maglaman ng detalyadong impormasyon tungkol sa mga tinanggal na contact.

Kailangan mo ring bigyang pansin ang mga sumusunod na direktoryo:

  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Images/'. Naglalaman ng mga inilipat na graphic na file.
  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Voice Notes/'. Naglalaman ng mga voice message sa mga .OPUS na format na file.
  • Directory '/data/data/com.whatsapp/cache/Mga Larawan sa Profile/'. Naglalaman ng mga graphic na file - mga larawan ng mga contact.
  • Directory '/data/data/com.whatsapp/files/Avatars/'. Naglalaman ng mga graphic na file – mga thumbnail na larawan ng mga contact. Ang mga file na ito ay may extension na '.j' ngunit gayunpaman ay JPEG (JPG) na mga file ng imahe.
  • Directory '/data/data/com.whatsapp/files/Avatars/'. Naglalaman ng mga graphic na file - isang larawan at isang thumbnail ng larawang itinakda bilang avatar ng may-ari ng account.
  • Directory '/data/data/com.whatsapp/files/Logs/'. Naglalaman ng log ng pagpapatakbo ng program (file 'whatsapp.log') at mga backup na kopya ng mga log ng pagpapatakbo ng program (mga file na may mga pangalan sa format na whatsapp-yyyy-mm-dd.1.log.gz).

Mga WhatsApp Log File:

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
fragment ng journal2017-01-10 09:37:09.757 LL_I D [524:WhatsApp Worker #1] missedcallnotification/init count:0 timestamp:0
2017-01-10 09:37:09.758 LL_I D [524:WhatsApp Worker #1] missedcallnotification/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] password file nawawala o hindi nababasa
2017-01-10 09:37:09.782 LL_I D [1:main] statistics Mga Text Message: 59 naipadala, 82 natanggap / Mga Mensahe sa Media: 1 naipadala (0 bytes), 0 natanggap (9850158 bytes) / Mga Offline na Mensahe: 81 natanggap ( 19522 msec average na pagkaantala) / Message Service: 116075 bytes na naipadala, 211729 bytes na natanggap / Voip Calls: 1 papalabas na tawag, 0 papasok na tawag, 2492 bytes na ipinadala, 1530 bytes na natanggap / Google Drive: 0 byte na natanggap, 0 byte na natanggap / Roaming: byte na naipadala, 1524 byte na natanggap / Kabuuang Data: 1826 byte na naipadala, 118567 byte na natanggap
2017-01-10 09:37:09.785 LL_I D [1:pangunahing] 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/bersyon 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:pangunahing] msgstore/canquery 517 | oras na ginugol:8
2017-01-10 09:37:09.848 LL_I D [529:WhatsApp Worker #3] media-state-manager/refresh-media-state/internal-storage available:1,345,622,016 total:5,687,922,688

  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Audio/'. Naglalaman ng natanggap na mga audio file.
  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Audio/Sent/'. Naglalaman ng mga ipinadalang audio file.
  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Images/'. Naglalaman ng mga resultang graphic na file.
  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Images/Ipinadala/'. Naglalaman ng ipinadalang mga graphic na file.
  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Video/'. Naglalaman ng mga natanggap na video file.
  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Video/Naipadala/'. Naglalaman ng mga ipinadalang video file.
  • Directory '/data/media/0/WhatsApp/Media/WhatsApp Profile Photos/'. Naglalaman ng mga graphic na file na nauugnay sa may-ari ng WhatsApp account.
  • Upang makatipid ng espasyo sa memorya sa iyong Android smartphone, maaaring iimbak ang ilang data ng WhatsApp sa isang SD card. Sa SD card, sa root directory, mayroong isang direktoryo 'WhatsApp', kung saan matatagpuan ang mga sumusunod na artifact ng program na ito:

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?

  • Directory '.Ibahagi' ('/mnt/sdcard/WhatsApp/.Share/'). Naglalaman ng mga kopya ng mga file na ibinahagi sa iba pang mga gumagamit ng WhatsApp.
  • Directory '.basura' ('/mnt/sdcard/WhatsApp/.trash/'). Naglalaman ng mga tinanggal na file.
  • Directory 'mga database' ('/mnt/sdcard/WhatsApp/Databases/'). Naglalaman ng mga naka-encrypt na backup. Maaari silang i-decrypt kung ang file ay naroroon 'susi', kinuha mula sa memorya ng nasuri na aparato.

    Mga file na matatagpuan sa isang subdirectory 'mga database':

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?

  • Directory 'Kalahating' ('/mnt/sdcard/WhatsApp/Media/'). Naglalaman ng mga subdirectory 'WallPaper', 'WhatsApp Audio', 'Mga Larawan sa WhatsApp', 'Mga Larawan sa Profile ng WhatsApp', 'WhatsApp Video', 'WhatsApp Voice Notes', na naglalaman ng natanggap at naipadalang mga multimedia file (mga graphics file, video file, voice message, mga larawang nauugnay sa profile ng may-ari ng WhatsApp account, mga wallpaper).
  • Directory 'Mga Larawan sa Profile' ('/mnt/sdcard/WhatsApp/Mga Larawan sa Profile/'). Naglalaman ng mga graphic na file na nauugnay sa profile ng may-ari ng WhatsApp account.
  • Minsan ay maaaring mayroong direktoryo sa SD card 'mga file' ('/mnt/sdcard/WhatsApp/Files/'). Ang direktoryo na ito ay naglalaman ng mga file na nag-iimbak ng mga setting ng program at mga kagustuhan ng user.

Mga tampok ng pag-iimbak ng data sa ilang modelo ng mga mobile device

Ang ilang mga modelo ng mga mobile device na tumatakbo sa Android OS ay maaaring mag-imbak ng mga artifact ng WhatsApp sa ibang lokasyon. Ito ay dahil sa mga pagbabago sa storage space ng data ng application ng system software ng mobile device. Halimbawa, ang mga mobile device ng Xiaomi ay may function para sa paglikha ng pangalawang workspace ("SecondSpace"). Kapag na-activate ang function na ito, nagbabago ang lokasyon ng data. Kaya, kung sa isang regular na mobile device na tumatakbo sa Android OS user data ay naka-imbak sa direktoryo '/data/user/0/' (na isang sanggunian sa karaniwan '/data/data/'), pagkatapos ay sa pangalawang workspace application data ay naka-imbak sa direktoryo '/data/user/10/'. Iyon ay, gamit ang halimbawa ng lokasyon ng file 'wa.db':

  • sa isang regular na smartphone na nagpapatakbo ng Android OS: /data/user/0/com.whatsapp/databases/wa.db' (na katumbas '/data/data/com.whatsapp/databases/wa.db');
  • sa pangalawang workspace ng Xiaomi smartphone: '/data/user/10/com.whatsapp/databases/wa.db'.

Mga artifact ng WhatsApp sa iOS device

Hindi tulad ng Android OS, sa iOS WhatsApp application data ay inililipat sa isang backup na kopya (iTunes backup). Samakatuwid, ang pagkuha ng data mula sa application na ito ay hindi nangangailangan ng pag-extract ng file system o paglikha ng isang pisikal na memory dump ng device na sinisiyasat. Karamihan sa mga nauugnay na impormasyon ay nakapaloob sa database 'ChatStorage.sqlite', na matatagpuan sa kahabaan ng landas: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/' (sa ilang mga programa, lumilitaw ang landas na ito bilang 'AppDomainGroup-group.net.whatsapp.WhatsApp.shared').

Kaayusan 'ChatStorage.sqlite':

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Ang pinakakaalaman na mga talahanayan sa database ng 'ChatStorage.sqlite' ay 'ZWAMESSAGE' ΠΈ 'ZWAMEDIAIITEM'.

Hitsura ng mesa 'ZWAMESSAGE':

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Istraktura ng talahanayan na 'ZWAMESSAGE'

Pangalan ng field Halaga
Z_PK record sequence number (sa SQL table)
Z_ENT table identifier, may value na '9'
Z_OPT hindi kilala, kadalasang naglalaman ng mga halaga mula sa '1' hanggang '6'
ZCHILDMESSAGESDELIVEREDCOUNT hindi kilala, kadalasang naglalaman ng value na '0'
ZCHILDMESSAGESPLAYEDCOUNT hindi kilala, kadalasang naglalaman ng value na '0'
ZCHILDMESSAGESREADCOUNT hindi kilala, kadalasang naglalaman ng value na '0'
ZDATAITEMVERSION hindi alam, kadalasang naglalaman ng value na '3', marahil ay isang tagapagpahiwatig ng text message
ZDOCID hindi alam
ZENCRETRYCOUNT hindi kilala, kadalasang naglalaman ng value na '0'
ZFILTEREDRECIPIENTCOUNT hindi kilala, kadalasang naglalaman ng mga value na '0', '2', '256'
ZISFROMME direksyon ng mensahe: '0' – papasok, '1' – papalabas
ZMESSAGEERRORSATUS katayuan ng paghahatid ng mensahe. Kung ang mensahe ay ipinadala/natanggap, ito ay may halagang '0'
ZMESSAGETYPE uri ng mensaheng ipinapadala
ZSORT hindi alam
ZSPOTLIGHSTATUS hindi alam
ZSTARRED hindi kilala, hindi ginagamit
ZCHATSESSION hindi alam
ZGROUPMEMBER hindi kilala, hindi ginagamit
ZLASTSESSION hindi alam
ZMEDIAIITEM hindi alam
ZMESSAGEINFO hindi alam
ZPARENTMESSAGE hindi kilala, hindi ginagamit
ZMESSAGEDATE timestamp sa OS X Epoch Time format
ZSENTDATE oras na ipinadala ang mensahe sa OS X Epoch Time na format
ZFROMJID WhatsApp Sender ID
ZMEDIASECTIONID naglalaman ng taon at buwan kung saan ipinadala ang media file
ZPHASH hindi kilala, hindi ginagamit
ZPUSHPAME pangalan ng contact na nagpadala ng media file sa UTF-8 na format
ZSTANZID natatanging identifier ng mensahe
ZTEXT Text ng mensahe
ZTOJID WhatsApp ID ng tatanggap
Offset bias

Hitsura ng mesa 'ZWAMEDIAIITEM':

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Istraktura ng talahanayan na 'ZWAMEDIAITEM'

Pangalan ng field Halaga
Z_PK record sequence number (sa SQL table)
Z_ENT table identifier, may value na '8'
Z_OPT hindi kilala, kadalasang naglalaman ng mga halaga mula sa '1' hanggang '3'.
ZCLOUDSTATUS naglalaman ng value na '4' kung na-load ang file.
ZFILESIZE naglalaman ng haba ng file (sa bytes) para sa mga na-download na file
ZMEDIAORIGIN hindi kilala, kadalasan ay may value na '0'
ZMOVIEDURATION tagal ng media file, para sa mga pdf file ay maaaring maglaman ng bilang ng mga pahina ng dokumento
ZMESSAGE naglalaman ng serial number (iba ang numero sa nakasaad sa column na 'Z_PK')
ZASPECTRATIO aspect ratio, hindi ginagamit, karaniwang nakatakda sa '0'
ZHACCURACY hindi kilala, kadalasan ay may value na '0'
ZLATTITUDE lapad sa mga pixel
ZLONGTITUDE taas sa pixels
ZMEDIAURLDATE timestamp sa OS X Epoch Time format
ZAUTHORNAME may-akda (para sa mga dokumento, maaaring naglalaman ng pangalan ng file)
ZCOLLECTIONNAME hindi ginagamit
ZMEDIALOCALPATH pangalan ng file (kabilang ang path) sa system file ng device
ZMEDIAURL Ang URL kung saan matatagpuan ang media file. Kung ang isang file ay inilipat mula sa isang subscriber patungo sa isa pa, ito ay na-encrypt at ang extension nito ay ipapakita bilang extension ng inilipat na file - .enc
ZTHUMBNAILLOCALPATH path sa thumbnail ng file sa system file ng device
ZTITLE header ng file
ZVCARDNAME media file hash; kapag naglilipat ng file sa isang grupo, maaaring naglalaman ito ng tagatukoy ng nagpadala
ZVCARDSTRING naglalaman ng impormasyon tungkol sa uri ng file na inililipat (halimbawa, image/jpeg); kapag naglilipat ng file sa isang grupo, maaaring naglalaman ito ng identifier ng tatanggap
ZXMPPTHUMBPATH path sa thumbnail ng file sa system file ng device
ZMEDIAKEY hindi kilala, malamang na naglalaman ng susi upang i-decrypt ang naka-encrypt na file.
ZMEDATA metadata ng ipinadalang mensahe
Ginalaw bias

Iba pang mga kagiliw-giliw na mga talahanayan ng database 'ChatStorage.sqlite' ay:

  • 'ZWAPROFILEPUSHNAME'. Tumutugma sa WhatsApp ID sa pangalan ng contact;
  • 'ZWAPROFILEPICTUREITEM'. Tumutugma sa WhatsApp ID sa contact avatar;
  • 'Z_PRIMARYKEY'. Ang talahanayan ay naglalaman ng pangkalahatang impormasyon tungkol sa database na ito, tulad ng kabuuang bilang ng mga mensaheng nakaimbak, ang kabuuang bilang ng mga chat, atbp.

Gayundin, kapag sinusuri ang WhatsApp sa isang mobile device na nagpapatakbo ng iOS, dapat mong bigyang pansin ang mga sumusunod na file:

  • talaksan 'BackedUpKeyValue.sqlite'. Naglalaman ng mga cryptographic key at iba pang data na kinakailangan upang matukoy ang may-ari ng account. Matatagpuan sa kahabaan ng landas: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • talaksan 'ContactsV2.sqlite'. Naglalaman ng impormasyon tungkol sa mga contact ng user, tulad ng buong pangalan, numero ng telepono, status ng contact (sa text form), WhatsApp ID, atbp. Matatagpuan sa kahabaan ng landas: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • talaksan 'consumer_version'. Naglalaman ng numero ng bersyon ng naka-install na WhatsApp application. Matatagpuan sa kahabaan ng landas: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • talaksan 'current_wallpaper.jpg'. Naglalaman ng kasalukuyang wallpaper sa background ng WhatsApp. Matatagpuan sa kahabaan ng landas: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/. Ginagamit ng mga mas lumang bersyon ng application ang file 'wallpaper', na matatagpuan sa kahabaan ng landas: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'.
  • talaksan 'blockedcontacts.dat'. Naglalaman ng impormasyon tungkol sa mga naka-block na contact. Matatagpuan sa kahabaan ng landas: /private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/.
  • talaksan 'pw.dat'. Naglalaman ng naka-encrypt na password. Matatagpuan sa kahabaan ng landas: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/'.
  • talaksan 'net.whatsapp.WhatsApp.plist' (o file 'group.net.whatsapp.WhatsApp.shared.plist'). Naglalaman ng impormasyon tungkol sa iyong profile sa WhatsApp account. Ang file ay matatagpuan sa kahabaan ng landas: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Library/Preferences/'.

Mga nilalaman ng file na 'group.net.whatsapp.WhatsApp.shared.plist' WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Kailangan mo ring bigyang pansin ang mga sumusunod na direktoryo:

  • Directory '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Media/Profile/'. Naglalaman ng mga thumbnail ng mga contact, grupo (mga file na may extension .thumb), contact avatar, WhatsApp account owner avatar (file 'Photo.jpg').
  • Directory '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Message/Media/'. Naglalaman ng mga multimedia file at mga thumbnail ng mga ito
  • Directory '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'. Naglalaman ng log ng pagpapatakbo ng programa (file 'calls.log') at mga backup na kopya ng mga log ng pagpapatakbo ng program (file 'calls.backup.log').
  • Directory '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/stickers/'. Naglalaman ng mga sticker (mga file sa format '.webp').
  • Directory '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/Logs/'. Naglalaman ng mga log ng pagpapatakbo ng programa.

Mga artifact ng WhatsApp sa Windows

Ang mga artifact ng WhatsApp sa Windows ay matatagpuan sa ilang lugar. Una sa lahat, ito ay mga direktoryo na naglalaman ng mga executable at auxiliary program file (para sa Windows 8/10):

  • 'C: Program Files (x86)WhatsApp'
  • 'C:Users%User profile% AppDataLocalWhatsApp'
  • 'C:Users%User profile% AppDataLocalVirtualStore Program Files (x86)WhatsApp'

Sa katalogo 'C:Users%User profile% AppDataLocalWhatsApp' ang log file ay matatagpuan 'SquirrelSetup.log', na naglalaman ng impormasyon tungkol sa pagsuri para sa mga update at pag-install ng program.

Sa katalogo 'C:Users%User profile% AppDataRoamingWhatsApp' Mayroong ilang mga subdirectory:

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
talaksan 'main-process.log' naglalaman ng impormasyon tungkol sa pagpapatakbo ng WhatsApp program.

Subdirectory 'mga database' naglalaman ng file 'Databases.db', ngunit ang file na ito ay hindi naglalaman ng anumang impormasyon tungkol sa mga chat o contact.

Ang pinaka-interesante mula sa forensic point of view ay ang mga file na matatagpuan sa direktoryo 'Cache'. Ang mga ito ay karaniwang mga file na pinangalanan 'f_*******' (kung saan ang * ay isang numero mula 0 hanggang 9) na naglalaman ng mga naka-encrypt na multimedia file at dokumento, ngunit mayroon ding mga hindi naka-encrypt na file sa kanila. Ang partikular na interes ay ang mga file 'data_0', 'data_1', 'data_2', 'data_3', na matatagpuan sa parehong subdirectory. Mga file 'data_0', 'data_1', 'data_3' naglalaman ng mga panlabas na link sa ipinadala na naka-encrypt na mga file at dokumento ng multimedia.

Halimbawa ng impormasyong nakapaloob sa file na 'data_1'WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Mag-file din 'data_3' maaaring naglalaman ng mga graphic na file.

talaksan 'data_2' naglalaman ng mga contact avatar (maaaring ibalik sa pamamagitan ng paghahanap sa pamamagitan ng mga header ng file).

Mga avatar na nakapaloob sa file 'data_2':

WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
Kaya, ang mga chat mismo ay hindi matatagpuan sa memorya ng computer, ngunit mahahanap mo ang:

  • multimedia file;
  • mga dokumento na ipinadala sa pamamagitan ng WhatsApp;
  • impormasyon tungkol sa mga contact ng may-ari ng account.

Mga artifact ng WhatsApp sa MacOS

Sa MacOS makakahanap ka ng mga uri ng mga artifact ng WhatsApp na katulad ng matatagpuan sa Windows OS.

Ang mga file ng programa ay matatagpuan sa mga sumusunod na direktoryo:

  • 'C:ApplicationsWhatsApp.app'
  • 'C:Applications._WhatsApp.app'
  • 'C:Users%User profile%LibraryPreferences'
  • 'C:Users%User profile%LibraryLogsWhatsApp'
  • 'C:Users%User profile%LibrarySaved Application StateWhatsApp.savedState'
  • 'C:Users%User profile%LibraryApplication Scripts'
  • 'C:Users%User profile%LibraryApplication SupportCloudDocs'
  • 'C:Users%User profile%LibraryApplication SupportWhatsApp.ShipIt'
  • 'C:Users%User profile%LibraryContainerscom.rockysandstudio.app-for-whatsapp'
  • 'C:Users%User profile% Library Mobile Documents <text variable> Mga WhatsApp Account'
    Ang direktoryo na ito ay naglalaman ng mga subdirectory na ang mga pangalan ay mga numero ng telepono na nauugnay sa may-ari ng WhatsApp account.
  • 'C:Users%User profile%LibraryCachesWhatsApp.ShipIt'
    Ang direktoryo na ito ay naglalaman ng impormasyon tungkol sa pag-install ng program.
  • 'C:Users%User profile%PicturesiPhoto Library.photolibraryMasters', 'C:Users%User profile%PicturesiPhoto Library.photolibraryThumbnails'
    Ang mga direktoryo na ito ay naglalaman ng mga file ng serbisyo ng programa, kabilang ang mga larawan at thumbnail ng mga contact sa WhatsApp.
  • 'C:Users%User profile%LibraryCachesWhatsApp'
    Ang direktoryo na ito ay naglalaman ng ilang mga database ng SQLite na ginagamit para sa pag-cache ng data.
  • 'C:Users%User profile%LibraryApplication SupportWhatsApp'
    Ang direktoryo na ito ay naglalaman ng ilang mga subdirectory:

    WhatsApp sa iyong palad: saan at paano ka makakahanap ng mga forensic artifact?
    Sa katalogo 'C:Users%User profile%LibraryApplication SupportWhatsAppCache' may mga file 'data_0', 'data_1', 'data_2', 'data_3' at mga file na may mga pangalan 'f_*******' (kung saan ang * ay isang numero mula 0 hanggang 9). Para sa impormasyon tungkol sa kung anong impormasyon ang nilalaman ng mga file na ito, tingnan ang WhatsApp Artifacts sa Windows.

    Sa katalogo 'C:Users%User profile%LibraryApplication SupportWhatsAppIndexedDB' maaaring naglalaman ng mga file na multimedia (walang mga extension ang mga file).

    talaksan 'main-process.log' naglalaman ng impormasyon tungkol sa pagpapatakbo ng WhatsApp program.

pinagmumulan

  1. Forensic analysis ng WhatsApp Messenger sa mga Android smartphone, ni Cosimo Anglano, 2014.
  2. Whatsapp Forensics: Eksplorasi sistema ng mga file at batayan ng data sa aplikasyon ng Android at iOS ni Ahmad Pratama, 2014.

Sa mga sumusunod na artikulo sa seryeng ito:

Pag-decryption ng mga naka-encrypt na database ng WhatsAppIsang artikulo na magbibigay ng impormasyon kung paano nabuo ang WhatsApp encryption key at mga praktikal na halimbawa na nagpapakita kung paano i-decrypt ang mga naka-encrypt na database ng application na ito.
Pag-extract ng data ng WhatsApp mula sa cloud storageIsang artikulo kung saan sasabihin namin sa iyo kung anong data ng WhatsApp ang nakaimbak sa mga ulap at naglalarawan ng mga pamamaraan para sa pagkuha ng data na ito mula sa mga imbakan ng ulap.
Pagkuha ng Data ng WhatsApp: Mga Praktikal na HalimbawaIsang artikulo na maglalarawan nang sunud-sunod kung anong mga programa at kung paano kunin ang data ng WhatsApp mula sa iba't ibang device.

Pinagmulan: www.habr.com

Magdagdag ng komento