Lab: Username enumeration via different responses (7) | Apprentice

Dinnuhoni Trahutomo
4 min readJun 14, 2024

--

Authentication vulnerabilities

Executive Summary:
Mengeksploitasi kerentanan pada modul otentikasi yang memungkinkan penyerang untuk melakukan enumerasi username dan brute force password. Dalam lab ini, pengguna diinstruksikan untuk menemukan username yang valid melalui perbedaan respons yang halus, dan kemudian brute force password untuk username tersebut guna mengakses halaman akun mereka.

Key Findings:

Full Pen Test Results:
Tekan “ACCESS THE LAB”, kemudian akan terpindah ke tab yang baru.

Saat menekan “ACCESS THE LAB”, kita akan diarahkan ke halaman beranda yang telah disediakan oleh PortSwigger. Lihat ke bagian kanan atas, tekan “My account”.

Disini kita akan mencoba mencari tahu Username dan Password-nya

Berikut adalah list username yang akan kita copy dan paste.
(Candidate usernames)

Berikut adalah list password yang akan kita copy dan paste.
(Candidate passwords)

Ke BurpSuite dan kirimkan username apa saja, misalnya “test” dan password “test”. Tekan login, sebagai permintaan yang dilakukan untuk nanti dikirim ke Intruder.

Kemudian pilih Method dengan isi “POST” dan URL “/login”. Untuk hal ini, terdapat di baris ke-2806, lalu klik kanan dan pilih “Send to Intruder”.

Apabila sudah berada di bagian Intruder, tekan “Clear” yang berada di bagian kanan.

Kemudian pada baris ke-23, pilih bagian isi dari Username lalu pilih “Add” pada bagian kanan dan ke bagian “Payloads”.

Di bagian Payloads, paste semua username yang telah di-copy sebelumnya.

Lalu tekan “Start attack” pada bagian kanan atas.

Kembali lagi ke bagian Proxy, kemudian pilih Method dengan isi “POST” dan URL “/login” sebelumnya dan pilih “Send to Repeater”.

Kemudian pada bagian Repeater, tambahkan beberapa huruf atau abjad pada baris ke-23 untuk Username-nya, kemudian tekan “Send”. Pada bagian Response, pilih “Raw” kemudian cari kata “Invalid username”. Copy kata “Invalid username”.

Kembali lagi ke Intruder, untuk Request ke-8 dan Payload dengan Username “mysql”. Pada bagian Response, di Pretty, terdapat tulisan “Incorrect password”, menandakan bahwa username sudah benar namun password-nya salah.

Hal ini dapat dibuktikan dengan username lain, pada baris yang sama terdapat tulisan “Invalid username”, artinya username “carlos” bukan username yang benar.

Untuk sekarang, username sudah didapatkan.
Username: mysql
Sekarang, mencari password-nya.

Tahap berikutnya yaitu, kembali lagi ke Intruder di bagian Positions. Isi dari username pada baris ke-23 di “Clear” terlebih dahulu, kemudian ganti dengan username yang telah didapatkan sebelumnya yaitu “mysql”.

Selanjutnya, pilih password, kemudian highlight isi dari password-nya dan pilih “Add” di bagian kanan.

Tahap berikutnya sama seperti sebelumnya, copy dan paste semua password yang telah disediakan sebelumnya ke Payloads dan tekan “Start attack”.

Dapat dilihat bahwa terdapat kode “302 Found” dan juga terdapat username pada baris ke-2.

Sekarang kita memiliki informasi mengenai username dan password-nya, yaitu:
Username: mysql
Password: 123456789

Apabila kita mengetik username dan password yang telah diketahui, maka Lab telah selesai.

Kesimpulan:
Dalam lab ini, kita telah berhasil memanfaatkan perbedaan kecil dalam respons aplikasi untuk melakukan enumerasi username dan brute force password. Teknik ini menunjukkan pentingnya memperhatikan detail dalam respons aplikasi untuk mengidentifikasi potensi kerentanan keamanan. Ini juga menggarisbawahi pentingnya menggunakan pesan kesalahan yang konsisten dan aman untuk mencegah enumerasi username oleh penyerang.

Oleh: Dinnuhoni Trahutomo
(2209116006)

Terima Kasih!

--

--