WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?

Nëse doni të dini se çfarë lloje të artefakteve mjekoligjore WhatsApp ekzistojnë në sisteme të ndryshme operative dhe ku saktësisht mund të gjenden, atëherë ky është vendi për ju. Ky artikull është nga një specialist në Laboratorin e Forenzikës Kompjuterike Group-IB Igor Mikhailov nis një seri postimesh në lidhje me mjekësinë ligjore të WhatsApp dhe çfarë informacioni mund të nxirret nga analizimi i pajisjes.

Le të vërejmë menjëherë se sisteme të ndryshme operative ruajnë lloje të ndryshme të objekteve të WhatsApp-it dhe nëse një studiues mund të nxjerrë disa lloje të dhënash WhatsApp nga një pajisje, kjo nuk do të thotë se lloje të ngjashme të dhënash mund të nxirren nga një pajisje tjetër. Për shembull, nëse hiqet një njësi e sistemit që funksionon Windows OS, bisedat WhatsApp ndoshta nuk do të gjenden në disqet e saj (me përjashtim të kopjeve rezervë të pajisjeve iOS, të cilat mund të gjenden në të njëjtat disqe). Sekuestrimi i laptopëve dhe pajisjeve mobile do të ketë karakteristikat e veta. Le të flasim për këtë në më shumë detaje.

Artefakte WhatsApp në pajisjen Android

Për të nxjerrë artefaktet WhatsApp nga një pajisje Android, studiuesi duhet të ketë të drejta të superpërdoruesit ('rrënjë') në pajisjen nën hetim ose të jeni në gjendje të nxirrni përndryshe një deponim të memories fizike të pajisjes ose sistemit të skedarëve të saj (për shembull, duke përdorur dobësitë e softuerit të një pajisjeje celulare specifike).

Skedarët e aplikacionit ndodhen në kujtesën e telefonit në seksionin në të cilin ruhen të dhënat e përdoruesit. Si rregull, ky seksion emërtohet 'të dhënat e përdoruesit'. Nëndrejtoritë dhe skedarët e programit ndodhen përgjatë shtegut: '/data/data/com.whatsapp/'.

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Skedarët kryesorë që përmbajnë artefakte mjeko-ligjore WhatsApp në sistemin operativ Android janë bazat e të dhënave 'wa.db' и 'msgstore.db'.

Në bazën e të dhënave 'wa.db' përmban listën e plotë të kontakteve të një përdoruesi WhatsApp, duke përfshirë numrin e telefonit, emrin e shfaqur, vulat kohore dhe çdo informacion tjetër të dhënë gjatë regjistrimit në WhatsApp. Skedari 'wa.db' ndodhet përgjatë rrugës: '/data/data/com.whatsapp/databases/' dhe ka strukturën e mëposhtme:

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Tabelat më interesante në bazën e të dhënave 'wa.db' për studiuesin janë:

  • 'wa_contacts'
    Kjo tabelë përmban informacionin e kontaktit: ID-në e kontaktit të WhatsApp, informacionin e statusit, emrin e shfaqur të përdoruesit, vulat kohore, etj.

    Pamja e tavolinës:

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
    Struktura e tabelës

    Emri i fushes Vlerë
    _id numri i sekuencës së regjistrimit (në tabelën SQL)
    xhid ID-ja e kontaktit të WhatsApp, e shkruar në formatin <numri i telefonit>@s.whatsapp.net
    është_whatsapp_user përmban '1' nëse kontakti korrespondon me një përdorues aktual të WhatsApp, '0' përndryshe
    status përmban tekstin e shfaqur në statusin e kontaktit
    stampa_kohore e statusit përmban një vulë kohore në formatin Unix Epoch Time (ms).
    numër numrin e telefonit të lidhur me kontaktin
    id_kontakti_ravo numri serial i kontaktit
    DISPLAY_NAME Emri i shfaqur i kontaktit
    lloji i telefonit lloji i telefonit
    etiketa_telefonit etiketa e lidhur me numrin e kontaktit
    numërimi i mesazheve të padukshme numri i mesazheve që janë dërguar nga një kontakt, por nuk janë lexuar nga marrësi
    foto_ts përmban një vulë kohore në formatin Unix Epoch Time
    thumb_ts përmban një vulë kohore në formatin Unix Epoch Time
    photo_id_stamp përmban një vulë kohore në formatin Unix Epoch Time (ms).
    emri_i dhënë vlera e fushës përputhet me 'emrin_display' për çdo kontakt
    wa_emri Emri i kontaktit WhatsApp (shfaqet emri i specifikuar në profilin e kontaktit)
    lloj_emri emri i kontaktit i përdorur në operacionet e renditjes
    Mbyll pseudonimi i kontaktit në WhatsApp (shfaqet pseudonimi i specifikuar në profilin e kontaktit)
    kompani kompania (shfaqet kompania e specifikuar në profilin e kontaktit)
    titull titulli (Znj/Z.; shfaqet titulli i konfiguruar në profilin e kontaktit)
    ofset paragjykim
  • 'sqlite_sequence'
    Kjo tabelë përmban informacione për numrin e kontakteve;
  • 'android_metadata'
    Kjo tabelë përmban informacione rreth lokalizimit të gjuhës WhatsApp.

