WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?

Jos haluat tietää, minkä tyyppisiä WhatsApp-rikosteknisiä artefakteja on eri käyttöjärjestelmissä ja mistä ne tarkalleen löytyy, olet täällä. Tällä artikkelilla Group-IB Computer Forensics Laboratoryn asiantuntija Igor Mihailov avaa sarjan postauksia WhatsAppin oikeuslääketieteellisestä tutkimuksesta ja siitä, mitä tietoja laitteen analysoinnista voidaan saada.

Huomaamme heti, että erityyppisiä WhatsApp-artefakteja on tallennettu eri käyttöjärjestelmiin, ja jos tutkija voi poimia tietyntyyppisiä WhatsApp-tietoja yhdestä laitteesta, tämä ei tarkoita ollenkaan, että samantyyppisiä tietoja voidaan poimia toisesta laitteesta. Jos esimerkiksi Windowsia käyttävä järjestelmäyksikkö poistetaan, WhatsApp-keskusteluja ei todennäköisesti löydy sen asemista (poikkeuksena ovat iOS-laitteiden varmuuskopiot, jotka löytyvät samoista asemista). Kannettavia tietokoneita ja mobiililaitteita takavarikoitaessa on joitain erityispiirteitä. Puhutaanpa tästä tarkemmin.

Whatsapp-artefaktit Android-laitteella

Voidakseen poimia WhatsApp-artefakteja Android-laitteesta tutkijalla on oltava pääkäyttäjän oikeudet ('Root').

Sovellustiedostot sijaitsevat puhelimen muistissa kohdassa, johon käyttäjätiedot on tallennettu. Yleensä tämä osio on nimeltään 'käyttäjätiedot'. Ohjelman alihakemistot ja tiedostot sijaitsevat polun varrella: '/data/data/com.whatsapp/'.

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Tärkeimmät tiedostot, jotka sisältävät WhatsApp-rikosteknisiä artefakteja Android-käyttöjärjestelmässä, ovat tietokantoja 'wa.db' и "msgstore.db".

Tietokannassa 'wa.db' sisältää täydellisen luettelon käyttäjän WhatsApp-yhteystiedoista, mukaan lukien puhelinnumeron, näyttönimen, aikaleimat ja muut tiedot, jotka annettiin rekisteröityessäsi WhatsAppiin. Tiedosto 'wa.db' sijaitsee polun varrella: '/data/data/com.whatsapp/databases/' ja sillä on seuraava rakenne:

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Tietokannan mielenkiintoisimmat taulukot 'wa.db' tutkijalle ovat:

  • 'wa_contacts'
    Tämä taulukko sisältää yhteystiedot: whatsapp-yhteyshenkilön tunnus, tilatiedot, käyttäjän näyttönimi, aikaleimat jne.

    Pöydän ulkoasu:

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
    Taulukon rakenne

    Kenttä nimi Arvo
    _ID tietueen numero (SQL-taulukossa)
    jid WhatsApp-yhteyshenkilötunnus, joka on kirjoitettu muodossa <puhelinnumero>@s.whatsapp.net
    is_whatsapp_user sisältää 1, jos yhteystieto on todellinen WhatsApp-käyttäjä, muussa tapauksessa 0
    tila sisältää yhteystiedoissa näkyvän tekstin
    status_timestamp sisältää aikaleiman Unix Epoch Time (ms) -muodossa
    numero yhteystietoon liittyvä puhelinnumero
    raw_contact_id yhteysnumero
    näyttönimi yhteyshenkilön näyttönimi
    phone_type puhelimen tyyppi
    phone_label yhteysnumeroon liittyvä tarra
    unseen_msg_count niiden viestien määrä, jotka yhteyshenkilö on lähettänyt, mutta joita vastaanottaja ei lukenut
    photo_ts sisältää aikaleiman Unix Epoch Time -muodossa
    thumb_ts sisältää aikaleiman Unix Epoch Time -muodossa
    photo_id_timestamp sisältää aikaleiman Unix Epoch Time (ms) -muodossa
    etunimi kentän arvo vastaa 'display_name' jokaiselle kontaktille
    wa_nimi Whatsapp-yhteyshenkilön nimi (näyttää nimen yhteystiedon profiilissa)
    lajin_nimi lajittelussa käytettävä yhteyshenkilön nimi
    lempinimi yhteyshenkilön WhatsApp-lempinimi (näyttää kontaktin profiilissa määritellyn lempinimen)
    yritys yritys (näyttää yhteyshenkilön profiilissa olevan yrityksen)
    otsikko otsikko (rouva/herra; näyttää kontaktin profiilissa määritetyn tittelin)
    offset puolueellisuus
  • 'sqlite_sequence'
    Tämä taulukko sisältää tiedot kontaktien määrästä;
  • "android_metadata"
    Tämä taulukko sisältää tietoja WhatsAppin kielen lokalisoinnista.

