Slijede razlike između dviju inačica stranice.
Starije izmjene na obje strane Starija izmjena Novija izmjena | Starija izmjena | ||
racfor_wiki:android:forenzicka_analiza_whatsapp_podataka [2020/01/08 16:21] lsopar [Razmjena poruka i enkripcija] |
racfor_wiki:android:forenzicka_analiza_whatsapp_podataka [2024/12/05 12:24] (trenutno) |
||
---|---|---|---|
Redak 1: | Redak 1: | ||
- | ==== | + | ===== Forenzička analiza podataka koje na pametnom telefonu ostavlja WhatsApp |
- | ==== − Sadržaj | + | ===== ===== |
- | * | + | ===== Sažetak ===== |
- | [[: | + | WhatsApp popularan je servis za razmjenu poruka. On na mobilnom uređaju vlasnika ostavlja tragove, moguće je pristupiti datotekama i porukama koje su spremljene na uređaju. |
- | * | + | Cilj rada je otkriti kako analizirati ono što WhatsApp sprema te ispitati mogućnost prisluškivanja poruka. |
- | [[: | + | Sve zanimljive informacije nalaze se u WhatsApp bazama podataka |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | * | + | |
- | + | ||
- | [[: | + | |
- | + | ||
- | ===== Abstract ===== | + | |
- | + | ||
- | The fact that we could even recover data from a formatted Hard Drive is kind of amazing. You choose (or not) to delete data, but it is still there, even if it is not that easy to read. | + | |
- | + | ||
- | The purpose of this paper is to understand how data recovery works. To do so, we explain the steps and some technics. We will go through how a sinister leading to a try for data recovery can occur. Then, we will see a method that could have been used by computer forensics experts in order to find traces. To finish, we will mention methods to definitely erase data from Hard Drives to avoid leaving traces. | + | |
- | + | ||
- | The reasons for those sinisters are numerous, but human mistakes are majorly involved. Peter Gutmann proposed through his papers an explanation of how this data could still be read on Hard Drives at that time, but also some advices to securely erase data. | + | |
- | + | ||
- | This paper is some kind of a warning to all those selling Hard Drives //via //eBay that once contained personal data. | + | |
- | + | ||
- | Keywords: **recovery**; | + | |
+ | Ključne riječi: forenzička analiza, **WhatsApp**, | ||
===== Uvod ===== | ===== Uvod ===== | ||
- | Razvoj interneta i pametnih telefona doveo je do razvoja aplikacija za razmjenu poruka. Takve aplikacije vrlo su popularne te osim poruka | + | Razvoj interneta i pametnih telefona doveo je do razvoja aplikacija za razmjenu poruka. Takve aplikacije vrlo su popularne te se osim poruka |
- | WhatsApp je besplatna aplikacija za razmjenu poruka putem interneta, primarno zamišljena za korištenje na pametnim telefonima. Tvrtka WhatsApp osnovana je 2009. godine, a 2014. godine kupio ju je Facebook. Prema podacima Statista, WhatsApp je najkorištenija aplikacija za razmjenu poruka, brojeći | + | WhatsApp je besplatna aplikacija za razmjenu poruka putem interneta, primarno zamišljena za korištenje na pametnim telefonima. Tvrtka WhatsApp osnovana je 2009. godine, a 2014. godine kupio ju je Facebook. Prema podacima Statista[5], WhatsApp je najkorištenija aplikacija za razmjenu poruka, brojeći |
- | Forenzićka analiza podataka koje ostavlja WhatsApp postaje vrlo važna. | + | Forenzička analiza podataka koje ostavlja WhatsApp postaje vrlo važna. |
===== Razmjena poruka i enkripcija ===== | ===== Razmjena poruka i enkripcija ===== | ||
- | WhatsApp za razmjenu poruka koristi protokol XMPP (eXtensible Messaging and Presence Protocol). Klijent otvara utičnicu (engl. socket) s XMPP poslužiteljem i ostavlja ju otvorenu sve dok je klijent prijavljen. U slučaju WhatsApp aplikacije na pametnom telefonu, veza je otvorena sve dok je korisnik prijavljen i pametni telefon uključen. | + | WhatsApp za razmjenu poruka koristi protokol XMPP (eXtensible Messaging and Presence Protocol). Klijent otvara utičnicu (eng. socket) s XMPP poslužiteljem i ostavlja ju otvorenu sve dok je klijent prijavljen. U slučaju WhatsApp aplikacije na pametnom telefonu, veza je otvorena sve dok je korisnik prijavljen i pametni telefon uključen. |
- | Korištena razina zaštite poruka enkripcijom u WhatsAppu je kroz godine nadograđivanja | + | Korištena razina zaštite poruka enkripcijom u WhatsAppu je kroz godine nadograđivana te od 2016. godine WhatsApp koristi enkripciju |
- | {{https:// | + | S aspekta računalne forenzike, to znači okretanje analizi podataka koji su ostavljeni na pametnom telefonu. |
- | Slika prikazuje postupak slanja poruke. Poruka se kriptira prije slanja te se nakon uspješnog slanja nalazi na uređaju pošiljatelja i primatelja. Ako je u poruci bila datoteka, datoteka se na kratko vrijeme sprema na WhatsApp poslužitelju. | + | {{: |
+ | |||
+ | Slika prikazuje postupak slanja poruke. Poruka se kriptira prije slanja te se nakon uspješnog slanja nalazi na uređaju pošiljatelja i primatelja. Ako je u poruci bila datoteka, datoteka se na kratko vrijeme sprema | ||
Redak 78: | Redak 37: | ||
WhatsApp sve podatke sprema u SQLite baze podataka na pametnom telefonu. Njihova imena i lokacija ovise o korištenom operacijskom sustavu. | WhatsApp sve podatke sprema u SQLite baze podataka na pametnom telefonu. Njihova imena i lokacija ovise o korištenom operacijskom sustavu. | ||
- | Na iOS sustavu: ChatStorage.sqlite i nalazi se na /// | + | Na iOS sustavu: ChatStorage.sqlite i nalazi se na: /// |
- | Na Android sustavu to su dvije baze: Msgstore.db (podaci o porukama) i wa.db (podaci o kontaktima). Nalaze se na lokaciji: /// | + | Na Android sustavu to su dvije baze: msgstore.db (podaci o porukama) i wa.db (podaci o kontaktima). Nalaze se na lokaciji: /// |
Baze podataka na tim lokacijama nisu kriptirane. | Baze podataka na tim lokacijama nisu kriptirane. | ||
Redak 86: | Redak 45: | ||
==== Posebnosti operacijskog sustava Android ==== | ==== Posebnosti operacijskog sustava Android ==== | ||
- | U operacijskom sustavu Android, do tih je podataka običnom korisniku teško doći. Kako bi se došlo do tih baza podataka, korisnik mora imati //root// pristup svojem uređaju. Takav pristup omogućuje puni pristup operacijskom sustavu uređaja te su omogućene privilegije super korisnika (engl. superuser). S tim privilegijama, | + | U operacijskom sustavu Android, do tih je podataka običnom korisniku teško doći. Kako bi se došlo do tih baza podataka, korisnik mora imati //root// pristup svojem uređaju. Takav pristup omogućuje puni pristup operacijskom sustavu uređaja te su omogućene privilegije super korisnika (eng. superuser). S tim privilegijama, |
Kako omogućavanje //root// pristupa nekad može dovesti do komplikacija i gubitka jamstva, alternativa je fizički pristup uređaju. | Kako omogućavanje //root// pristupa nekad može dovesti do komplikacija i gubitka jamstva, alternativa je fizički pristup uređaju. | ||
Redak 92: | Redak 51: | ||
Osim nekriptiranih baza podataka, na SD kartici (ili u memoriji uređaja, ako kartice nema) nalazi se kriptirana baza podataka. Točna lokacija: /// | Osim nekriptiranih baza podataka, na SD kartici (ili u memoriji uređaja, ako kartice nema) nalazi se kriptirana baza podataka. Točna lokacija: /// | ||
- | //* //označava koji algoritam je korišten za kriptiranje baze podataka (crypt7, crypt8, crypt12). Crypt12 (posljednji izdan - vrijeme pisanja: siječanj 2020.) koristi 256 bitnu AES enkripciju baze podataka. Za dekripciju takve baze podataka potreban je ključ. Ključ za dekripciju može se naći na lokaciji: // | + | Zvjezdica (//* //) u ekstenziji kriptirane baze podataka |
==== Fizički pristup uređaju ==== | ==== Fizički pristup uređaju ==== | ||
Do baza podataka moguće je doći i ako uređaj nema omogućeni //root// pristup. Potrebno je spojiti pametni telefon na računalo te koristiti neki od sljedećih forenzičkih alata. | Do baza podataka moguće je doći i ako uređaj nema omogućeni //root// pristup. Potrebno je spojiti pametni telefon na računalo te koristiti neki od sljedećih forenzičkih alata. | ||
- | * Magnet Forensics | + | |
- | * Oxygen Forensics | + | * [[https:// |
- | * WhatsApp_Xtract | + | * [[https:// |
- | * WhatsApp-key-DB-extractor | + | * [[https:// |
Magnet Forensics i Oxygen Forensics specijalizirani su alati za naprednu forenziku, obuhvaćaju mnogo šire područje i komercijalni su. WhatsApp-key-DB-extractor dovoljan je za potebe forenzičke analize WhatsApp podataka. | Magnet Forensics i Oxygen Forensics specijalizirani su alati za naprednu forenziku, obuhvaćaju mnogo šire područje i komercijalni su. WhatsApp-key-DB-extractor dovoljan je za potebe forenzičke analize WhatsApp podataka. | ||
- | WhatsApp-key-DB-extractor iz pametnog telefona dohvaća baze podataka i ključ za otključavanje kriptiranih baza podataka. | + | WhatsApp-key-DB-extractor iz pametnog telefona dohvaća baze podataka i ključ za otključavanje kriptiranih baza podataka: |
{{: | {{: | ||
+ | Sa slike je vidljivo da se dohvaćaju i dvije baze podataka koje nisu bile spomenute do sad: axolotl.db i chatsettings.db. Prva sadrži podatke koje aplikacija koristi za enkripciju poruka, dok druga sadrži korisnikove postavke. Nisu zanimljive za analizu kao već spomenute baze poruka i kontakata. | ||
===== Analiza WhatsApp baza podataka ===== | ===== Analiza WhatsApp baza podataka ===== | ||
Na Android sustavu postoji više baza podataka, nego u iOS sustavu. Ono što je u iOS sustavu spremljeno u jednoj bazi podataka, nalazi se u dvije baze podataka na Android sustavu. Analiza se radi na isti način. | Na Android sustavu postoji više baza podataka, nego u iOS sustavu. Ono što je u iOS sustavu spremljeno u jednoj bazi podataka, nalazi se u dvije baze podataka na Android sustavu. Analiza se radi na isti način. | ||
- | |||
==== Baza podataka msgstore.db na sustavu Android ==== | ==== Baza podataka msgstore.db na sustavu Android ==== | ||
Redak 121: | Redak 80: | ||
^Tablica^Podaci| | ^Tablica^Podaci| | ||
- | |chat|Sadrži popis svih otvorenih chatova (između dvoje ljudi ili grupe)| | + | |messages|Popis i sadržaj poruka. Najvažnija tablica. Sadrži i obrisane poruke.| |
- | |call_log|Sadrži popis svih poziva, tko je komunicirao, | + | |jid|Popis korisnika koji su zabilježeni kao kontakti. Njihovi brojevi mobitela ih jednoznačno određuju.| |
- | |frequents|Sadrži popis ljudi s kojima vlasnik češće komunicira| | + | |chat |
- | |group_participants i group_participants_history|Sadrže popis ljudi koji sudjeluju u grupama te povijest kad su neki napustili ili se pridružili grupi| | + | |call_log|Sadrži popis svih poziva, tko je komunicirao, |
- | |jid|Popis korisnika koji su zabilježeni kao kontakti. Njihovi brojevi mobitela ih određuju.| | + | |frequents|Sadrži popis ljudi s kojima vlasnik češće komunicira.| |
- | |messages|Popis i sadržaj poruka. Najvažnija tablica.| | + | |group_participants i group_participants_history|Sadrže popis ljudi koji sudjeluju u grupama te povijest kad su neki napustili ili se pridružili grupi.| |
- | |message_media|Popis | + | |message_media|Popis poslanih datoteka. Njihova lokacija na poslužitelju.| |
Primjer poruke: | Primjer poruke: | ||
- | {{: | + | {{: |
- | Pomoću ovih tablica može se doći do svih poruka, pošiljatelja, | + | Pomoću ovih tablica može se doći do svih poruka, pošiljatelja, |
==== Baza podataka wa.db na sustavu Android ==== | ==== Baza podataka wa.db na sustavu Android ==== | ||
Redak 139: | Redak 98: | ||
Wa.db baza podataka sastoji se od 16 tablica i sadrži podatke o kontaktima. | Wa.db baza podataka sastoji se od 16 tablica i sadrži podatke o kontaktima. | ||
- | Najvažnija tablica te baze podataka je wa_contacts tablica koja sadrži sve kontakte s mobilnog uređaja. Spremljeno je njihovo ime i prezime pod kojim se nalaze u mobitelu, njihov broj mobitela, koriste li WhatsApp aplikaciju, njihov status i ostale podatke. Preko atributa //jid //iz ove tablice, moguće je povezati korisnike u drugim tablicama baze podataka msgstore.db (npr. kako se zove osoba koja je poslala zadnju poruku). | + | Najvažnija tablica te baze podataka je wa_contacts tablica koja sadrži sve kontakte s mobilnog uređaja. Spremljeno je njihovo ime i prezime pod kojim se nalaze u mobitelu, njihov broj mobitela, koriste li WhatsApp aplikaciju, njihov status i ostali podaci. Preko atributa //jid //iz ove tablice, moguće je povezati korisnike u drugim tablicama baze podataka msgstore.db (npr. kako se zove osoba koja je poslala zadnju poruku). |
- | + | ||
- | \\ | + | |
===== Datoteke poslane preko WhatsAppa ===== | ===== Datoteke poslane preko WhatsAppa ===== | ||
- | Popis datoteka nalazi se u bazi podataka msgstore.db. No datoteke su spremljene na uređaju u direktoriju WhatsApp\Media. Ovdje ostaju sve datoteke koje je korisnik preuzeo te je moguća njihova analiza. | + | Popis datoteka nalazi se u bazi podataka msgstore.db. No datoteke su spremljene na uređaju u direktoriju |
Datoteke koje su poslane, ne ostaju na WhatsApp poslužiteljima vječno te se ne mogu rekreirati iz baze podataka ako je datoteka obrisana s uređaja i poslužitelja baze podataka. | Datoteke koje su poslane, ne ostaju na WhatsApp poslužiteljima vječno te se ne mogu rekreirati iz baze podataka ako je datoteka obrisana s uređaja i poslužitelja baze podataka. | ||
Redak 152: | Redak 108: | ||
{{: | {{: | ||
+ | ===== Zaključak ===== | ||
- | ===== Chapter 5 ===== | + | WhatsApp kao najpopularniji servis za razmjenu poruka na pametnim uređajima bitan je za forenzičku analizu. Zbog svoje enkripcije od kraja do kraja, prilikom istrage ne može se tražiti sadržaj poruka nekog korisnika od WhatsApp tvrtke. Kako bi se provela forenzička analiza, potrebno je pristupiti bazama podataka WhatsApp aplikacije. |
- | ===== Chapter 6 ===== | + | Pristupiti se može direktno, pomoću // |
- | ===== Conclusion | + | ===== Literatura |
- | zaključak. | + | [1] [[https:// |
- | ===== Sources ===== | + | [2] [[https:// |
- | [1] [[http://books.google.hr/books? | + | [3] [[https://pdfs.semanticscholar.org/aebe/ |
- | [2] [[http://www.google.com/books? | + | [4] [[https://faq.whatsapp.com/general/ |
- | [3] [[http://www.cogtech.usc.edu/publications/kirschner_Sweller_Clark.pdf|Kirschner, P. A, Sweller, J. and Clark, R. E. Why minimal guidance during instruction does not work: An analysis of the failure of constructivist, discovery, problem-based, | + | [5] [[https://www.statista.com/statistics/ |
+ | |||
+ | [6] [[https:// | ||
+ | |||
+ | \\ | ||