====== Forenzika WhatsApp aplikacije ====== ===== Sažetak ===== WhatsApp je jedna od najraširenijih aplikacija za razmjenu poruka na svijetu, s više od dvije milijarde aktivnih korisnika. Zbog svoje popularnosti često se pojavljuje kao izvor digitalnih dokaza u kaznenim, civilnim i internim istragama. Forenzika WhatsApp aplikacije bavi se prikupljanjem, analizom i interpretacijom podataka koje aplikacija pohranjuje na mobilnim uređajima i u oblaku. Ovaj rad opisuje arhitekturu WhatsApp aplikacije, vrste podataka koji se mogu pronaći, metode njihove forenzičke obrade te izazove koje predstavljaju enkripcija i sigurnosni mehanizmi modernih operacijskih sustava. ===== Uvod ===== WhatsApp Messenger je besplatna aplikacija za razmjenu poruka koju je 2009. godine osnovala tvrtka WhatsApp Inc., a 2014. godine je kupila Meta Platforms (bivši Facebook). Aplikacija omogućuje slanje tekstualnih poruka, glasovnih poruka, slika, videa, dokumenata te glasovne i video pozive. Jedan od ključnih razloga njezine popularnosti je implementacija end-to-end enkripcije koja štiti privatnost korisnika. S forenzičke perspektive, WhatsApp je postao ključan izvor dokaza u kaznenim istragama, građanskim parnicama i korporativnim forenzičkim slučajevima. Podatci pohranjeni u aplikaciji mogu sadržavati važne informacije o komunikaciji između subjekata istraživanja, njihovim lokacijama, vremenskim oznakama aktivnosti te multimedijskim sadržajima koji mogu biti relevantni za istragu. No, forenzička analiza WhatsApp aplikacije predstavlja niz tehničkih izazova. End-to-end enkripcija, lokalna enkripcija baze podataka, učestale sigurnosne nadogradnje te opcije poput samobrišućih poruka otežavaju pristup i analizu podataka. Ovaj seminar opisuje kako WhatsApp pohranjuje podatke, koje metode forenzičari koriste za njihovo prikupljanje i analizu te s kojim se preprekama susreću u tom procesu. ===== Arhitektura WhatsApp aplikacije ===== ==== End-to-end enkripcija ==== WhatsApp od 2016. godine koristi end-to-end enkripciju (E2EE) temeljenu na Signal protokolu. To znači da su poruke kriptirane na uređaju pošiljatelja i dekriptirane samo na uređaju primatelja. Čak ni WhatsApp serveri nemaju pristup nekriptiranom sadržaju poruka. Signal protokol kombinira Extended Triple Diffie-Hellman (X3DH) protokol za uspostavu ključeva i Double Ratchet algoritam za upravljanje simetričnim ključevima. Svaka konverzacija koristi jedinstvene ključeve koji se redovito mijenjaju, što osigurava forward secrecy i backward secrecy. Forward secrecy znači da kompromitiranje trenutnih ključeva ne ugrožava prethodne poruke, dok backward secrecy osigurava da kompromitiranje starih ključeva ne ugrožava buduće poruke. Za forenzičara to znači da presretanje mrežnog prometa između korisnika i WhatsApp servera neće otkriti sadržaj poruka. Jedini način pristupa je dobivanje podataka izravno s uređaja ili iz backupa. {{:racfor_wiki:seminari2025:e2e.png?600|}} ==== Pohrana podataka ==== WhatsApp pohranjuje podatke lokalno na mobilnom uređaju u SQLite bazama podataka. Na Android uređajima, glavni direktorij aplikacije nalazi se na lokaciji /data/data/com.whatsapp/. Ključne datoteke uključuju: * msgstore.db - glavna baza podataka koja sadrži sve poruke, kontakte i metapodatke * wa.db - baza koja sadrži informacije o korisniku i postavkama * axolotl.db - baza koja pohranjuje kriptografske ključeve potrebne za Signal protokol * chatsettings.db - postavke pojedinih razgovora {{:racfor_wiki:seminari2025:05-awa-msgstore_addon.png?600|}} Multimedijski sadržaji (slike, video, glasovne poruke) pohranjuju se u direktoriju Android/media/com.whatsapp/WhatsApp/Media na unutarnjoj ili vanjskoj pohrani uređaja. Na iOS uređajima, WhatsApp podatci pohranjeni su u aplikacijskom sandboxu. Baza podataka naziva se ChatStorage.sqlite i nalazi se u aplikacijskom direktoriju zajedno s drugim pomoćnim datotekama. {{:racfor_wiki:seminari2025:wapp_db.png?200|}} ==== Backup sustav ==== WhatsApp omogućuje korisnicima automatsko spremanje sigurnosnih kopija u cloud servise. Android korisnici koriste Google Drive, dok iOS korisnici koriste iCloud. Važno je napomenuti da backup podatci nisu zaštićeni end-to-end enkripcijom po zadanim postavkama, što ih čini potencijalno dostupnijima za forenzičku analizu. Od 2021. godine WhatsApp je uveo opciju end-to-end kriptiranih backupa. Ako korisnik aktivira ovu opciju, backup se kriptira ključem koji generira korisnik ili 64-znamenkastim ključem koji generira WhatsApp. Bez ovog ključa, backup je nedostupan čak i forenzičkim alatima. Lokalni backupi na Android uređajima pohranjuju se u direktoriju /WhatsApp/Databases/ kao kriptirane datoteke s nazivom msgstore.db.crypt14 (broj na kraju označava verziju enkripcije). Dekriptiranje ovih datoteka zahtijeva kriptografski ključ koji se pohranjuje u zaštićenoj pohrani uređaja. ===== Forenzička analiza WhatsApp-a ===== ==== Analiza na Android uređajima ==== Forenzička analiza WhatsApp-a na Android uređajima zahtijeva pristup unutarnjoj pohrani koja je obično zaštićena. Postoji nekoliko pristupa: * Fizička akvizicija Fizička akvizicija podrazumijeva izravan pristup cijelom sadržaju uređaja na niskoj razini. To se postiže korištenjem root pristupa ili iskorištavanjem sigurnosnih ranjivosti. Fizička akvizicija omogućuje pristup svim datotekama, uključujući izbrisane podatke i nealociran prostor memorije. * Logička akvizicija Logička akvizicija prikuplja podatke korištenjem operacijskog sustava uređaja i Android Debug Bridge (ADB) sučelja. Ovaj pristup je manje invazivan ali može propustiti izbrisane podatke. Za pristup WhatsApp direktoriju potreban je backup privilegij ili root pristup. * Akvizicija kroz backup Android omogućuje stvaranje backupa aplikacija putem ADB alata naredbom adb backup. Backup se može dekriptirati ako je poznat ključ ili ako korisnik nije postavio lozinku za backup. Dekriptiranje msgstore baze Lokalni backupi WhatsApp-a kriptirani su pomoću AES-256 algoritma. Ključ za dekriptiranje pohranjuje se u datoteci key koja se nalazi u /data/data/com.whatsapp/files/. Pristup ovoj datoteci zahtijeva root pristup. Nakon što se ključ dobavi, mogu se koristiti alati poput whatsapp-viewer ili WhatsApp Key/DB Extractor za dekriptiranje i čitanje baze podataka. ==== Analiza na iOS uređajima ==== iOS sustav ima stroža sigurnosna ograničenja u usporedbi s Androidom, što otežava forenzičku analizu. * iTunes backup Korisnici mogu stvoriti backup iOS uređaja putem iTunes-a ili Findera na macOS-u. Ako backup nije kriptiran, WhatsApp podaci dostupni su kao dio backupa. Kriptirani backupi zahtijevaju lozinku koju je postavio korisnik. * iCloud backup iCloud automatski sprema backup ako je opcija aktivirana. Pristup iCloud backupu zahtijeva Apple ID i lozinku korisnika. Forenzičke institucije mogu zatražiti pristup putem sudskog naloga, ali to ovisi o jurisdikciji i suradnji s Appleom. {{:racfor_wiki:seminari2025:icloud.png?300|}} * Jailbreak Jailbreak omogućuje pristup datotečnom sustavu iOS-a zaobilazeći sigurnosna ograničenja. To omogućuje izravan pristup WhatsApp direktoriju i bazama podataka. No, jailbreak može izmijeniti dokaze i nije prihvatljiv u svim forenzičkim standardima. Glavna baza WhatsApp-a na iOS-u je ChatStorage.sqlite. Ona je nekriptirana ako je izvučena putem nekriptiranog iTunes backupa. Bazu je moguće otvoriti alatima poput SQLite browsera i analizirati tablice koje sadrže poruke, kontakte, grupe i metapodatke. ==== Dekriptiranje baze podataka ==== Proces dekriptiranja WhatsApp baze ovisi o verziji enkripcije. Starije verzije (crypt5-crypt8) bile su ranjivije, dok novije verzije (crypt12-crypt15) koriste naprednije metode zaštite. Osnovni koraci dekriptiranja uključuju: * Izvlačenje kriptiranog backup fajla (npr. msgstore.db.crypt14) * Dobivanje enkripcijskog ključa iz /data/data/com.whatsapp/files/key * Korištenje alata za dekriptiranje poput whacrypt ili omwhatsapp * Otvaranje dekriptirane SQLite baze podataka Nakon dekriptiranja, baza sadrži tablice poput messages, chat_list, group_participants koje se mogu analizirati SQL upitima ili specijaliziranim forenzičkim alatima. ===== Izazovi u forenzici WhatsApp-a ===== ==== Enkripcija ==== End-to-end enkripcija čini nemoguće presretanje poruka u prijenosu. Jedini način pristupa sadržaju je kroz krajnje uređaje. Dodatno, lokalna enkripcija backup datoteka zahtijeva pristup enkripcijskim ključevima koji su pohranjeni u zaštićenim dijelovima uređaja. Novije verzije WhatsApp-a implementiraju dodatne slojeve zaštite koji otežavaju pristup čak i s root privilegijama. Na nekim uređajima s naprednim sigurnosnim čipovima (poput Apple Secure Enclave ili Android StrongBox), ključevi mogu biti hardverski zaštićeni. ==== Cloud backup ==== Iako cloud backupi mogu olakšati pristup podatcima bez fizičkog posjedovanja uređaja, oni predstavljaju pravne i tehničke izazove. Potrebni su sudski nalozi za pristup cloud servisima, a ne postoji garancija da će cloud servisi surađivati u svakoj jurisdikciji. Implementacija end-to-end kriptiranih cloud backupa dodatno komplicira situaciju. Ako korisnik aktivira ovu opciju i izgubi ključ, podatci postaju nepovratno nedostupni. ==== Ephemeral poruke ==== WhatsApp podržava samobrišuće poruke (ephemeral messages) koje automatski nestaju nakon određenog vremena (24 sata, 7 dana ili 90 dana). Kada poruke nestanu, obično ih nije moguće povratiti čak ni forenzičkim alatima. Međutim, postoje scenariji u kojima se izbrisane poruke mogu djelomično povratiti. Ako je uređaj kreirao backup prije nego što su poruke izbrisane, mogu se pronaći u starijim verzijama backupa. Također, poruke mogu postojati u nealociranom prostoru memorije ako još nisu prepisane. ===== Alati za forenzičku analizu ===== Postoji niz komercijalnih i besplatnih alata specijaliziranih za forenzičku analizu WhatsApp podataka: Komercijalni alati: * Cellebrite UFED - sveobuhvatno rješenje za mobilnu forenziku koje podržava ekstrakciju i analizu WhatsApp podataka * Oxygen Forensic Detective - napredan alat koji podržava različite metode akvizicije i dekriptiranje WhatsApp baza * Magnet AXIOM - platforma koja omogućuje analizu WhatsApp podataka iz više izvora * MSAB XRY - alat specijaliziran za mobilnu forenziku s podrškom za WhatsApp analizu Besplatni i open-source alati: * WhatsApp Viewer - jednostavan alat za pregled dekriptirane WhatsApp baze * DB Browser for SQLite - općeniti alat za pregled SQLite baza podataka * whacrypt - alat za dekriptiranje WhatsApp backup datoteka * WhatsApp Key/DB Extractor - skripta koja automatizira proces ekstrakcije ključa i baze podataka Forenzičari često kombiniraju više alata kako bi dobili najpotpuniju sliku podataka. ===== Zaključak ===== Forenzička analiza WhatsApp aplikacije predstavlja značajan izazov zbog implementacije snažnih enkripcijskih metoda i naprednih sigurnosnih mehanizama. End-to-end enkripcija temeljene na Signal protokolu učinkovito onemogućuje pristup porukama tijekom prijenosa, dok lokalna enkripcija backup datoteka zahtijeva pristup kriptografskim ključevima pohranjenim u zaštićenim dijelovima uređaja. Usprkos tim preprekama, forenzičari mogu koristiti različite pristupe za prikupljanje dokaza. Fizička i logička akvizicija uređaja, analiza cloud backupa te korištenje specijaliziranih alata omogućuju pristup vrijednim podatcima. Razumijevanje arhitekture aplikacije, metoda pohrane podataka i enkripcijskih mehanizama ključni su za uspješnu forenzičku analizu. Budući razvoj WhatsApp aplikacije vjerojatno će uvesti dodatne sigurnosne mjere koje će dodatno otežati forenzički proces. Forenzičari moraju kontinuirano pratiti tehnološke promjene i prilagođavati svoje metode kako bi ostali učinkoviti u prikupljanju digitalnih dokaza. ===== Popis literature ===== [1] WhatsApp Security Whitepaper: https://www.whatsapp.com/security/WhatsApp-Security-Whitepaper.pdf [2] Signal Protocol Documentation: https://signal.org/docs/ [3] Umar, R., Riadi, I., & Zamroni, G. M. (2018). Mobile Forensic Tools Evaluation for Digital Crime Investigation. International Journal of Advanced Computer Science and Applications: https://www.researchgate.net/publication/326020731_Mobile_Forensic_Tools_Evaluation_for_Digital_Crime_Investigation [4] Mahajan, A., Dahiya, M. S., & Sanghvi, H. P. (2013). Forensic Analysis of Instant Messenger Applications on Android Devices. International Journal of Computer Applications: https://arxiv.org/pdf/1304.4915 [5] Anglano, C. (2014). Forensic analysis of WhatsApp Messenger on Android smartphones. Digital Investigation: https://archive.org/stream/arxiv-1507.07739/1507.07739_djvu.txt [6] Walnycky, D., Baggili, I., Marrington, A., Moore, J., & Breitinger, F. (2015). Network and device forensic analysis of Android social-messaging applications. Digital Investigation: https://dfrws.org/sites/default/files/session-files/2015_USA_pres-network_and_device_forensic_analysis_of_android_social-messaging_applications.pdf [7] Android Debug Bridge (ADB) Documentation: https://developer.android.com/studio/command-line/adb [8] SQLite Database File Format Documentation: https://www.sqlite.org/fileformat.html [9] Predavanja iz kolegija Računalna forenzika: https://www.fer.unizg.hr/predmet/racfor/materijali#%23!p_rep_142274!_-135668