AVD - Android Virtual Device
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Hvala puno @offsecjay na pomoći prilikom kreiranja ovog sadržaja.
Android Studio omogućava pokretanje virtuelnih mašina Android koje možete koristiti za testiranje APK-ova. Da biste ih koristili, biće vam potrebni:
Android SDK alati - Preuzmite ovde.
Ili Android Studio (sa Android SDK alatima) - Preuzmite ovde.
Na Windows-u (u mom slučaju) nakon instalacije Android Studio imao sam SDK alate instalirane u: C:\Users\<UserName>\AppData\Local\Android\Sdk\tools
Na Mac-u možete preuzeti SDK alate i imati ih u PATH-u pokretanjem:
Ili iz Android Studio GUI kao što je navedeno u https://stackoverflow.com/questions/46402772/failed-to-install-android-sdk-java-lang-noclassdeffounderror-javax-xml-bind-a što će ih instalirati u ~/Library/Android/sdk/cmdline-tools/latest/bin/
i ~/Library/Android/sdk/platform-tools/
i ~/Library/Android/sdk/emulator/
Za Java probleme:
Ako ste instalirali Android Studio, možete jednostavno otvoriti glavni prikaz projekta i pristupiti: Tools --> AVD Manager.
Zatim, kliknite na Create Virtual Device
izaberite telefon koji želite da koristite i kliknite na Next.
Ako vam je potreban telefon sa instaliranim Play Store-om, izaberite onaj sa ikonom Play Store-a!
U trenutnom prikazu moći ćete da izaberete i preuzmete Android sliku koju će telefon koristiti:
Dakle, izaberite je i ako nije preuzeta, kliknite na simbol Download pored imena (sada sačekajte dok se slika preuzme).
Kada se slika preuzme, jednostavno izaberite Next
i Finish
.
Virtuelna mašina će biti kreirana. Sada svaki put kada pristupite AVD manager-u, biće prisutna.
Da biste je pokrenuli, jednostavno pritisnite Start button.
Prvo što treba da uradite je da odlučite koji telefon želite da koristite, da biste videli listu mogućih telefona, izvršite:
Kada odlučite ime uređaja koji želite da koristite, potrebno je da odlučite koju Android sliku želite da pokrenete na ovom uređaju.
Možete nabrojati sve opcije koristeći sdkmanager
:
I preuzmite onaj (ili sve) koje želite da koristite sa:
Kada preuzmete Android sliku koju želite da koristite, možete prikazati sve preuzete Android slike sa:
U ovom trenutku ste odlučili koji uređaj želite da koristite i preuzeli ste Android sliku, tako da možete kreirati virtuelnu mašinu koristeći:
U poslednjoj komandi napravio sam VM nazvan "AVD9" koristeći uređaj "Nexus 5X" i Android sliku "system-images;android-28;google_apis;x86_64". Sada možete prikazati virtuelne mašine koje ste napravili sa:
Već smo videli kako možete da navedete kreirane virtuelne mašine, ali takođe ih možete navesti koristeći:
Možete jednostavno pokrenuti bilo koju virtuelnu mašinu kreiranu koristeći:
Ili koristeći naprednije opcije možete pokrenuti virtuelnu mašinu kao:
Međutim, postoji mnogo različitih korisnih opcija komandne linije koje možete koristiti za pokretanje virtuelne mašine. Ispod možete pronaći neke zanimljive opcije, ali možete pronaći kompletnu listu ovde
Pokretanje
-snapshot name
: Pokreni VM snapshot
-snapshot-list -snapstorage ~/.android/avd/Nexus_5X_API_23.avd/snapshots-test.img
: Prikaži sve snimke koji su zabeleženi
Mreža
-dns-server 192.0.2.0, 192.0.2.255
: Omogućava da se navedu DNS serveri odvojeni zarezom za VM.
-http-proxy 192.168.1.12:8080
: Omogućava da se navede HTTP proxy koji će se koristiti (veoma korisno za hvatanje saobraćaja koristeći Burp)
-port 5556
: Postavi TCP broj porta koji se koristi za konzolu i adb.
-ports 5556,5559
: Postavi TCP portove koji se koriste za konzolu i adb.
-tcpdump /path/dumpfile.cap
: Hvata sav saobraćaj u datoteku
Sistem
-selinux {disabled|permissive}
: Postavi Security-Enhanced Linux sigurnosni modul na onemogućen ili permisivan režim na Linux operativnom sistemu.
-timezone Europe/Paris
: Postavi vremensku zonu za virtuelni uređaj
-screen {touch(default)|multi-touch|o-touch}
: Postavi emulirani režim dodirnog ekrana.
-writable-system
: Koristite ovu opciju da imate zapisivu sistemsku sliku tokom vaše emulacije. Takođe ćete morati da pokrenete adb root; adb remount
. Ovo je veoma korisno za instalaciju novog sertifikata u sistem.
Ako ste preuzeli uređaj sa Play Store-om, nećete moći da dobijete root direktno, i dobićete ovu poruku o grešci
Using rootAVD with Magisk uspeo sam da ga rootujem (pratite na primer ovaj video ili ovaj).
Proverite sledeću stranicu da biste saznali kako da instalirate prilagođeni CA sertifikat:
Install Burp CertificateMožete koristiti GUI da napravite snimak VM-a u bilo kojem trenutku:
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)