Dynamic Analysis
Pada android pentesting, selain melakukan static analysis juga terdapat metode lainnya yaitu dynamic analysis. Dynamic analysis merupakan teknik pengujian keamanan yang dilakukan dengan menjalankan aplikasi pada environtment yang terkontrol dan memantau perilakunya secara real-time. Tujuannya dynamic analysis yaitu untuk mengidentifikasi kerentanan dan potensi risiko keamanan yang mungkin tidak terdeteksi oleh analisis statis (analisis kode tanpa menjalankan aplikasi).
Salah satu cara untuk melakukan dynamic analysis yaitu dengan menggunakan drozer. Drozer merupakan framework security untuk pengujian keamanan atau penetration testing. Drozer merupakan tool yang dapat digunakan untuk mobile device reveiw, pengembangan aplikasi yang aman, BYOD approval, dan mobile application testing.
Pertama-tama, jalankan drozer agent pada perangkat android dan hubungkan dengan perangkat komputer.


Jika sudah, lakukan attack surface pada aplikasi target dan dapatkan kerentanan dengan menggunakan perintah berikut pada drozer.
run app.package.attacksurface <<identifier name application>>

Dari hasil attack surface yang telah dilakukan, diketahui terdapat 5 activities, 1 broadcast receivers dan 1 content providers. Aplikasi target juga menggunakan mode debug. Informasi ini bermanfaat menjadi titik awal untuk melakukan analisa terhadap aplikasi target mengenai kerentanan komponen yang dimilikinya.
Seperti yang telah diketahui, drozer telah mendapatkan informasi bahwa terdapat 5 activities pada aplikasi target. Untuk mendapatkan informasi lebih lanjut mengenai activities tersebut, dengan menggunakan tool drozer ini dapat menggunakan perintah berikut.
run app.activity.info -a <<identifier name application>>

Dari perintah yang telah dijalankan, didapatkan informasi mengenai permission apa saja yang diperlukan pada setiap activitiesnya.
Dari gambar diatas, didapatkan informasi bahwa seluruh activites yang ada memiliki permission null, yang artinya aplikasi apa pun dapat meluncurkannya. Sebagai contoh, kesalahan konfigurasi ini dapat digunakan untuk melakukan login bypass.
Selanjutnya jalankan perintah berikut untuk mendapatkan informasi mengenai receiver.
run app.broadcast.info -a <<identifier name package>>

Terlihat pada gambar diatas, menunjukan bahwa terdapat receiver yang bernama MyBroadCastReceiver dengan permission null. Sebelum dapat memanfaatkan receiver ini, harus melakukan identifikasi apa yang dilakukan receiver tersebut.

Seperti yang dapat dilihat pada gambar source code diatas, untuk triggering broadcast receiver tersebut terdapat 2 parameter yang diambil yaitu phonenumber dan juga newpass. Dan nantinya pesan tersebut akan menampilkan credentials pengguna yang sedang login atau credentials yang pernah digunakan login pada perangkat tersebut.
Thanks, Stay Ethical & Happy Hacking! 🍻
Last updated