Hardcoding Issues - Part 1
Hardcoding Sensitive Information within Android APK a Security Risk
Last updated
Was this helpful?
Hardcoding Sensitive Information within Android APK a Security Risk
Last updated
Was this helpful?
Seringkali developer melakukan kesalahan dengan menyimpan informasi sensitif pada source code aplikasi seperti: password, PIN, token, informasi internal development, dan sebagainya. Baik dilakukan secara sengaja maupun tidak disengaja untuk mempermudah developer dalam menyimpan informasi sensitif pada aplikasi.
Reverse Engineering adalah proses untuk mendapatkan kembali source code dari binari yang telah dikompilasi seperti APK. Jadi dengan melakukan reverse engineering kita bisa mendapatkan source code (tidak 100%) dari binari aplikasi tersebut.
Bagian aplikasi yang akan kita bahas kali ini memiliki fitur validasi vendor key untuk mendapatkan akses.
Perhatikan baris ke-12. Validasi yang dilakukan oleh program langsung menggunakan informasi sensitif, yaitu nilai dari vendor key yang valid (vendorsecretkey
).
Sekarang kita bisa mendapatkan akses pada fitur tersebut, karena kita bisa mendapatkan vendor key yang valid dengan melakukan reverse engineering.
Kita akan mencoba mencari vendor key yang valid dengan melakukan pada APK dan mencari kerentanan hardcoding yang mungkin developer menyimpan informasi vendor key pada source code.
Developer seharusnya tidak menyimpan informasi sensitif seperti credentials ke dalam source code. Walaupun terdapat teknik untuk mempersulit seseorang melakukan reverse engineering, hal tersebut tidak sepenuhnya menghentikan kegiatan reverse engineering.