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)
Thank you very much to @offsecjay for his help while creating this content.
Android Studio, APK'leri test etmek için kullanabileceğiniz Android sanal makinelerini çalıştırmanıza olanak tanır. Bunları kullanmak için şunlara ihtiyacınız olacak:
Android SDK araçları - Buradan indirin.
Veya Android Studio (Android SDK araçları ile) - Buradan indirin.
Windows'ta (benim durumumda) Android Studio'yu kurduktan sonra SDK Araçları şurada yüklüydü: C:\Users\<UserName>\AppData\Local\Android\Sdk\tools
Mac'te SDK araçlarını indirebilir ve PATH'te bulundurabilirsiniz:
Ya da Android Studio GUI üzerinden, https://stackoverflow.com/questions/46402772/failed-to-install-android-sdk-java-lang-noclassdeffounderror-javax-xml-bind-a adresinde belirtildiği gibi, bunları ~/Library/Android/sdk/cmdline-tools/latest/bin/
ve ~/Library/Android/sdk/platform-tools/
ve ~/Library/Android/sdk/emulator/
dizinlerine kuracaktır.
Java sorunları için:
Eğer Android Studio'yu kurduysanız, ana proje görünümünü açabilir ve şuraya erişebilirsiniz: Araçlar --> AVD Yöneticisi.
Sonra, Sanal Cihaz Oluştur butonuna tıklayın.
kullanmak istediğiniz telefonu seçin ve İleri. butonuna tıklayın.
Eğer Play Store yüklü bir telefona ihtiyacınız varsa, üzerinde Play Store simgesi olan birini seçin!
Mevcut görünümde, telefonun çalıştıracağı Android imajını seçip indirebileceksiniz:
Bunu seçin ve eğer indirilmemişse, isminin yanındaki İndir simgesine tıklayın (şimdi imajın indirilmesini bekleyin).
İmaj indirildikten sonra, sadece İleri
ve Tamamla
seçin.
Sanal makine oluşturulacak. Artık AVD yöneticisine her eriştiğinizde mevcut olacak.
Çalıştırmak için sadece Başlat butonuna basın.
Öncelikle kullanmak istediğiniz telefonu belirlemeniz gerekiyor, olası telefonların listesini görmek için şunu çalıştırın:
Bir cihazın adını belirledikten sonra, bu cihazda çalıştırmak istediğiniz Android görüntüsünü seçmeniz gerekir.
Tüm seçenekleri sdkmanager
kullanarak listeleyebilirsiniz:
Ve kullanmak istediğiniz birini (veya hepsini) indirin:
İstediğiniz Android görüntüsünü indirdikten sonra, indirilen tüm Android görüntülerini listeleyebilirsiniz:
Bu anda kullanmak istediğiniz cihazı seçtiniz ve Android imajını indirdiniz, bu yüzden sanallaştırma makinesini oluşturabilirsiniz:
Son komutta "AVD9" adında bir VM oluşturdum ve cihaz "Nexus 5X" ile Android imajı "system-images;android-28;google_apis;x86_64". Artık oluşturduğunuz sanallaştırılmış makineleri listeleyebilirsiniz:
Oluşturulan sanal makineleri nasıl listeleyeceğinizi zaten gördük, ancak bunları da şu şekilde listeleyebilirsiniz:
You can simply herhangi bir sanal makineyi çalıştırabilirsiniz using:
Daha gelişmiş seçenekler kullanarak bir sanal makine çalıştırabilirsiniz:
Ancak, sanal makineyi başlatmak için kullanabileceğiniz birçok farklı komut satırı yararlı seçeneği vardır. Aşağıda bazı ilginç seçenekler bulabilirsiniz, ancak tam listeyi burada bulabilirsiniz
Başlat
-snapshot name
: VM anlık görüntüsünü başlat
-snapshot-list -snapstorage ~/.android/avd/Nexus_5X_API_23.avd/snapshots-test.img
: Kaydedilen tüm anlık görüntüleri listele
Ağ
-dns-server 192.0.2.0, 192.0.2.255
: VM'ye virgülle ayrılmış DNS sunucularını belirtmeye izin verir.
-http-proxy 192.168.1.12:8080
: Kullanılacak bir HTTP proxy belirtmeye izin verir (Burp kullanarak trafiği yakalamak için çok yararlıdır)
-port 5556
: Konsol ve adb için kullanılan TCP port numarasını ayarla.
-ports 5556,5559
: Konsol ve adb için kullanılan TCP portlarını ayarla.
-tcpdump /path/dumpfile.cap
: Tüm trafiği bir dosyada yakala
Sistem
-selinux {disabled|permissive}
: Linux işletim sisteminde Güvenlik Geliştirilmiş Linux güvenlik modülünü devre dışı veya izin verici modda ayarla.
-timezone Europe/Paris
: Sanal cihaz için zaman dilimini ayarla
-screen {touch(default)|multi-touch|o-touch}
: Taklit dokunmatik ekran modunu ayarla.
-writable-system
: Emülasyon oturumunuz sırasında yazılabilir bir sistem görüntüsü elde etmek için bu seçeneği kullanın. Ayrıca adb root; adb remount
komutunu çalıştırmanız gerekecek. Bu, sistemde yeni bir sertifika yüklemek için çok yararlıdır.
Eğer Play Store ile bir cihaz indirdiyseniz, doğrudan root almanız mümkün olmayacak ve bu hata mesajını alacaksınız.
Using rootAVD with Magisk ile bunu kökledim (örneğin bu video veya şu video izleyin).
Özel bir CA sertifikasını nasıl yükleyeceğinizi öğrenmek için aşağıdaki sayfayı kontrol edin:
Install Burp CertificateVM'nin anlık görüntüsünü istediğiniz zaman GUI'yi kullanarak alabilirsiniz:
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)