Bug ini saya temukan di tahun 2020 pada sebuah layanan FinTech di Indonesia dimana dengan mengeksploitasi bug tersebut, saya bisa mendapatkan akun admin dan menggunakannya untuk login ke dashboard admin layanan FinTech tersebut.
Berawal dari mengakses website layanan FinTech yang beralamat di https://redacted.co.id, sekilas tidak ada yang salah dengan website tersebut, kemudian saya mencoba menambahkan /.git/ dibelakang url sehingga menjadi https://redacted.co.id/.git/, kemudian saya mendapatkan error 403 yang menandakan url tersebut valid tetapi statusnya forbidden.
Kemudian menggunakan tools gitdumper dan gitextractor, saya berhasil mendapatkan source code asli dari web FinTech tersebut.
Berdasarkan source code yang saya dapatkan tersebut, saya mencoba menganalisa dan menemukan beberapa folder yang menarik seperti folder “BNI” dan “db”.
Kemudian di dalam folder “BNI”, saya menemukan script PHP dengan nama payment-notification.php.
Saya membuka file payment-notification.php tersebut menggunakan text editor dan menemukan variabel menarik didalamnya, yaitu variabel $client_id dan $secret_key yang kemungkinan digunakan untuk transaksi menggunakan Bank BNI.
Kemudian di dalam folder “db”, saya menemukan sebuah file database dump dengan nama kbid_db.sql.
Selanjutnya saya mencoba membuka file kbid_db.sql tersebut menggunakan text editor. Didalamnya saya menemukan query sql yang menarik, yang berisi perintah untuk menyisipkan beberapa akun admin dan kredensialnya kedalam tabel “Admins”. Bagian yang menarik adalah berupa username di dalam kolom “Admin_Name” dan juga password yang berbentuk md5 hash di dalam kolom “Admin_Password”.
Kemudian saya mencoba mendapatkan password dari salah satu user admin yaitu ramli dengan melakukan proses reverse md5 hash kembali ke bentuk aslinya menggunakan salah satu tool online yaitu https://md5online.org/md5-decrypt.html dimana md5 hash yang saya masukkan ternyata menemukan kecocokan dengan database milik md5online.org, sehingga didapatkan untuk username ramli, passwordnya adalah 5t4r3e2w1q.
Kemudian saya mencoba masuk ke dashboard admin dengan mengakses https://redacted.co.id/admin/login.php dan masuk menggunakan kredensial yang sudah saya dapatkan sebelumnya yaitu username ramli dan password 5t4r3e2w1q dan hasilnya saya bisa masuk ke dashboard admin.