Tietokannassa "msgstore.db" sisältää tietoja siirretyistä viesteistä, kuten yhteyshenkilön numero, viestin teksti, viestin tila, aikaleimat, tiedot siirretyistä viesteissä olevista tiedostoista jne. Tiedosto "msgstore.db" sijaitsee polun varrella: '/data/data/com.whatsapp/databases/' ja sillä on seuraava rakenne:

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Tiedoston mielenkiintoisimmat taulukot "msgstore.db" tutkijalle ovat:

  • 'sqlite_sequence'
    Tämä taulukko sisältää yleisiä tietoja tästä tietokannasta, kuten tallennettujen viestien kokonaismäärän, keskustelujen kokonaismäärän ja niin edelleen.

    Pöydän ulkoasu:

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?

  • 'message_fts_content'
    Sisältää lähetettyjen viestien tekstin.

    Pöydän ulkoasu:

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?

  • 'viestit'
    Tämä taulukko sisältää tietoja, kuten yhteyshenkilön numeron, viestin tekstin, viestin tilan, aikaleimat, tiedot siirretyistä tiedostoista, jotka sisältyvät viesteihin.

    Pöydän ulkoasu:

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
    Taulukon rakenne

    Kenttä nimi Arvo
    _ID tietueen numero (SQL-taulukossa)
    key_remote_jid Viestintäkumppanin Whatsapp-tunnus
    avain_minulta viestin suunta: '0' – saapuva, ​​'1' – lähtevä
    key_id yksilöllinen viestin tunniste
    tila viestin tila: '0' - toimitettu, '4' - odottaa palvelimella, '5' - vastaanotettu määränpäähän, '6' - ohjausviesti, '13' - vastaanottajan avaama viesti (luettu)
    need_push on '2', jos se on lähetysviesti, '0' muussa tapauksessa
    tiedot viestin teksti (kun 'media_wa_type' on '0')
    aikaleima sisältää aikaleiman Unix Epoch Time (ms) -muodossa, arvo otetaan laitteen kellosta
    media_url sisältää siirrettävän tiedoston URL-osoitteen (kun media_wa_type-parametri on '1', '2', '3')
    media_mime_type Siirretyn tiedoston MIME-tyyppi (kun media_wa_type-parametri on yhtä suuri kuin '1', '2', '3')
    media_wa_type viestin tyyppi: '0' - teksti, '1' - grafiikkatiedosto, '2' - äänitiedosto, '3' - videotiedosto, '4' - yhteystietokortti, '5' - geotiedot
    media_size siirtotiedoston koko (kun 'media_wa_type' on '1', '2', '3')
    median_nimi siirrettävän tiedoston nimi (kun 'media_wa_type' on '1', '2', '3')
    media_caption Sisältää sanat 'audio', 'video' vastaaville media_wa_type-parametrin arvoille (kun media_wa_type-parametri on yhtä suuri kuin '1', '3')
    media_hash lähetetyn tiedoston base64-koodattu hajautusarvo, joka on laskettu HAS-256-algoritmilla (kun media_wa_type-parametri on yhtä suuri kuin '1', '2', '3')
    media_duration mediatiedoston kesto sekunteina (kun 'media_wa_type' on '1', '2', '3')
    alkuperä on '2', jos se on lähetysviesti, '0' muussa tapauksessa
    leveysaste geodata: leveysaste (kun 'media_wa_type' on '5')
    pituusaste geodata: pituusaste (kun media_wa_type on 5)
    peukalo_kuva palvelutiedot
    etäresurssi Lähettäjätunnus (vain ryhmäkeskustelut)
    vastaanotettu_aikaleima vastaanottoaika, sisältää aikaleiman Unix Epoch Time (ms) -muodossa, arvo otetaan laitteen kellosta (kun 'key_from_me'-parametri on '0', '-1' tai jokin muu arvo)
    lähetä_aikaleima ei käytössä, yleensä asetettu arvoon "-1"
    kuitti_palvelimen_aikaleima keskuspalvelimen vastaanottama aika, sisältää aikaleiman Unix Epoch Time (ms) -muodossa, arvo otetaan laitteen kellosta (kun 'key_from_me'-parametri on '1', '-1' tai jokin muu arvo
    kuitti_laitteen_aikaleima aika, jolloin toinen tilaaja on vastaanottanut viestin, sisältää aikaleiman Unix Epoch Time (ms) -muodossa, arvo otetaan laitteen kellosta (kun 'key_from_me'-parametrilla on '1', '-1' tai jokin muu arvo
    read_device_timestamp viestin avaus (luku) aika, sisältää aikaleiman Unix Epoch Time (ms) -muodossa, arvo otetaan laitteen kellosta
    play_device_timestamp viestin toistoaika, sisältää aikaleiman Unix Epoch Time (ms) -muodossa, arvo otetaan laitteen kellosta
    raakadata siirretyn tiedoston pikkukuva (kun media_wa_type-parametri on yhtä suuri kuin 1 tai 3)
    vastaanottajien_määrä vastaanottajien määrä (lähetysviestit)
    participant_hash käytetään lähetettäessä viestejä geodatan kanssa
    tähdellä ei käytetä
    lainattu_rivitunnus tuntematon, sisältää yleensä arvon '0'
    mainittu_jids ei käytetä
    multicast_id ei käytetä
    offset puolueellisuus

    Tämä kenttien luettelo ei ole tyhjentävä. WhatsApp-sovelluksen eri versioissa jotkin kentät voivat olla tai olla puuttumatta. Muita kenttiä voi olla "media_enc_hash", "edit_version", 'payment_transaction_id' jne.

  • 'messages_thumbnails'
    Tämä taulukko sisältää tietoja siirretyistä kuvista ja aikaleimoista. 'Aikaleima'-sarake osoittaa ajan Unix Epoch Time (ms) -muodossa.
  • 'chat_list'
    Tämä taulukko sisältää tietoja keskusteluista.

    Pöydän ulkoasu:

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?

Kun tutkit WhatsAppia Android-mobiililaitteella, sinun tulee myös kiinnittää huomiota seuraaviin tiedostoihin:

  • tiedosto "msgstore.db.cryptXX" (jossa XX on yksi tai kaksi numeroa 0-12, esimerkiksi msgstore.db.crypt12). Sisältää salatun varmuuskopion WhatsApp-viesteistä (varmuuskopiotiedosto msgstore.db). Tiedosto (tai tiedostot) "msgstore.db.cryptXX" sijaitsee polun varrella: '/data/media/0/WhatsApp/Databases/' (virtuaalinen SD-kortti), '/mnt/sdcard/WhatsApp/Databases/ (fyysinen SD-kortti)'.
  • tiedosto 'avain'. Sisältää kryptografisen avaimen. Sijaitsee matkan varrella: '/data/data/com.whatsapp/files/'. Käytetään salattujen WhatsApp-varmuuskopioiden salauksen purkamiseen.
  • tiedosto "com.whatsapp_preferences.xml". Sisältää tietoja WhatsApp-tilin profiilista. Tiedosto sijaitsee polun varrella: '/data/data/com.whatsapp/shared_prefs/'.

    Tiedoston sisältöfragmentti

    <?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> (имя владельца аккаунта)
    … 
  • tiedosto "registration.RegisterPhone.xml". Sisältää tiedot WhatsApp-tiliin liitetystä puhelinnumerosta. Tiedosto sijaitsee polun varrella: '/data/data/com.whatsapp/shared_prefs/'.

    Tiedoston sisältö

    <?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>
  • tiedosto "axolotl.db". Sisältää kryptografisia avaimia ja muita tietoja, joita tarvitaan tilin omistajan tunnistamiseen. Sijaitsee matkan varrella: '/data/data/com.whatsapp/databases/'.
  • tiedosto "chatsettings.db". Sisältää sovelluksen kokoonpanotiedot.
  • tiedosto 'wa.db'. Sisältää yhteystiedot. Erittäin mielenkiintoinen (rikosteknisesti) ja informatiivinen tietokanta. Yksityiskohtaiset tiedot poistetuista yhteystiedoista löytyvät siitä.

Sinun on myös kiinnitettävä huomiota seuraaviin hakemistoihin:

  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Images/'. Sisältää ladattuja graafisia tiedostoja.
  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Voice Notes/'. Sisältää ääniviestejä .OPUS-muotoisissa tiedostoissa.
  • Hakemisto '/data/data/com.whatsapp/cache/Profile Pictures/'. Sisältää graafisia tiedostoja - kuvia yhteystiedoista.
  • Hakemisto '/data/data/com.whatsapp/files/Avatars/'. Sisältää graafisia tiedostoja - yhteystietojen pikkukuvia. Näillä tiedostoilla on .j-tunniste, mutta ne ovat silti JPEG (JPG) -kuvatiedostoja.
  • Hakemisto '/data/data/com.whatsapp/files/Avatars/'. Sisältää grafiikkatiedostoja – kuvan ja pikkukuvan kuvasta, jonka tilin omistaja on asettanut avatariksi.
  • Hakemisto '/data/data/com.whatsapp/files/Logs/'. Sisältää ohjelman toimintalokin ("whatsapp.log"-tiedosto) ja varmuuskopiot sovelluksen toimintalokeista (tiedostot, joiden nimet ovat muodossa whatsapp-yyyy-mm-dd.1.log.gz).

Whatsapp-lokitiedostot:

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Fragmentti lehdestä2017-01-10 09:37:09.757 LL_I D [524:WhatsApp Worker #1] missedcall Notification/init count:0 timestamp:0
2017-01-10 09:37:09.758 LL_I D [524:WhatsApp Worker #1] ei-soittoilmoitus/päivitys peruuta tosi
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] salasanatiedosto puuttuu tai sitä ei voi lukea
2017-01-10 09:37:09.782 LL_I D [1:main] tilastot Tekstiviestit: 59 lähetetty, 82 vastaanotettu / Mediaviestit: 1 lähetetty (0 tavua), 0 vastaanotettu (9850158 tavua) / Offline-viestit: 81 vastaanotettu ( 19522 ms:n keskimääräinen viive) / Viestipalvelu: 116075 tavua lähetetty, 211729 tavua vastaanotettu / VoIP-puhelut: 1 lähtevä puhelu, 0 saapuvaa puhelua, 2492 tavua lähetetty, 1530 tavua vastaanotettu / Google Drive: 0 tavua lähetetty, 0 tavua vastaanotettu / Roaming tavua lähetetty, 1524 tavua vastaanotettu / Yhteensä data: 1826 tavua lähetetty, 118567 tavua vastaanotettu
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/versio 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 | käytetty aika: 8
2017-01-10 09:37:09.848 LL_I D [529:WhatsApp Worker #3] media-state-manager/refresh-media-state/internal-storage saatavilla:1,345,622,016 5,687,922,688 XNUMX XNUMX yhteensä: XNUMX XNUMX XNUMX XNUMX

  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Audio/'. Sisältää vastaanotettuja äänitiedostoja.
  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Audio/Sent/'. Sisältää lähetetyt äänitiedostot.
  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Images/'. Sisältää vastaanotetut grafiikkatiedostot.
  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Images/Sent/'. Sisältää ladattuja graafisia tiedostoja.
  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Video/'. Sisältää vastaanotettuja videotiedostoja.
  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp Video/Sent/'. Sisältää ladattuja videotiedostoja.
  • Hakemisto '/data/media/0/WhatsApp/Media/WhatsApp-profiilikuvat/'. Sisältää WhatsApp-tilin omistajaan liittyviä kuvatiedostoja.
  • Android-älypuhelimesi tilan säästämiseksi osa WhatsApp-tiedoista voidaan tallentaa SD-kortille. SD-kortilla juurihakemistossa on hakemisto "WhatsApp"josta löytyy seuraavat tämän ohjelman artefaktit:

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?

  • Hakemisto '.Jaa' ('/mnt/sdcard/WhatsApp/.Share/'). Sisältää kopioita tiedostoista, jotka on jaettu muiden WhatsApp-käyttäjien kanssa.
  • Hakemisto ".roskakori" ('/mnt/sdcard/WhatsApp/.trash/'). Sisältää poistettuja tiedostoja.
  • Hakemisto "tietokannat" ('/mnt/sdcard/WhatsApp/Databases/'). Sisältää salattuja varmuuskopioita. Niiden salaus voidaan purkaa, jos tiedosto on olemassa 'avain', purettu analysoitavan laitteen muistista.

    Tiedostot alihakemistossa "tietokannat":

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?

  • Hakemisto "Media" ('/mnt/sdcard/WhatsApp/Media/'). Sisältää alihakemistoja "Taustakuva", "WhatsApp Audio", "WhatsApp-kuvat", "WhatsApp-profiilikuvat", 'whatsapp-video', "WhatsApp Voice Notes", jotka sisältävät vastaanotettuja ja siirrettyjä multimediatiedostoja (grafiikkatiedostoja, videotiedostoja, ääniviestejä, WhatsApp-tilin omistajan profiiliin liittyviä valokuvia, taustakuvia).
  • Hakemisto 'Profiilikuvat' ('/mnt/sdcard/WhatsApp/Profile Pictures/'). Sisältää kuvatiedostoja, jotka liittyvät WhatsApp-tilin omistajan profiiliin.
  • Joskus SD-kortilla voi olla hakemisto 'tiedostot' ('/mnt/sdcard/WhatsApp/Files/'). Tämä hakemisto sisältää tiedostoja, jotka tallentavat ohjelma-asetukset ja käyttäjien asetukset.

Tiedontallennusominaisuudet joissakin mobiililaitemalleissa

Jotkin Android-mobiililaitteiden mallit voivat tallentaa WhatsApp-artefakteja eri paikkaan. Tämä johtuu mobiililaitteen järjestelmäohjelmiston muutoksesta sovellustietojen tallennustilassa. Joten esimerkiksi Xiaomi-mobiililaitteissa on toiminto toisen työtilan luomiseksi ("SecondSpace"). Kun tämä toiminto on aktivoitu, tietojen sijainti muuttuu. Joten jos tavallisessa mobiililaitteessa, jossa on Android-käyttöjärjestelmä, käyttäjätiedot tallennetaan hakemistoon '/data/user/0/' (joka on viittaus tavalliseen '/data/data/'), sitten toisessa työtilassa sovellustiedot tallennetaan hakemistoon '/data/user/10/'. Se on esimerkiksi tiedoston sijainti 'wa.db':

  • tavallisessa älypuhelimessa, jossa on Android-käyttöjärjestelmä: /data/user/0/com.whatsapp/databases/wa.db' (joka vastaa '/data/data/com.whatsapp/databases/wa.db');
  • Xiaomi-älypuhelimen toisessa työtilassa: '/data/user/10/com.whatsapp/databases/wa.db'.

Whatsapp-artefaktit iOS-laitteella

Toisin kuin Android OS, iOS:ssä WhatsApp-tiedot siirretään varmuuskopioon (iTunes-varmuuskopio). Tästä syystä tietojen purkaminen tästä sovelluksesta ei vaadi tiedostojärjestelmän purkamista tai fyysisen muistivedoksen luomista tutkittavasta laitteesta. Suurin osa asiaankuuluvasta tiedosta on tietokannassa "ChatStorage.sqlite", joka sijaitsee polun varrella: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/' (joissakin ohjelmissa tämä polku näytetään muodossa "AppDomainGroup-group.net.whatsapp.WhatsApp.shared").

Rakenne "ChatStorage.sqlite":

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
'ChatStorage.sqlite'-tietokannan informatiivisimpia ovat taulukot "ZWAMESSAGE" и "ZWAMEDIAITEM".

Pöydän ulkonäkö "ZWAMESSAGE":

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Taulukkorakenne 'ZWAMESSAGE'

Kenttä nimi Arvo
Z_PK tietueen numero (SQL-taulukossa)
Z_ENT taulukon tunniste, arvo '9'
Z_OPT tuntematon, sisältää yleensä arvoja '1' - '6'
ZCHILDMESSAGESDELIVEREDCOUNT tuntematon, sisältää yleensä arvon '0'
ZCHILDMESSAGESPLAYEDCOUNT tuntematon, sisältää yleensä arvon '0'
ZCHILDMESSAGESREADCOUNT tuntematon, sisältää yleensä arvon '0'
ZDATAITEMVERSION tuntematon, yleensä '3', luultavasti tekstiviestiosoitin
ZDOCID on tuntematon
ZENCRETRYCOUNT tuntematon, sisältää yleensä arvon '0'
ZFILTEREDRECIPIENTCOUNT tuntematon, sisältää yleensä arvot '0', '2', '256'
ZISFROMME viestin suunta: '0' – saapuva, ​​'1' – lähtevä
ZMESSAGEERRORSTATUS viestin siirron tila. Jos viesti lähetetään/vastaanotetaan, sen arvo on '0'
ZMESSAGETYPE viestin tyyppi
ZSORT on tuntematon
ZSPOTLIGHSTATUS on tuntematon
ZSTARRED tuntematon, ei käytetty
ZCHATSESSION on tuntematon
ZRYHMÄN JÄSEN tuntematon, ei käytetty
ZLASSESSION on tuntematon
ZMEDIAITEM on tuntematon
ZMESSAGEINFO on tuntematon
ZPARENTMESSAGE tuntematon, ei käytetty
ZMESSAGEDATE aikaleima OS X Epoch Time -muodossa
ZSENTDATE aika, jolloin viesti lähetettiin OS X Epoch Time -muodossa
ZFROMJID whatsapp lähettäjän tunnus
ZMEDIASECTIONID sisältää mediatiedoston lähetysvuoden ja kuukauden
ZPHASH tuntematon, ei käytetty
ZPUSHPAME sen yhteyshenkilön nimi, joka lähetti mediatiedoston UTF-8-muodossa
ZSTANZID yksilöllinen viestin tunniste
Ztext Viestin teksti
ZTOJID Vastaanottajan WhatsApp ID
OFFSET puolueellisuus

Pöydän ulkonäkö "ZWAMEDIAITEM":

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Taulukkorakenne 'ZWAMEDIAITEM'

Kenttä nimi Arvo
Z_PK tietueen numero (SQL-taulukossa)
Z_ENT taulukon tunniste, arvo '8'
Z_OPT tuntematon, sisältää yleensä arvot väliltä '1' - '3'.
ZCLOUDSTATUS sisältää arvon 4, jos tiedosto on ladattu.
ZFILESIZE sisältää ladattujen tiedostojen tiedoston pituuden (tavuina).
ZMEDIAORIGIN tuntematon, yleensä '0'
ZMOVIEDURATION mediatiedoston kesto, pdf-tiedostoissa se voi sisältää asiakirjan sivumäärän
ZVIESTI sisältää järjestysnumeron (numero eroaa Z_PK-sarakkeessa määritetystä numerosta)
ZASPECTRATIO kuvasuhde, ei käytössä, yleensä asetettu arvoon "0"
TARKKUUS tuntematon, yleensä '0'
ZLATTITUDE leveys pikseleinä
ZLONGTITUDE korkeus pikseleinä
ZMEDIAURLDATE aikaleima OS X Epoch Time -muodossa
ZAUTHORNAME tekijä (asiakirjoissa voi sisältää tiedostonimen)
ZCOLLECTIONNAME ei käytetä
ZMEDIALOCALPATH tiedoston nimi (polulla) laitteen tiedostojärjestelmässä
ZMEDIAURL URL-osoite, jossa mediatiedosto sijaitsi. Jos tiedosto siirrettiin tilaajalta toiselle, se salattiin ja sen tunniste ilmoitetaan siirretyn tiedoston tunnisteeksi - .enc
ZTHUMBNAILLOCALPATH polku tiedoston pikkukuvaan laitteen tiedostojärjestelmässä
ZTITLE tiedoston otsikko
ZVCARDNAME mediatiedoston hash, siirrettäessä tiedostoa ryhmään, se voi sisältää lähettäjän tunnuksen
ZVCARDSTRING sisältää tietoja siirrettävän tiedoston tyypistä (esimerkiksi kuva/jpeg); kun tiedosto siirretään ryhmään, se voi sisältää vastaanottajan tunnisteen
ZXMPPTHUMBPATH polku tiedoston pikkukuvaan laitteen tiedostojärjestelmässä
ZMEDIAKEY tuntematon, sisältää luultavasti avaimen salatun tiedoston salauksen purkamiseen.
ZMETADATA viestin metatiedot
Offset puolueellisuus

Muita mielenkiintoisia tietokantataulukoita "ChatStorage.sqlite" Ne ovat:

  • "ZWAPROFILEPUSHNAME". Vastaa WhatsApp-tunnusta yhteyshenkilön nimen kanssa;
  • "ZWAPROFILEPICTUREITEM". Vastaa WhatsApp-tunnusta ja yhteyshenkilön avataria;
  • 'Z_PRIMARYKEY'. Taulukko sisältää yleisiä tietoja tästä tietokannasta, kuten tallennettujen viestien kokonaismäärän, keskustelujen kokonaismäärän ja niin edelleen.

Lisäksi, kun tutkit WhatsAppia iOS-mobiililaitteella, sinun tulee kiinnittää huomiota seuraaviin tiedostoihin:

  • tiedosto "BackedUpKeyValue.sqlite". Sisältää kryptografisia avaimia ja muita tietoja, joita tarvitaan tilin omistajan tunnistamiseen. Sijaitsee matkan varrella: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • tiedosto 'ContactsV2.sqlite'. Sisältää tietoja käyttäjän yhteystiedoista, kuten koko nimen, puhelinnumeron, yhteyden tilan (tekstinä), WhatsApp ID:n jne. Sijaitsee matkan varrella: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • tiedosto 'consumer_version'. Sisältää asennetun WhatsApp-sovelluksen versionumeron. Sijaitsee matkan varrella: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/.
  • tiedosto "current_wallpaper.jpg". Sisältää nykyisen WhatsApp-taustakuvan. Sijaitsee matkan varrella: /private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/. Sovelluksen vanhat versiot käyttävät tiedostoa "taustakuva", joka sijaitsee polun varrella: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'.
  • tiedosto 'blockedcontacts.dat'. Sisältää tietoja estetyistä yhteystiedoista. Sijaitsee matkan varrella: /private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/.
  • tiedosto 'pw.dat'. Sisältää salatun salasanan. Sijaitsee matkan varrella: '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/'.
  • tiedosto "net.whatsapp.whatsapp.plist" (tai tiedosto 'group.net.whatsapp.whatsapp.shared.plist'). Sisältää tietoja WhatsApp-tilin profiilista. Tiedosto sijaitsee polun varrella: '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Library/Preferences/'.

Group.net.whatsapp.WhatsApp.shared.plist-tiedoston sisältö WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Sinun on myös kiinnitettävä huomiota seuraaviin hakemistoihin:

  • Hakemisto '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Media/Profile/'. Sisältää pikkukuvat yhteystiedoista, ryhmistä (tiedostot tunnisteella .peukalo), ota avatarit, WhatsApp-tilin omistajan avatar (tiedosto "Photo.jpg").
  • Hakemisto '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/Message/Media/'. Sisältää multimediatiedostoja ja niiden pikkukuvia
  • Hakemisto '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Documents/'. Sisältää ohjelman toimintalokin (tiedosto 'calls.log') ja varmuuskopiot ohjelman toimintalokeista (tiedosto 'calls.backup.log').
  • Hakemisto '/private/var/mobile/Applications/group.net.whatsapp.WhatsApp.shared/stickers/'. Sisältää tarroja (tiedostot sisään ".webp").
  • Hakemisto '/private/var/mobile/Applications/net.whatsapp.WhatsApp/Library/Logs/'. Sisältää ohjelman toimintalokit.

Whatsapp-artefaktit Windowsissa

WhatsApp-artefaktit Windowsissa löytyvät useista paikoista. Ensinnäkin nämä ovat hakemistot, jotka sisältävät ohjelman suoritettavat tiedostot ja aputiedostot (Windows 8/10):

  • "C:Program Files (x86)WhatsApp"
  • 'C:Users%Käyttäjäprofiili%AppDataLocalWhatsApp'
  • "C:Käyttäjät%Käyttäjäprofiili% AppDataLocalVirtualStore-ohjelmatiedostot (x86)WhatsApp"

Luettelossa 'C:Users%Käyttäjäprofiili%AppDataLocalWhatsApp' lokitiedosto sijaitsee "SquirrelSetup.log", joka sisältää tietoja päivitysten tarkistamisesta ja ohjelman asentamisesta.

Luettelossa 'C:Users%Käyttäjäprofiili%AppDataRoamingWhatsApp' alihakemistoja on useita:

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
tiedosto "main-process.log" sisältää tietoa WhatsAppin toiminnasta.

Alihakemisto "tietokannat" sisältää tiedoston 'databases.db', mutta tämä tiedosto ei sisällä mitään tietoja keskusteluista tai yhteystiedoista.

Oikeuslääketieteellisestä näkökulmasta mielenkiintoisimpia ovat hakemistossa sijaitsevat tiedostot 'Kätkö'. Pohjimmiltaan nämä ovat tiedostoja, joissa on nimiä 'f_********' (jossa * on luku 0-9), jotka sisältävät salattuja mediatiedostoja ja asiakirjoja, mutta niiden joukossa on myös salaamattomia tiedostoja. Erityisen kiinnostavat tiedostot 'data_0', 'data_1', 'data_2', 'data_3'sijaitsevat samassa alihakemistossa. Tiedostot 'data_0', 'data_1', 'data_3' sisältää ulkoisia linkkejä lähetettyihin salattuihin multimediatiedostoihin ja asiakirjoihin.

Esimerkki tiedoston "data_1" sisältämistä tiedoistaWhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Myös tiedosto 'data_3' voi sisältää graafisia tiedostoja.

tiedosto 'data_2' sisältää yhteystietojen avatareja (voidaan palauttaa etsimällä tiedostojen otsikoista).

Tiedoston sisältämät avatarit 'data_2':

WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
Näin ollen itse keskusteluja ei löydy tietokoneen muistista, mutta voit löytää:

  • multimediatiedostot;
  • WhatsAppin kautta siirretyt asiakirjat;
  • tilinomistajan yhteystiedot.

Whatsapp Artefacts MacOSissa

MacOS-käyttöjärjestelmästä löytyy samantyyppisiä WhatsApp-artefakteja kuin Windowsissa.

Ohjelmatiedostot sijaitsevat seuraavissa hakemistoissa:

  • 'C:ApplicationsWhatsApp.app'
  • 'C:Applications._WhatsApp.app'
  • "C:Users%Käyttäjäprofiili%LibraryPreferences"
  • "C:Users%Käyttäjäprofiili%LibraryLogsWhatsApp"
  • 'C:Users%Käyttäjäprofiili%LibrarySaved Application StateWhatsApp.savedState'
  • "C:Users%Käyttäjäprofiili%LibraryApplicationScripts"
  • 'C:Users%Käyttäjäprofiili%LibraryApplication SupportCloudDocs'
  • "C:Users%Käyttäjäprofiili%LibraryApplication SupportWhatsApp.ShipIt"
  • "C:Users%Käyttäjäprofiili%LibraryContainerscom.rockysandstudio.app-for-whatsapp"
  • "C:Käyttäjät%Käyttäjäprofiili% Kirjaston mobiiliasiakirjat <tekstimuuttuja> WhatsApp-tilit"
    Tämä hakemisto sisältää alihakemistoja, joiden nimet ovat WhatsApp-tilin omistajan puhelinnumeroita.
  • 'C:Users%Käyttäjäprofiili%LibraryCachesWhatsApp.ShipIt'
    Tämä hakemisto sisältää tietoja ohjelman asentamisesta.
  • 'C:Users%Käyttäjäprofiili%Pictures iPhoto Library.photolibraryMasters', 'C:Users%Käyttäjäprofiili%Pictures iPhoto Library.photolibraryThumbnails'
    Nämä hakemistot sisältävät ohjelman palvelutiedostot, mukaan lukien WhatsApp-yhteystietojen valokuvat ja pikkukuvat.
  • "C:Users%Käyttäjäprofiili%LibraryCachesWhatsApp"
    Tämä hakemisto sisältää useita SQLite-tietokantoja, joita käytetään tietojen välimuistiin.
  • "C:Users%Käyttäjäprofiili%LibraryApplication SupportWhatsApp"
    Tämä hakemisto sisältää useita alihakemistoja:

    WhatsApp kämmenelläsi: mistä ja miten löydät rikosteknisiä esineitä?
    Luettelossa "C:Users%Käyttäjäprofiili%LibraryApplication SupportWhatsAppCache" on tiedostoja 'data_0', 'data_1', 'data_2', 'data_3' ja tiedostot nimeltä 'f_********' (jossa * on luku väliltä 0-9). Lisätietoja näiden tiedostojen sisältämistä tiedoista on artikkelissa WhatsApp Artifacts Windowsissa.

    Luettelossa "C:Users%Käyttäjäprofiili%LibraryApplication SupportWhatsAppIndexedDB" saattaa sisältää multimediatiedostoja (tiedostoilla ei ole tunnisteita).

    tiedosto "main-process.log" sisältää tietoa WhatsAppin toiminnasta.

lähteet

  1. Cosimo Anglanon rikostekninen analyysi WhatsApp Messengeristä Android-älypuhelimissa, 2014.
  2. Whatsapp Forensics: Eksplorasi järjestelmä ja perustiedot Android- ja iOS-sovellukset, Ahmad Pratama, 2014.

Seuraavissa tämän sarjan artikkeleissa:

Salattujen WhatsApp-tietokantojen salauksen purkuArtikkeli, joka tarjoaa tietoa siitä, miten WhatsApp-salausavain luodaan, ja antaa käytännön esimerkkejä tämän sovelluksen salattujen perusteiden salauksen purkamisesta.
Pura WhatsApp-tiedot pilvitallennustilastaArtikkeli, jossa selitämme, mitä WhatsApp-tietoja pilvissä on tallennettu, ja kuvataan menetelmiä näiden tietojen poimimiseksi pilvitallennustilasta.
WhatsApp-tietojen purkaminen: käytännön esimerkkejäArtikkeli, joka kuvaa vaihe vaiheelta, mitä ohjelmia ja miten WhatsApp-tietoja voidaan purkaa eri laitteista.

Lähde: will.com

Lisää kommentti