Në bazën e të dhënave 'msgstore.db' përmban informacione rreth mesazheve të dërguara, si numri i kontaktit, teksti i mesazhit, statusi i mesazhit, vulat kohore, detajet e skedarëve të transferuar të përfshirë në mesazhe, etj. Skedari 'msgstore.db' ndodhet përgjatë rrugës: '/data/data/com.whatsapp/databases/' dhe ka strukturën e mëposhtme:

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Tabelat më interesante në skedar 'msgstore.db' për studiuesin janë:

  • 'sqlite_sequence'
    Kjo tabelë përmban informacione të përgjithshme për këtë bazë të dhënash, si numri i përgjithshëm i mesazheve të ruajtura, numri i përgjithshëm i bisedave, etj.

    Pamja e tavolinës:

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?

  • 'message_fts_content'
    Përmban tekstin e mesazheve të dërguara.

    Pamja e tavolinës:

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?

  • 'mesazhe'
    Kjo tabelë përmban informacione të tilla si numri i kontaktit, teksti i mesazhit, statusi i mesazhit, vulat kohore, informacioni rreth skedarëve të transferuar të përfshirë në mesazhe.

    Pamja e tavolinës:

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
    Struktura e tabelës

    Emri i fushes Vlerë
    _id numri i sekuencës së regjistrimit (në tabelën SQL)
    çelësi_remote_jid WhatsApp ID e partnerit të komunikimit
    çelësi_nga_unë drejtimi i mesazhit: '0' - në hyrje, '1' - në dalje
    çelësi_id identifikues unik i mesazhit
    status statusi i mesazhit: '0' - dorëzuar, '4' - në pritje në server, "5" - marrë në destinacion, "6" - mesazh kontrolli, "13" - mesazh i hapur nga marrësi (lexo)
    duhet_shtyj ka vlerën '2' nëse është një mesazh transmetues, përndryshe përmban '0'
    të dhëna teksti i mesazhit (kur parametri 'media_wa_type' është '0')
    timestamp përmban një vulë kohore në formatin Unix Epoch Time (ms), vlera merret nga ora e pajisjes
    media_url përmban URL-në e skedarit të transferuar (kur parametri 'media_wa_type' është '1', '2', '3')
    media_mime_lloji Lloji MIME i skedarit të transferuar (kur parametri 'media_wa_type' është i barabartë me '1', '2', '3')
    media_wa_type lloji i mesazhit: "0" - tekst, "1" - skedar grafik, "2" - skedar audio, "3" - skedar video, "4" - kartë kontakti, "5" - të dhëna gjeografike
    madhësia e medias madhësia e skedarit të transferuar (kur parametri 'media_wa_type' është '1', '2', '3')
    emri_media emri i skedarit të transferuar (kur parametri 'media_wa_type' është '1', '2', '3')
    titulli_media Përmban fjalët "audio", "video" për vlerat përkatëse të parametrit "media_wa_type" (kur parametri "media_wa_type" është "1", "3")
    media_hash base64 hash i koduar i skedarit të transmetuar, i llogaritur duke përdorur algoritmin HAS-256 (kur parametri 'media_wa_type' është i barabartë me '1', '2', '3')
    kohëzgjatja_media kohëzgjatja në sekonda për skedarin e medias (kur 'media_wa_type' është '1', '2', '3')
    origjinë ka vlerën '2' nëse është një mesazh transmetues, përndryshe përmban '0'
    gjerësi gjeodata: gjerësia (kur parametri 'media_wa_type' është '5')
    gjatësi gjeodata: gjatësia (kur parametri 'media_wa_type' është '5')
    thumb_image informacionin e shërbimit
    burimi i largët ID-ja e dërguesit (vetëm për bisedat në grup)
    vula_kohore e pranuar koha e marrjes, përmban një vulë kohore në formatin Unix Epoch Time (ms), vlera merret nga ora e pajisjes (kur parametri 'key_from_me' ka '0', '-1' ose vlerë tjetër)
    dërgo_vulën kohore nuk përdoret, zakonisht ka vlerën '-1'
    vula kohore e serverit të pranimit koha e marrë nga serveri qendror, përmban një vulë kohore në formatin Unix Epoch Time (ms), vlera merret nga ora e pajisjes (kur parametri 'key_from_me' ka '1', '-1' ose vlerë tjetër
    receipt_device_stamp kur mesazhi është marrë nga një pajtimtar tjetër, përmban një vulë kohore në formatin Unix Epoch Time (ms), vlera merret nga ora e pajisjes (kur parametri 'key_from_me' ka '1', '-1' ose një vlerë tjetër
    read_device_stamp koha e hapjes (leximit) të mesazhit, përmban një vulë kohore në formatin Unix Epoch Time (ms), vlera merret nga ora e pajisjes
    vula kohore_pajisja e luajtur koha e riprodhimit të mesazhit, përmban një vulë kohore në formatin Unix Epoch Time (ms), vlera merret nga ora e pajisjes
    te dhena te paperpunuara miniaturë e skedarit të transferuar (kur parametri 'media_wa_type' është '1' ose '3')
    numërimi i marrësit numri i marrësve (për mesazhet e transmetuara)
    pjesëmarrës_hash përdoret gjatë transmetimit të mesazheve me gjeodata
    luajti nuk përdoret
    cituar_row_id i panjohur, zakonisht përmban vlerën '0'
    përmendur_jids nuk përdoret
    multicast_id nuk përdoret
    ofset paragjykim

    Kjo listë e fushave nuk është shteruese. Për versione të ndryshme të WhatsApp, disa fusha mund të jenë të pranishme ose të mungojnë. Për më tepër, fusha mund të jenë të pranishme 'media_enc_hash', 'edit_version', "ID_payment_transaction" etj

  • 'messages_miniaturë'
    Kjo tabelë përmban informacione rreth imazheve të transferuara dhe vulave kohore. Në kolonën 'vula kohore', ora tregohet në formatin Unix Epoch Time (ms).
  • 'lista_chat'
    Kjo tabelë përmban informacione rreth bisedave.

    Pamja e tavolinës:

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?

Gjithashtu, kur ekzaminoni WhatsApp në një pajisje celulare me Android, duhet t'i kushtoni vëmendje skedarëve të mëposhtëm:

  • skedar 'msgstore.db.cryptXX' (ku XX është një ose dy shifra nga 0 në 12, për shembull, msgstore.db.crypt12). Përmban një kopje rezervë të koduar të mesazheve WhatsApp (skedar rezervë msgstore.db). Skedari(et) 'msgstore.db.cryptXX' ndodhet përgjatë rrugës: '/data/media/0/WhatsApp/Bazat e të dhënave/' (kartë SD virtuale), '/mnt/sdcard/WhatsApp/Bazat e të dhënave/ (kartë SD fizike)'.
  • skedar 'Celës'. Përmban një çelës kriptografik. Ndodhet përgjatë rrugës: '/data/data/com.whatsapp/files/'. Përdoret për të deshifruar kopjet rezervë të enkriptuara të WhatsApp.
  • skedar 'com.whatsapp_preferences.xml'. Përmban informacion në lidhje me profilin e llogarisë suaj WhatsApp. Skedari ndodhet përgjatë rrugës: '/data/data/com.whatsapp/shared_prefs/'.

    Fragmenti i përmbajtjes së skedarit

    <?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> (имя владельца аккаунта)
    … 
  • skedar 'registration.RegisterPhone.xml'. Përmban informacion në lidhje me numrin e telefonit të lidhur me llogarinë WhatsApp. Skedari ndodhet përgjatë rrugës: '/data/data/com.whatsapp/shared_prefs/'.

    Përmbajtja e skedarit

    <?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>
  • skedar 'axolotl.db'. Përmban çelësa kriptografikë dhe të dhëna të tjera që janë të nevojshme për të identifikuar pronarin e llogarisë. Ndodhet përgjatë rrugës: '/data/data/com.whatsapp/databases/'.
  • skedar 'chatsettings.db'. Përmban informacionin e konfigurimit të aplikacionit.
  • skedar 'wa.db'. Përmban detajet e kontaktit. Një bazë të dhënash shumë interesante (nga aspekti mjeko-ligjor) dhe informative. Mund të përmbajë informacion të detajuar në lidhje me kontaktet e fshira.

Ju gjithashtu duhet t'i kushtoni vëmendje drejtorive të mëposhtme:

  • Drejtoria '/data/media/0/WhatsApp/Media/Imazhet e WhatsApp/'. Përmban skedarë grafikë të transferuar.
  • Drejtoria '/data/media/0/WhatsApp/Media/WhatsApp Voice Notes/'. Përmban mesazhe zanore në skedarë të formatit .OPUS.
  • Drejtoria '/data/data/com.whatsapp/cache/Profile Pictures/'. Përmban skedarë grafikë - imazhe të kontakteve.
  • Drejtoria '/data/data/com.whatsapp/files/Avatars/'. Përmban skedarë grafikë – imazhe miniaturë të kontakteve. Këta skedarë kanë një shtesë '.j' por megjithatë janë skedarë imazhi JPEG (JPG).
  • Drejtoria '/data/data/com.whatsapp/files/Avatars/'. Përmban skedarë grafikë - një imazh dhe një miniaturë të imazhit të vendosur si avatar nga pronari i llogarisë.
  • Drejtoria '/data/data/com.whatsapp/files/Logs/'. Përmban regjistrin e funksionimit të programit (skedari 'whatsapp.log') dhe kopje rezervë të regjistrave të funksionimit të programit (skedarë me emra në formatin whatsapp-vvvv-mm-dd.1.log.gz).

Skedarët e regjistrit të WhatsApp:

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Fragment ditar2017-01-10 09:37:09.757 LL_I D [524:WhatsApp Worker #1] njoftimi i telefonatës së humbur/numërimi fillestar:0 vula kohore:0
2017-01-10 09:37:09.758 LL_I D [524:WhatsApp Worker #1] njoftimi i telefonatës së humbur/përditësimi anuloni vërtetë
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] skedari i fjalëkalimit mungon ose është i palexueshëm
2017-01-10 09:37:09.782 LL_I D [1:main] statistika Mesazhe me tekst: 59 të dërguara, 82 të pranuara / Mesazhe mediatike: 1 dërguar (0 bytes), 0 pranuar (9850158 bytes) / Mesazhe jashtë linje: 81 të pranuara ( 19522 msec mesatare vonesë) / Shërbimi i mesazheve: 116075 bajt të dërguar, 211729 bajt të pranuar / Thirrje Voip: 1 telefonata dalëse, 0 telefonata hyrëse, 2492 bajte të dërguara, 1530 bajte të marra / Google Drive: 0 bajtë të dërguar, 0 bajte të pranuara / Roam bajt të dërguara, 1524 bajte të marra / Të dhënat totale: 1826 bajtë të dërguar, 118567 bajtë të pranuar
2017-01-10 09:37:09.785 LL_I D [1:main] media-state-manager/refresh-media-state/writable-media
2017-01-10 09:37:09.806 LL_I D [1:main] app-init/initialize/timer/stop: 24
2017-01-10 09:37:09.811 LL_I D [1:main] msgstore/checkhealth
2017-01-10 09:37:09.817 LL_I D [1:main] msgstore/checkhealth/journal/delete false
2017-01-10 09:37:09.818 LL_I D [1:main] msgstore/checkhealth/back/delete false
2017-01-10 09:37:09.818 LL_I D [1:main] msgstore/checkdb/data/data/com.whatsapp/databases/msgstore.db
2017-01-10 09:37:09.819 LL_I D [1:main] msgstore/checkdb/list _jobqueue-WhatsAppJobManager 16384 drw=011
2017-01-10 09:37:09.820 LL_I D [1:main] msgstore/checkdb/list _jobqueue-WhatsAppJobManager-journal 21032 drw=011
2017-01-10 09:37:09.820 LL_I D [1:main] msgstore/checkdb/list axolotl.db 184320 drw=011
2017-01-10 09:37:09.821 LL_I D [1:main] msgstore/checkdb/list axolotl.db-wal 436752 drw=011
2017-01-10 09:37:09.821 LL_I D [1:main] msgstore/checkdb/list axolotl.db-shm 32768 drw=011
2017-01-10 09:37:09.822 LL_I D [1:main] msgstore/checkdb/list msgstore.db 540672 drw=011
2017-01-10 09:37:09.823 LL_I D [1:main] msgstore/checkdb/list msgstore.db-wal 0 drw=011
2017-01-10 09:37:09.823 LL_I D [1:main] msgstore/checkdb/list msgstore.db-shm 32768 drw=011
2017-01-10 09:37:09.824 LL_I D [1:main] msgstore/checkdb/list wa.db 69632 drw=011
2017-01-10 09:37:09.825 LL_I D [1:main] msgstore/checkdb/list wa.db-wal 428512 drw=011
2017-01-10 09:37:09.825 LL_I D [1:main] msgstore/checkdb/list wa.db-shm 32768 drw=011
2017-01-10 09:37:09.826 LL_I D [1:main] msgstore/checkdb/list chatsettings.db 4096 drw=011
2017-01-10 09:37:09.826 LL_I D [1:main] msgstore/checkdb/list chatsettings.db-wal 70072 drw=011
2017-01-10 09:37:09.827 LL_I D [1:main] msgstore/checkdb/list chatsettings.db-shm 32768 drw=011
2017-01-10 09:37:09.838 LL_I D [1:main] msgstore/checkdb/version 1
2017-01-10 09:37:09.839 LL_I D [1:main] msgstore/canquery
2017-01-10 09:37:09.846 LL_I D [1:main] msgstore/canquery/count 1
2017-01-10 09:37:09.847 LL_I D [1:main] msgstore/canquery/timer/stop: 8
2017-01-10 09:37:09.847 LL_I D [1:main] msgstore/canquery 517 | koha e kaluar: 8
2017-01-10 09:37:09.848 LL_I D [529:WhatsApp Worker #3] media-state-manager/refresh-media-state/internal-storage dispozicion:1,345,622,016 gjithsej:5,687,922,688

  • Drejtoria '/data/media/0/WhatsApp/Media/WhatsApp Audio/'. Përmban skedarët audio të marrë.
  • Drejtoria '/data/media/0/WhatsApp/Media/WhatsApp Audio/Dërguar/'. Përmban skedarë audio të dërguar.
  • Drejtoria '/data/media/0/WhatsApp/Media/Imazhet e WhatsApp/'. Përmban skedarët grafikë që rezultojnë.
  • Drejtoria '/data/media/0/WhatsApp/Media/Imazhet e WhatsApp/Dërguar/'. Përmban skedarë grafikë të dërguar.
  • Drejtoria '/data/media/0/WhatsApp/Media/WhatsApp Video/'. Përmban skedarë video të marrë.
  • Drejtoria '/data/media/0/WhatsApp/Media/WhatsApp Video/Dërguar/'. Përmban skedarë video të dërguar.
  • Drejtoria '/data/media/0/WhatsApp/Media/Fotografitë e profilit të WhatsApp/'. Përmban skedarë grafikë të lidhur me pronarin e llogarisë WhatsApp.
  • Për të kursyer hapësirën e kujtesës në smartfonin tuaj Android, disa të dhëna WhatsApp mund të ruhen në një kartë SD. Në kartën SD, në direktorinë rrënjë, ka një direktori 'Whatsapp', ku mund të gjenden artefaktet e mëposhtme të këtij programi:

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?

  • Drejtoria '.Shpërndaje' ('/mnt/sdcard/WhatsApp/.Share/'). Përmban kopje të skedarëve që janë ndarë me përdoruesit e tjerë të WhatsApp.
  • Drejtoria '.plehra' ('/mnt/sdcard/WhatsApp/.trash/'). Përmban skedarë të fshirë.
  • Drejtoria 'Bazat e të dhënave' ('/mnt/sdcard/WhatsApp/Bazat e të dhënave/'). Përmban kopje rezervë të koduar. Ato mund të deshifrohen nëse skedari është i pranishëm 'Celës', nxjerrë nga memoria e pajisjes së analizuar.

    Skedarët e vendosur në një nëndrejtori 'Bazat e të dhënave':

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?

  • Drejtoria 'Gjysma' ('/mnt/sdcard/WhatsApp/Media/'). Përmban nëndrejtori 'Letër muri', 'WhatsApp Audio', 'Imazhet e WhatsApp', 'Fotografitë e profilit të WhatsApp', 'WhatsApp Video', 'Shënimet zanore të WhatsApp', të cilat përmbajnë skedarë multimedial të marrë dhe të transmetuar (skedarë grafikë, skedarë video, mesazhe zanore, foto të lidhura me profilin e pronarit të llogarisë WhatsApp, sfonde).
  • Drejtoria 'Fotografitë e profilit' ('/mnt/sdcard/WhatsApp/Fotot e profilit/'). Përmban skedarë grafikë të lidhur me profilin e pronarit të llogarisë WhatsApp.
  • Ndonjëherë mund të ketë një drejtori të pranishëm në kartën SD 'skedarët' ('/mnt/sdcard/WhatsApp/Files/'). Kjo direktori përmban skedarë që ruajnë cilësimet e programit dhe preferencat e përdoruesit.

Karakteristikat e ruajtjes së të dhënave në disa modele të pajisjeve mobile

Disa modele të pajisjeve celulare që përdorin sistemin operativ Android mund të ruajnë objekte të WhatsApp në një vend tjetër. Kjo është për shkak të ndryshimeve në hapësirën e ruajtjes së të dhënave të aplikacionit nga softueri i sistemit të pajisjes celulare. Për shembull, pajisjet celulare Xiaomi kanë një funksion për krijimin e një hapësire të dytë pune ("SecondSpace"). Kur ky funksion aktivizohet, vendndodhja e të dhënave ndryshon. Pra, nëse në një pajisje të zakonshme celulare që funksionon Android OS, të dhënat e përdoruesit ruhen në drejtori '/data/user/0/' (që është një referencë për të zakonshmen '/data/data/'), pastaj në hapësirën e dytë të punës të dhënat e aplikacionit ruhen në direktori '/data/user/10/'. Kjo do të thotë, duke përdorur shembullin e vendndodhjes së skedarit 'wa.db':

  • në një telefon inteligjent të zakonshëm me OS Android: /data/user/0/com.whatsapp/database/wa.db' (që është ekuivalente '/data/data/com.whatsapp/database/wa.db');
  • në hapësirën e dytë të punës të telefonit inteligjent Xiaomi: '/data/user/10/com.whatsapp/database/wa.db'.

Artefakte WhatsApp në pajisjen iOS

Ndryshe nga OS Android, në iOS të dhënat e aplikacionit WhatsApp transferohen në një kopje rezervë (iTunes rezervë). Prandaj, nxjerrja e të dhënave nga ky aplikacion nuk kërkon nxjerrjen e sistemit të skedarëve ose krijimin e një depozite memorie fizike të pajisjes nën hetim. Shumica e informacionit përkatës gjendet në bazën e të dhënave 'ChatStorage.sqlite', i cili ndodhet përgjatë shtegut: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/' (në disa programe kjo rrugë shfaqet si 'AppDomainGroup-group.net.whatsapp.WhatsApp.shared').

Strukturë 'ChatStorage.sqlite':

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Tabelat më informuese në bazën e të dhënave 'ChatStorage.sqlite' janë 'ZWAMESSAGE' и 'ZWAMEDIAITEM'.

Pamja e tavolinës 'ZWAMESSAGE':

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Struktura e tabeles 'ZWAMESSAGE'

Emri i fushes Vlerë
Z_PK numri i sekuencës së regjistrimit (në tabelën SQL)
Z_ENT identifikuesi i tabelës, ka vlerën '9'
Z_OPT i panjohur, zakonisht përmban vlera nga '1' në '6'
ZCHILDMESAGESDËRGUAR COUNT i panjohur, zakonisht përmban vlerën '0'
ZCHILDMESSAGESPLAYEDCOUNT i panjohur, zakonisht përmban vlerën '0'
ZCHILDMESSAGESREADCOUNT i panjohur, zakonisht përmban vlerën '0'
ZDATAITEMVERSION i panjohur, zakonisht përmban vlerën '3', ndoshta një tregues mesazhi me tekst
ZDOCID i panjohur
ZENCRETRY COUNT i panjohur, zakonisht përmban vlerën '0'
ZFILTEREDRECIPIENTCOUNT i panjohur, zakonisht përmban vlerat '0', '2', '256'
ZISFROMME drejtimi i mesazhit: '0' - në hyrje, '1' - në dalje
ZMESSAGEERRORSTATUS statusi i transmetimit të mesazhit. Nëse mesazhi dërgohet/merret, atëherë ai ka vlerën '0'
ZMESSAGETYPE lloji i mesazhit që transmetohet
ZSORT i panjohur
ZSPOTLIGHSTATUS i panjohur
ME yll i panjohur, i pa perdorur
ZCHATSESSION i panjohur
ZGROUPEMBER i panjohur, i pa perdorur
ZLASTSESION i panjohur
ZMEDIAITEM i panjohur
ZMESSAGEINFO i panjohur
ZPARENTMESAGE i panjohur, i pa perdorur
ZMESAGEDATE vula kohore në formatin OS X Epoch Time
ZSENTDATE koha kur mesazhi u dërgua në formatin OS X Epoch Time
ZFROMJID ID-ja e dërguesit WhatsApp
ZMEDIASEKTIONID përmban vitin dhe muajin kur është dërguar skedari mediatik
ZPHASH i panjohur, i pa perdorur
ZPUSHPAME emri i kontaktit që dërgoi skedarin mediatik në formatin UTF-8
ZSTANZID identifikues unik i mesazhit
ZTEXT Teksti i mesazhit
ZTOJID ID-ja WhatsApp e marrësit
Offset paragjykim

Pamja e tavolinës 'ZWAMEDIAITEM':

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Struktura e tabeles 'ZWAMEDIAITEM'

Emri i fushes Vlerë
Z_PK numri i sekuencës së regjistrimit (në tabelën SQL)
Z_ENT identifikuesi i tabelës, ka vlerën '8'
Z_OPT i panjohur, zakonisht përmban vlera nga '1' në '3'.
ZCLOUDSTATUS përmban vlerën '4' nëse skedari është i ngarkuar.
ZFILESIZE përmban gjatësinë e skedarit (në bajt) për skedarët e shkarkuar
ZMEDIAORIGIN i panjohur, zakonisht ka vlerën '0'
ZMOVIEDURATION kohëzgjatja e skedarit mediatik, për skedarët pdf mund të përmbajë numrin e faqeve të dokumentit
ZMESAZH përmban një numër serial (numri është i ndryshëm nga ai i treguar në kolonën "Z_PK")
ZASPECTRATIO raporti i pamjes, nuk përdoret, zakonisht vendoset në '0'
SAKTËSIA i panjohur, zakonisht ka vlerën '0'
ZLATTITUDE gjerësia në pixel
GJEGTËSIA lartësia në pixel
ZMEDIAURLDATE vula kohore në formatin OS X Epoch Time
ZAUTHORNAME autori (për dokumente, mund të përmbajë emrin e skedarit)
ZCOLLECTIONEMRI nuk përdoret
ZMEDIALOCALPATH emri i skedarit (përfshirë rrugën) në sistemin e skedarëve të pajisjes
ZMEDIAURL URL-ja ku ndodhej skedari i medias. Nëse një skedar është transferuar nga një pajtimtar në tjetrin, ai është i koduar dhe shtrirja e tij do të tregohet si zgjatja e skedarit të transferuar - .enc
ZTHUMBNAILLOCALPATH rrugën drejt miniaturës së skedarit në sistemin e skedarëve të pajisjes
ZTITLE kokën e skedarit
ZVCARDNAME hash i skedarit mediatik; kur transferoni një skedar në një grup, ai mund të përmbajë identifikuesin e dërguesit
ZVCARDSTRING përmban informacion rreth llojit të skedarit që transferohet (për shembull, imazhi/jpeg); kur transferoni një skedar në një grup, ai mund të përmbajë identifikuesin e marrësit
ZXMPPTHUMBPATH rrugën drejt miniaturës së skedarit në sistemin e skedarëve të pajisjes
ZMEDIAKEY i panjohur, ndoshta përmban çelësin për të deshifruar skedarin e koduar.
ZMETADATA meta të dhënat e mesazhit të transmetuar
Ofset paragjykim

Tabela të tjera interesante të bazës së të dhënave 'ChatStorage.sqlite' Ato janë:

  • 'ZWAPROFILEPUSHNAME'. Përputhet me WhatsApp ID me emrin e kontaktit;
  • 'ZWAPROFILEPICTUREITEM'. Përputhet WhatsApp ID me avatarin e kontaktit;
  • "Z_PRIMARYKEY". Tabela përmban informacione të përgjithshme për këtë bazë të dhënash, si numri i përgjithshëm i mesazheve të ruajtura, numri i përgjithshëm i bisedave, etj.

Gjithashtu, kur ekzaminoni WhatsApp në një pajisje celulare me iOS, duhet t'i kushtoni vëmendje skedarëve të mëposhtëm:

  • skedar 'BackedUpKeyValue.sqlite'. Përmban çelësa kriptografikë dhe të dhëna të tjera që janë të nevojshme për të identifikuar pronarin e llogarisë. Ndodhet përgjatë rrugës: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • skedar 'ContactsV2.sqlite'. Përmban informacione rreth kontakteve të përdoruesit, si emri i plotë, numri i telefonit, statusi i kontaktit (në formë teksti), ID-ja e WhatsApp, etj. Ndodhet përgjatë rrugës: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • skedar 'versioni_konsumator'. Përmban numrin e versionit të aplikacionit të instaluar WhatsApp. Ndodhet përgjatë rrugës: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • skedar 'current_wallpaper.jpg'. Përmban sfondin aktual të WhatsApp. Ndodhet përgjatë rrugës: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/. Versionet e vjetra të aplikacionit përdorin skedarin 'letër-muri', i cili ndodhet përgjatë shtegut: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'.
  • skedar 'blockedcontacts.dat'. Përmban informacion rreth kontakteve të bllokuara. Ndodhet përgjatë rrugës: /private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/.
  • skedar 'pw.dat'. Përmban një fjalëkalim të koduar. Ndodhet përgjatë rrugës: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/'.
  • skedar 'net.whatsapp.WhatsApp.plist' (ose skedar 'group.net.whatsapp.WhatsApp.shared.plist'). Përmban informacion në lidhje me profilin e llogarisë suaj WhatsApp. Skedari ndodhet përgjatë rrugës: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Library/Preferences/'.

Përmbajtja e skedarit 'group.net.whatsapp.WhatsApp.shared.plist' WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Ju gjithashtu duhet t'i kushtoni vëmendje drejtorive të mëposhtme:

  • Drejtoria '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Media/Profile/'. Përmban fotografi të kontakteve, grupeve (skedarë me shtesë .gishti i madh), avatarët e kontaktit, avatari i pronarit të llogarisë WhatsApp (skedar 'Photo.jpg').
  • Drejtoria '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Message/Media/'. Përmban skedarë multimedial dhe miniaturat e tyre
  • Drejtoria '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'. Përmban regjistrin e funksionimit të programit (skedar 'calls.log') dhe kopje rezervë të regjistrave të funksionimit të programit (skedar 'calls.backup.log').
  • Drejtoria '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/stickers/'. Përmban ngjitëse (skedarë në format '.webp').
  • Drejtoria '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/Logs/'. Përmban regjistrat e funksionimit të programit.

Artefakte WhatsApp në Windows

Artefaktet e WhatsApp në Windows mund të gjenden në disa vende. Para së gjithash, këto janë drejtori që përmbajnë skedarë programi të ekzekutueshëm dhe ndihmës (për Windows 8/10):

  • 'C: Skedarët e Programit (x86)WhatsApp'
  • 'C:Përdoruesit%Profili i përdoruesit% AppDataLocalWhatsApp'
  • 'C:Përdoruesit%Profili i përdoruesit% Skedarët e programit AppDataLocalVirtualStore (x86)WhatsApp'

Në katalog 'C:Përdoruesit%Profili i përdoruesit% AppDataLocalWhatsApp' skedari log ndodhet 'SquirrelSetup.log', i cili përmban informacione rreth kontrollit për përditësime dhe instalimit të programit.

Në katalog 'C:Përdoruesit%Profili i përdoruesit% AppDataRoamingWhatsApp' Ka disa nëndrejtori:

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
skedar 'main-process.log' përmban informacione rreth funksionimit të programit WhatsApp.

Nëndirektoria 'bazat e të dhënave' përmban një skedar "Bazat e të dhënave.db", por ky skedar nuk përmban asnjë informacion rreth bisedave ose kontakteve.

Më interesantët nga pikëpamja mjeko-ligjore janë skedarët e vendosur në drejtori 'Cache'. Këto janë në thelb skedarë të emërtuar 'f_********' (ku * është një numër nga 0 në 9) që përmban skedarë dhe dokumente multimediale të enkriptuara, por midis tyre ka edhe skedarë të pakriptuar. Me interes të veçantë janë dosjet 'të dhënat_0', 'të dhënat_1', 'të dhënat_2', 'të dhënat_3', i vendosur në të njëjtin nëndrejtori. Skedarët 'të dhënat_0', 'të dhënat_1', 'të dhënat_3' përmbajnë lidhje të jashtme për skedarët dhe dokumentet multimediale të enkriptuara të transmetuara.

Shembull i informacionit që përmban skedari 'data_1'WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Gjithashtu skedari 'të dhënat_3' mund të përmbajë skedarë grafikë.

skedar 'të dhënat_2' përmban avatarët e kontakteve (mund të rikthehen duke kërkuar sipas titujve të skedarëve).

Avatarët që gjenden në skedar 'të dhënat_2':

WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
Kështu, vetë bisedat nuk mund të gjenden në kujtesën e kompjuterit, por mund të gjeni:

  • skedarë multimedial;
  • dokumente të transmetuara përmes WhatsApp;
  • informacion në lidhje me kontaktet e pronarit të llogarisë.

Artifakte WhatsApp në MacOS

Në MacOS mund të gjeni lloje të artefakteve WhatsApp të ngjashme me ato që gjenden në Windows OS.

Skedarët e programit ndodhen në drejtoritë e mëposhtme:

  • 'C:ApplicationsWhatsApp.app'
  • 'C:Applications._WhatsApp.app'
  • "C:Përdoruesit%Profili i përdoruesit%Preferencat e Bibliotekës"
  • 'C:Përdoruesit%Profili i përdoruesit%LibraryLogsWhatsApp'
  • 'C:Përdoruesit%Profili i përdoruesit%LibrarySaved Application StateWhatsApp.savedState'
  • "C:Përdoruesit%Profili i përdoruesit%Skriptet e aplikacionit të Bibliotekës"
  • "C:Përdoruesit%Profili i përdoruesit%Mbështetja e aplikacionit të LibraryCloudDocs"
  • 'C:Përdoruesit%Profili i përdoruesit%Përkrahja e aplikacionit të BibliotekësWhatsApp.ShipIt'
  • 'C:Përdoruesit%Profili i përdoruesit%LibraryContainerscom.rockysandstudio.app-for-whatsapp'
  • 'C:Përdoruesit%Profili i përdoruesit% Dokumentet celulare të Bibliotekës <variabli i tekstit> Llogaritë WhatsApp'
    Ky direktori përmban nëndrejtori, emrat e të cilëve janë numra telefoni të lidhur me pronarin e llogarisë WhatsApp.
  • 'C:Përdoruesit%Profili i përdoruesit%LibraryCachesWhatsApp.ShipIt'
    Kjo direktori përmban informacione rreth instalimit të programit.
  • 'C:Përdoruesit%Profili i përdoruesit%PicturesiPhoto Library.photolibraryMasters', 'C:Përdoruesit%Profili i përdoruesit%PicturesiPhoto Library.photolibraryThumbnails'
    Këto drejtori përmbajnë skedarë shërbimi të programit, duke përfshirë fotot dhe fotografitë e kontakteve të WhatsApp.
  • 'C:Përdoruesit%Profili i përdoruesit%LibraryCachesWhatsApp'
    Kjo direktori përmban disa baza të dhënash SQLite që përdoren për ruajtjen e të dhënave.
  • 'C:Përdoruesit%Profili i përdoruesit%Përkrahja e aplikacionit të BibliotekësWhatsApp'
    Kjo direktori përmban disa nëndrejtori:

    WhatsApp në pëllëmbën e dorës: ku dhe si mund të gjeni artefakte mjekoligjore?
    Në katalog 'C:Përdoruesit%Profili i përdoruesit%Mbështetja e aplikacionit të BibliotekësWhatsAppCache' ka dosje 'të dhënat_0', 'të dhënat_1', 'të dhënat_2', 'të dhënat_3' dhe skedarë me emra 'f_********' (ku * është një numër nga 0 në 9). Për informacion në lidhje me informacionin që përmbajnë këta skedarë, shihni Artifaktet e WhatsApp në Windows.

    Në katalog "C:Përdoruesit%Profili i përdoruesit%Mbështetja e aplikacionit të LibraryWhatsAppIndexedDB" mund të përmbajë skedarë multimedialë (skedarët nuk kanë shtesë).

    skedar 'main-process.log' përmban informacione rreth funksionimit të programit WhatsApp.

burime

  1. Analiza mjeko-ligjore e WhatsApp Messenger në telefonat inteligjentë Android, nga Cosimo Anglano, 2014.
  2. Whatsapp Forensics: Eksplorasi sistemi i të dhënave bazë dhe aplikimi i Android dhe iOS nga Ahmad Pratama, 2014.

Në artikujt e mëposhtëm të kësaj serie:

Deshifrimi i bazave të të dhënave të koduara të WhatsAppNjë artikull që do të ofrojë informacion se si gjenerohet çelësi i enkriptimit WhatsApp dhe shembuj praktikë që tregojnë se si të deshifrohen bazat e të dhënave të enkriptuara të këtij aplikacioni.
Nxjerrja e të dhënave WhatsApp nga ruajtja e resë kompjuterikeNjë artikull në të cilin do t'ju tregojmë se cilat të dhëna WhatsApp ruhen në retë dhe do të përshkruajmë metodat për marrjen e këtyre të dhënave nga depozitat e reve kompjuterike.
Nxjerrja e të dhënave të WhatsApp: Shembuj praktikëNjë artikull që do të përshkruajë hap pas hapi se cilat programe dhe si të nxjerrin të dhënat e WhatsApp nga pajisje të ndryshme.

Burimi: www.habr.com

Shto një koment