Starije izmjene na obje strane
Starija izmjena
Novija izmjena
|
Starija izmjena
|
racfor_wiki:android:tehnike_otkljucavanja_zakljucanih_android_uredaja_2 [2020/01/09 18:37] bvezmar [Smudge attack] |
racfor_wiki:android:tehnike_otkljucavanja_zakljucanih_android_uredaja_2 [2024/12/05 12:24] (trenutno) |
===== Sažetak ===== | ===== Sažetak ===== |
| |
<font 11pt/Calibri,sans-serif;;inherit;;inherit>U današnjem svijetu gotovo svatko posjeduje barem jedan pametni telefon kojeg svakodnevno koristi. Uređaji zasnovani na Android operacijskom sustavu su najzastupljeniji. S obzirom na golemu količinu osobnih podataka sadržanih na pametnim telefonima, isti su iznimno korisni računalnim forenzičarima u svrhu pronalaženja tragova. Najosnovniji oblik zaštite podataka je zaključavanje uređaja nekom vrstom lozinke ili uzorka. U skladu s tim, jedan od čestih zadataka računalnih forenzičara je zaobilaženje ili uklanjanje te lozinke, odnosno otključavanje samog uređaja. Ovaj seminar bavi se nekim od najčešće korištenih tehnika otključavanja zaključanih Android uređaja.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>U današnjem svijetu gotovo svatko posjeduje barem jedan pametni telefon kojeg svakodnevno koristi. Uređaji zasnovani na Android operacijskom sustavu su najzastupljeniji. S obzirom na golemu količinu osobnih podataka sadržanih na pametnim telefonima, isti su iznimno korisni računalnim forenzičarima u svrhu pronalaženja tragova. Najosnovniji oblik zaštite podataka je zaključavanje uređaja nekom vrstom lozinke ili uzorka. U skladu s tim, jedan od čestih zadataka računalnih forenzičara je zaobilaženje ili uklanjanje te lozinke, odnosno otključavanje samog uređaja. Ovaj seminar bavi se nekim od najčešće korištenih tehnika otključavanja zaključanih Android uređaja.</font> |
| |
<font 11.0pt/inherit;;inherit;;inherit>**Ključne riječi:** Android, pametni telefon, otključavanje, //USB debugging//, //root//-anje</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>**Ključne riječi:** Android, pametni telefon, otključavanje, //USB debugging//, //root//-anje</font> |
| |
| |
===== Uvod ===== | ===== Uvod ===== |
| |
<font 11pt/Calibri,sans-serif;;inherit;;inherit>Pametni telefoni (engl. //smartphone//) postali su dio naše svakodnevice te je danas postalo neobično ne posjedovati barem jedan takav uređaj. Od svojih ranih inačica, pametni telefoni su s vremenom zamijenili osobne digitalne asistente (engl. //personal digital assistant//, //PDA//) te ih danas korisnici koriste za obavljanje poziva, slanje SMS poruka, spajanje na internet te navigiranje istim, multimediju poput slika, videozapisa, glazbe te korištenje mnoštva drugih servisa i aplikacija koje im olakšavaju svakodnevan život.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Pametni telefoni (engl. //smartphone//) postali su dio naše svakodnevice te je danas postalo neobično ne posjedovati barem jedan takav uređaj. Od svojih ranih inačica, pametni telefoni su s vremenom zamijenili osobne digitalne asistente (engl. //personal digital assistant//, //PDA//) te ih danas korisnici koriste za obavljanje poziva, slanje SMS poruka, spajanje na internet te navigiranje istim, multimediju poput slika, videozapisa, glazbe te korištenje mnoštva drugih servisa i aplikacija koje im olakšavaju svakodnevan život.</font> |
| |
<font 11pt/Calibri,sans-serif;;inherit;;inherit>Android je operacijski sustav zasnovan na Linux-u te primarno namijenjen mobilnim uređajima sa zaslonom na dodir (engl. //touchscreen//) poput pametnih telefona i tablet računala. Predstavljen je 2007. godine, a prvi komercijalni Android uređaj lansiran je 2008. godine. Od tada, Android uređaji značajno su porasli u popularnosti te je od 2011. godine Android najprodavaniji operacijski sustav na svijetu. Od svibnja 2017. godine, Android operacijski sustav ima preko dvije milijarde aktivnih mjesečnih korisnika.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Android je operacijski sustav zasnovan na Linux-u te primarno namijenjen mobilnim uređajima sa zaslonom na dodir (engl. //touchscreen//) poput pametnih telefona i tablet računala. Predstavljen je 2007. godine, a prvi komercijalni Android uređaj lansiran je 2008. godine. Od tada, Android uređaji značajno su porasli u popularnosti te je od 2011. godine Android najprodavaniji operacijski sustav na svijetu. Od svibnja 2017. godine, Android operacijski sustav ima preko dvije milijarde aktivnih mjesečnih korisnika.</font> |
| |
<font 11pt/Calibri,sans-serif;;inherit;;inherit>S obzirom na golemu zastupljenost Android uređaja te širok i raznolik spektar stvari za koje ih korisnici koriste, računalnim je forenzičarima u interesu iskoristiti podatke sadržane u takvim uređajima kako bi otkrili relevantne digitalne tragove. Primjeri relevantnih podataka i informacija sadržanih na uređaju su povijest poziva, SMS poruke, multimedija poput slika i videozapisa uz pripadne metapodatke, povijest spajanja i pretraživanja interneta, tip uređaja, MAC adresa, lozinke te razni drugi. Naravno, jedan od čestih problema koji forenzičari prilikom pristupanja tim podatcima moraju riješiti je upravo otključavanje zaključanih Android uređaja, stoga se ovaj seminar bavi nekim od češćih tehnika otključavanja zaključanih Android uređaja.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>S obzirom na golemu zastupljenost Android uređaja te širok i raznolik spektar stvari za koje ih korisnici koriste, računalnim je forenzičarima u interesu iskoristiti podatke sadržane u takvim uređajima kako bi otkrili relevantne digitalne tragove. Primjeri relevantnih podataka i informacija sadržanih na uređaju su povijest poziva, SMS poruke, multimedija poput slika i videozapisa uz pripadne metapodatke, povijest spajanja i pretraživanja interneta, tip uređaja, MAC adresa, lozinke te razni drugi. Naravno, jedan od čestih problema koji forenzičari prilikom pristupanja tim podatcima moraju riješiti je upravo otključavanje zaključanih Android uređaja, stoga se ovaj seminar bavi nekim od češćih tehnika otključavanja zaključanih Android uređaja.</font> |
| |
<font 11pt/Calibri,sans-serif;;inherit;;inherit>Naravno, svaka tehnika dolazi s određenim limitacijama te je potrebno odrediti koji tehniku je najbolje primijeniti za pojedini slučaj. Ta procjena uglavnom ovisi o stanju uređaja kojeg se nastoji otključati. Postavljaju se pitanja koji je model uređaja, je li uređaj upaljen ili ugašen, je li uključen //USB debugging//, je li uređaj //root//-an i slična. Objašnjenja tih pojmova, te tehnika otključavanja nalaze se u nastavku.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Naravno, svaka tehnika dolazi s određenim limitacijama te je potrebno odrediti koji tehniku je najbolje primijeniti za pojedini slučaj. Ta procjena uglavnom ovisi o stanju uređaja kojeg se nastoji otključati. Postavljaju se pitanja koji je model uređaja, je li uređaj upaljen ili ugašen, je li uključen //USB debugging//, je li uređaj //root//-an i slična. Objašnjenja tih pojmova, te tehnika otključavanja nalaze se u nastavku.</font> |
| |
| |
| |
<font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>//USB debugging// može se, iz perspektive napadača, uključiti na jednostavan način. Primjerice, ako napadač želi ostvariti pristup prijateljevim datotekama i aplikacijama može od njega posuditi uređaj iz nekog lažnog razloga te unutar postavki uključiti //USB debugging//. U nekom kasnijem, pogodnom trenutku kada napadač ima pristup prijateljevom uređaju može iskoristiti neku od tehnika otključavanja navedenih u ovom odjeljku. Sljedeća slika prikazuje uključivanje //USB debugging//-a.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>//USB debugging// može se, iz perspektive napadača, uključiti na jednostavan način. Primjerice, ako napadač želi ostvariti pristup prijateljevim datotekama i aplikacijama može od njega posuditi uređaj iz nekog lažnog razloga te unutar postavki uključiti //USB debugging//. U nekom kasnijem, pogodnom trenutku kada napadač ima pristup prijateljevom uređaju može iskoristiti neku od tehnika otključavanja navedenih u ovom odjeljku. Sljedeća slika prikazuje uključivanje //USB debugging//-a.</font> |
| |
| {{ :racfor_wiki:android:usb-debugging.png?200 |}} |
| |
| |
<font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Konačno, prije nego li se prouče tehnike otključavanja zaključanih Android uređaja koje se oslanjaju na uključeni //USB debugging// , potrebno je spomenuti i //Android Debugging Bridge//, skraćeno ADB. ADB je primarno alat naredbenog retka (engl. //command line//) korišten za komunikaciju s Android uređajem.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Konačno, prije nego li se prouče tehnike otključavanja zaključanih Android uređaja koje se oslanjaju na uključeni //USB debugging// , potrebno je spomenuti i //Android Debugging Bridge//, skraćeno ADB. ADB je primarno alat naredbenog retka (engl. //command line//) korišten za komunikaciju s Android uređajem.</font> |
| |
<font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Prva tehnika otključavanja zaključanih Android uređaja koja se oslanja na uključeni //USB debugging //je korištenje //UnlockAndroid.apk //paketa. Android uređaj se prvo spoji USB kabelom s računalom na kojem je instaliran Android SDK. S pretpostavkom da je //UnlockAndroid.apk //paket smješten u odgovarajućem direktoriju na računalu, pomoću ADB alata ta aplikacija se instalira i na Android uređaj. Konačno, putem ADB alata pokreće se instalirana //UnlockAndroid// aplikacija i otključava uređaj. Sljedeća slika prikazuje naredbeni redak prilikom korištenja //UnlockAndroid.apk// paket.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Prva tehnika otključavanja zaključanih Android uređaja koja se oslanja na uključeni //USB debugging //je korištenje //UnlockAndroid.apk //paketa. Android uređaj se prvo spoji USB kabelom s računalom na kojem je instaliran Android SDK. S pretpostavkom da je //UnlockAndroid.apk //paket smješten u odgovarajućem direktoriju na računalu, pomoću ADB alata ta aplikacija se instalira i na Android uređaj. Konačno, putem ADB alata pokreće se instalirana //UnlockAndroid// aplikacija i otključava uređaj. Sljedeća slika prikazuje naredbeni redak prilikom korištenja //UnlockAndroid.apk// paketa.</font> |
| |
| {{ :racfor_wiki:android:unlock-android-apk.png?600 |}} |
| |
| |
| <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Sljedeća zanimljiva tehnika otključavanja je brisanje //gesture.key //datoteke. Ova tehnika primjenjiva je ako se za otključavanje Android uređaja koristi unos uzorka (engl. //pattern lock//) te ako je uređaj //root//-an. Slično kao i u prethodnoj tehnici, uređaj se spaja s računalom te se putem ADB alata pristupa ljusci uređaja. Unosom naredbe briše se //gesture.key //datoteka u kojoj je uzorak za otključavanje pohranjen. Ponovnim pokretanjem Android uređaja, isti će zahtijevati unos uzorka za otključavanje no unosom bilo kojeg uzorka uređaj će se otključati. Sljedeća slika prikazuje naredbeni redak prilikom brisanja //gesture.key //datoteke.</font> |
| |
| {{ :racfor_wiki:android:deleting-gesture-key.png?600 |}} |
| |
<font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Sljedeća zanimljiva tehnika otključavanja je brisanje //gesture.key //datoteke. Ova tehnika primjenjiva je ako se za otključavanje Android uređaja koristi unos uzorka (engl. //pattern lock//) te ako je uređaj //root//-an. Slično kao i u prethodnoj tehnici, uređaj se spaja s računalom te se putem ADB alata pristupa ljusci uređaja. Unosom naredbe se briše //gesture.key //datoteka u kojoj je uzorak za otključavanje pohranjen. Ponovnim pokretanjem Android uređaja, isti će zahtijevati unos uzorka za otključavanje no unosom bilo kojeg uzorka uređaj će se otključati. Sljedeća slika prikazuje naredbeni redak prilikom brisanja //gesture.key //datoteke.</font> | |
| |
<font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Pod uvjetom da je Android uređaj //root//-an, otključavanje je moguće ostvariti i uređivanjem SQLite datoteka pohranjenim u datotečnom sustavu uređaja. Izvođenjem naredbe „sqlite settings.db“ unutar direktorija koji sadrži //settings.db// datoteku pristupa se SQLite ljusci kojom se mogu zadati SQL naredbe kojima će se izmjeniti podatci pohranjeni unutar te datoteke. Postavljanjem vrijednosti //lock_pattern_autolock// i //lockscreen.lockedoutpermanently //parametara na nulu moguće je otključati uređaj.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Pod uvjetom da je Android uređaj //root//-an, otključavanje je moguće ostvariti i uređivanjem SQLite datoteka pohranjenim u datotečnom sustavu uređaja. Izvođenjem naredbe „sqlite settings.db“ unutar direktorija koji sadrži //settings.db// datoteku pristupa se SQLite ljusci kojom se mogu zadati SQL naredbe kojima će se izmjeniti podatci pohranjeni unutar te datoteke. Postavljanjem vrijednosti //lock_pattern_autolock// i //lockscreen.lockedoutpermanently //parametara na nulu moguće je otključati uređaj.</font> |
| |
<font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Dosad navedene tehnike zaobilaze zaključavanje ekrana ili ga uklanjaju, no povrh toga postoji način i za doznati PIN, odnosno lozinku kojom se uređaj otključava kako bi se on mogao proizvoljno otključavati i zaključavati. Lozinka je pohranjena unutar //password.key //datoteke u datotečnom sustavu uređaja. Naravno, lozinka nije pohranjena u svom običnom, pravom obliku već je njena vrijednost skrivena kriptografskim algoritmima. Dohvatom //salt// kriptografskog ključa iz //settings.db// datoteke, SHA1 i MD5 lozinke iz //password.key// datoteke te alata koji koriste //brute force// pristup otkrivanja lozinke, ista se može otkriti.</font> | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>Dosad navedene tehnike zaobilaze zaključavanje ekrana ili ga uklanjaju, no povrh toga postoji način i za doznati PIN, odnosno lozinku kojom se uređaj otključava kako bi se on mogao proizvoljno otključavati i zaključavati. Lozinka je pohranjena unutar //password.key //datoteke u datotečnom sustavu uređaja. Naravno, lozinka nije pohranjena u svom običnom, pravom obliku već je njena vrijednost skrivena kriptografskim algoritmima. Dohvatom //salt// kriptografskog ključa iz //settings.db// datoteke, SHA1 i MD5 lozinke iz //password.key// datoteke te primjenom alata koji koriste //brute force// pristup otkrivanja lozinke, ista se može otkriti.</font> |
| |
| |
===== Zaključak ===== | ===== Zaključak ===== |
| |
Uredi | <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>U ovom seminaru navedeni su i obrađeni neki od najčešćih tehnika otključavanja zaključanih Android uređaja, no postoje i brojne druge. Neke metode, poput //smudge attack //tehnike, su jednostavnije ali manje pouzdane. Druge tehnike, poput korištenja //UnlockAndroid.apk //paketa su malo složenije ili zahtijevaju više posla kako bi se postiglo otključavanje. Tehnike poput brisanja //gesture.key //datoteke ili uređivanja //settings.db //utječu i na stanje Android uređaja što nije poželjno u računalnoj forenzici. Važno je napomenuti da ne postoji najbolja ili najgora tehnika otključavanja zaključanih Android uređaja, već je za svaki slučaj potrebno procijeniti koja tehnika bi bila najbolja za primijeniti. Pronalaženje odgovarajuće tehnike uglavnom ovisi o stanju uređaja kojeg se nastoji otključati.</font> |
| |
| <font 14px/Arial,Helvetica,sans-serif;;inherit;;inherit>S obzirom na intenzivan razvoj tehnologije, kao i velik broj proizvođača pametnih telefona, novi modeli pametnih telefona svakodnevno se pojavljuju na današnjem tržištu. Uz nove pametne telefone dolazi i do razvoja novih metoda zaključavanja uređaja te pojačavanja zaštite podataka na uređajima. Već danas tradicionalne numeričke lozinke i uzorci za otključavanje zamjenjuju se otključavanjem uređaja putem elektroničkog prepoznavanja otiska prsta (engl. //electronic fingerprint recognition//) ili sustava prepoznavanja lica (engl. //facial recognition system//). Neke od tehnika koje se danas koriste za otključavanje zaključanih Android uređaja vrlo vjerojatno neće više biti primjenjive za nove uređaje te će se morati razviti nove tehnike.</font> |
| |
Uredi | |
| |
===== Izvori ===== | ===== Izvori ===== |
| |
Uredi | * [[https://resources.infosecinstitute.com/android-forensics|https://resources.infosecinstitute.com/android-forensics]] |
| |
| * [[https://static.usenix.org/events/woot10/tech/full_papers/Aviv.pdf|https://static.usenix.org/events/woot10/tech/full_papers/Aviv.pdf]] |
| |
| * [[https://www.makeuseof.com/tag/what-is-usb-debugging-mode-on-android-makeuseof-explains/|https://www.makeuseof.com/tag/what-is-usb-debugging-mode-on-android-makeuseof-explains/]] |
| |
| * [[https://www.androidcentral.com/root|https://www.androidcentral.com/root]] |
| |
| * [[https://www.androiddata-recovery.com/blog/learn-to-disable-screen-locks-of-android-devices|https://www.androiddata-recovery.com/blog/learn-to-disable-screen-locks-of-android-devices]] |
| |
| * [[https://www.howtogeek.com/226942/what-to-do-if-you-forget-your-android-phone’s-pin-pattern-or-password/|https://www.howtogeek.com/226942/what-to-do-if-you-forget-your-android-phone%E2%80%99s-pin-pattern-or-password/]] |
| |
Uredi | * [[https://www.tenorshare.com/unlock-android/top-android-unlock-software.html|https://www.tenorshare.com/unlock-android/top-android-unlock-software.html]] |
| |
| |