Penetration Test Aplikasi Mobile Android Part 1

Hello fellas,

Saya mau coba share cara pentes aplikasi mobile di android nih masih newbee juga sih, tapi semoga bermanfaat 😀
mulai dari static analysis tools yang saya pake :

  • dex2jar
  • jd-gui

Seperti biasanya kalo yang namanya .apk cuma file archive doang kita bisa langsung extract, caranya rename dulu jadi .zip terus extract deh atau bisa pake apktool buat decompile .apk nya2016-06-07_00-49-46

Terus kalo udah di extract/decompile jadinya kaya diatas tuh, nah bakalan ketemu file .dex itu Dalvik Executeable bisa cari di google kalo kepo tentang Dalvik itu apa.

Disini ada dua file .dex itu tergantung aplikasinya kadang satu, kadang dua atau bisa lebih dari dua, gausah bingung ujungnya bakal sama aja kok mau berapapun file .dex nya.

Pertama kita pake tools dex2jar buat decompile .dex menjadi .jar

2016-06-07_01-21-45

Kalo udah jadi .jar kaya diatas kita bisa open .jar nya pake jd-gui atau kita extract lagi .jar nya sekarang kita coba dulu buka pake jd-gui2016-06-07_01-29-15

Nah kalo .jar nya di open bakal kaya diatas tuh si jd-gui punya kemampuan buat baca file .class jadi source code javanya keliatan semua deh, jd-gui juga bisa nge-decompile .class nya jadi .java tinggal save all sources di menu file.

Terus enak banget dong kalo semua isi .apk source nya bisa dibaca semua orang?? jawaban nya betul semua orang bisa baca source code yang ada di dalem .apk tapi ada caranya untuk mencegah attacker ngebaca alur program yang ada, pake teknik obfuscate jadi semua class, variable dll yang ada di source bakalan di acak-acak, kira-kira kaya gini nih contoh yang di obfuscate.

2016-06-07_02-05-34

Kaya diatas gitu tuh setau saya cara mencegah agar attacker sulit baca alur program, pada source code di obfuscate jadi nama class, variable dll nya jadi a,b,c,d sampe seterusnya, bikin agak ribet aja sih tapi kayanya kalo dibaca pelan pelan juga attackernya ngerti2 juga 😀

Biar gampang analisanya kita decompile lagi nih .class jadi .java biar kalo di grep enak, kan susah tuh kalo ketemu yg .class nya banyak dibaca di jd-gui satu-satu pegel juga. Dari jd-gui tinggal pilih menu file terus pilih “save all sources”.

2016-06-07_02-30-15Nanti bakalan jadi zip terus extract deh kaya diatas tuh. Lanjut kita cari backend/api nya ini aplikasi kemana ya biasanya kalo source nya ga di obfuscate alamat ip sama path url nya bisa keliatan hehe

2016-06-07_02-37-47Ketemu juga tuh ip sekalian sama portnya, saya filter cari kata “http” di semua source .java nya akhirnya dapet 1 ip sama 1 domain, nah sekarang mau filter berdasarkan alamat ipnya biar keliatan ada url apa aja di dalem aplikasi ini.

2016-06-07_02-46-16Yap selamat kita dapet semua url yang dia request serenceng sama method apa yang dia gunain dan parameter apa aja yang dibutuhin. Di kasus ini saya grep terakhir di port 3006 karena setelah di lihat-lihat port 3006 nya untuk store data dan port 3002 nya cuma untuk upload image. Kita lanjut part 2 see yaa..

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s