
Pengujian dinamis dilakukan untuk mengidentifikasi kerentanan selama pengoperasian aplikasi. Pada artikel ini saya ingin berbagi beberapa cara untuk menguji aplikasi untuk Android. Saya juga akan menunjukkan cara mengkonfigurasi dan mengkonfigurasi peralatan. Siapa peduli, selamat datang ke kucing.
Pengujian dinamis melibatkan menganalisis log aplikasi, menganalisis lalu lintas aplikasi, menemukan bug selama operasi, dll. Untuk pengujian, Anda perlu mengonfigurasi mesin virtual pada Genimotion, seperti dijelaskan di
sini .
Alat apa yang digunakan untuk analisis dinamis:
- BurpSuite;
- Inspakage;
- Pidcat atau aplikasi lain dengan izin baca untuk log.
Cara menguji dengan BurpSuitePertama, Anda perlu mengkonfigurasi proxy dan mengimpor sertifikat. BurpSuite menunjukkan kerentanan aplikasi terhadap penyematan SSL dan dapat menemukan kerentanan yang ada di server yang digunakan oleh aplikasi tersebut.
1. Menginstal proxy
Pertama, Anda perlu melihat informasi tentang antarmuka untuk pengaturan proxy yang benar.
Fig. 1. Informasi tentang antarmuka.Konfigurasikan proksi di BurpSuite.
Fig. 2. Pengaturan proxy pada BurpSuite.Kami memasang proxy pada perangkat yang akan kami uji.
Fig. 3. Pengaturan proxy pada perangkat.Masukkan http [:] // burp / di browser - ini diperlukan untuk mengunduh sertifikat. Dan unduh sertifikat untuk bekerja. Selanjutnya, Anda perlu membuka folder "Unduhan", ada sertifikat yang diunduh. Tekan lama pada sertifikat menampilkan menu di mana kami memilih "Ganti nama" dan mengubah ekstensi untuk .cer dan mengimpor sertifikat.
Fig. 4. Unduh sertifikat /2. Impor sertifikat
Kami masuk ke pengaturan perangkat, menemukan item "Keamanan", lalu pilih "Instal dari SD". Dari folder "Unduhan", pilih sertifikat yang diunduh dan diganti namanya. Setelah itu Anda perlu memberi nama sertifikat.
Fig. 5. Impor sertifikat.
Fig. 6. Impor sertifikat.3. Memeriksa instalasi sertifikat dan melihat lalu lintas melalui BurpSuite.
Fig. 7. Menguji kebenaran impor sertifikat.
Fig. 8. Kami melihat permintaan yang datang dari perangkat.Sekarang Anda dapat menguji interaksi dengan API.
Dimulai dengan Android 7, metode ini menambahkan sertifikat Burp ke tepercaya tidak akan berfungsi untuk sebagian besar aplikasi - secara default, sertifikat pengguna tidak lagi dipercaya. Karena itu, Anda harus melakukan root, berikan sertifikat nama yang benar dan letakkan di direktori sistem. (Komentar oleh y4ppieflu)
Cara menguji InspakageInspekage adalah alat yang memungkinkan pengujian aplikasi Android yang dinamis dan membantu Anda memahami apa yang sedang dilakukan aplikasi dalam runtime. Inspekage menunjukkan pengoperasian aplikasi dengan:
- file
- basis data
- kriptografi
- permintaan http
- string
- log dan lainnya
Fig. 9. Meluncurkan aplikasi untuk pengujian.
Fig. 10. Meluncurkan aplikasi untuk pengujian.Setelah memulai aplikasi, di browser, masukkan https [:] // 192 [.] 168 [.] 100 [.] 198 [:] 8008 pergi ke konsol aplikasi (Gbr. 11).
Fig. 11. Menjalankan konsol di browser.Selanjutnya, buka tab di konsol:
- Preferensi Bersama - Gbr. 12 - menunjukkan interaksi aplikasi dengan sumber daya lokal.
- Serialisasi - Gbr. 13
- Crypto - Gbr. 14 - menunjukkan pekerjaan dengan kriptografi (SSL / TLS tidak termasuk di sini)
- Hash - Gbr. 14
- SQLite - Gambar 15
- HTTP - pic. 16 - dalam BurpSuite tab ini lebih baik diungkapkan
- FileSystems - Gbr. 17 - aplikasi bekerja dengan file
- IPC - Gbr. 18, dll.
Fig. 12. Preferensi Bersama.
Fig. 13. Serialisasi.
Fig. 14. Crypto.
Fig. 15. Hash.
Fig. 16. SQLite.
Fig. 17. HTTP.
Fig. 18. Sistem file.
Fig. 19. IPC.Menguji dengan PidcatPidcat adalah aplikasi yang membaca log operasi aplikasi. Saat menguji, Anda perlu melakukan fungsi aplikasi dan melihat data apa yang masuk ke log kerja. Pada dasarnya, informasi layanan ditampilkan di sana, kebetulan Anda dapat memperoleh beberapa informasi penting, misalnya, salinan cadangan kunci pribadi. Jika perangkat mengandung malware, maka informasi ini dapat jatuh ke tangan penyerang.
Fig. 20. Cadangan kunci pribadi.
Fig. 21. Informasi Rahasia.KesimpulanDalam praktiknya, metode pengujian dinamis dasar aplikasi Android yang kami gunakan dalam
ByteCode berfungsi ditampilkan. Ada juga modul untuk pengujian otomatis dalam kerangka MobSF, tetapi ini membutuhkan artikel terpisah.