Kategori
IT Jaringan Pentesting Security

Berawal dari Reconnaissance, berakhir dengan RCE

Singkat cerita, sekitar 2 tahun lalu ada seorang teman (sebut saja bungo, soalnya laki-laki) yang menawarkan untuk mengetes keamanan website kantornya dan dia juga menawarkan sedikit hadiah bila ada celah yang bisa ditemukan. Saya sebagai seorang newbie yang belum tau apa-apa ini pun merasa ini kesempatan yang bagus untuk belajar. Akhirnya saya ambil tawaran tersebut dan mulai melakukan reconnaissance terhadap website target yang diberikan, dari hasil kegiatan tersebut saya mendapatkan informasi bawa website tersebut dibuat menggunakan WordPress. Berdasarkan informasi tersebut kemudian saya menggunakan WPScan untuk memeriksa apakah kemungkinan ada vulnerability di website target, dan hasilnya ternyata versi wordpress dan semua plugin sudah up to date (pada waktu tersebut) 🙁

Gambar 1. Hasil pemeriksaan WPScan

Setelah hampir menutup laptop karena melihat hasil yang didapat, tiba-tiba terbesit sekali lagi untuk melihat hasil vulnerability scanner tersebut dan ternyata saya menemukan sesuatu yang menarik dan itu adalah file xmlrpc.php yang terdapat di website tersebut dan bisa direct access.

Gambar 2. Ditemukan file xmlrpc.php pada website target

Kemudian seperti yang anda pikirkan juga, melihat file tersebut bisa direct access saya juga terpikir untuk melakukan bruteforce login. Jadi terlebih dahulu saya mencari tau informasi user yang ada pada website tersebut dan ternyata bisa saya dapatkan dengan mudah.

Gambar 3. User pada website ditemukan

Akan tetapi hasilnya sangat tidak bagus, setelah melakukan 5 kali percobaan login dengan menebak password, saya langsung terkena ban 😀

Gambar 4. Terkena ban dikarenakan 5 kali percobaan login gagal

Berdasarkan pengalaman saya, rata-rata password yang dimiliki administrator di kantor-kantor yang tidak terlalu memperhatikan keamanan IT, menggunakan kombinasi nama perusahaan, tahun, jabatan atau hal-hal lain yang berkaitan dengan perusahaan tersebut, jadi saya mencoba menggunakan lingkup guessing yang lebih sempit dengan mencari tahu informasi-informasi lainnya dari perusahaan tersebut menggunakan whois dan maltego.

Gambar 5. Mencari informasi target dengan whois
Gambar 6. Menggunakan maltego untuk mencari informasi target (1)
Gambar 7. Menggunakan maltego untuk mencari informasi target (2)
Gambar 8. Menggunakan maltego untuk mencari informasi target (3)

Kemudian saya menggunakan informasi-informasi tersebut untuk membuat beberapa password wordlist menggunakan BEWGor sebagai modal melakukan bruteforce login. dimana saya membatasi satu password wordlist hanya memiliki 5 baris kemungkinan password. Hal ini dikarenakan berdasarkan percobaan sebelumnya setelah 5 kali percobaan login maka akan terkena ban. Dikarenakan adanya sistem ban tersebut, setiap percobaan menggunakan satu password list gagal, sebelum pindah menggunakan password list berikutnya saya pun melakukan restart modem agar ip nya berganti sehingga saya bisa melakukan proses bruteforce selanjutnya (Bersyukur masih menggunakan paket rumahan operator pelat merah waktu itu, jadi gampang ganti ip) :D. Dan hasilnya, saya bisa mendapatkan informasi password yang tepat pada percobaan ke 4.

Gambar 9. Informasi password yang tepat akhirnya didapatkan

Kemudian tentu saja, saya langsung mencoba login ke dashboard dan berhasil.

Gambar 10. Login ke dashboard wordpress website target

Setelah berhasil login, saya kemudian memasukkan shell kedalam website tersebut, dimana saya menggunakan salah satu shell yang gampang didapatkan yaitu p0wny.

Gambar 11. Proses memasukkan shell kedalam website target

Setelah proses memasukkan shell selesai, tentu saja selanjutnya melakukan eksekusi 😀

Gambar 12. Shell berhasil dijalankan di website target (1)
Gambar 13. Shell berhasil dijalankan di website target (2)
Gambar 14. Shell berhasil dijalankan di website target (3)

Dan tentu saja setelah menunjukkan bukti-bukti tersebut, saya mendapatkan sedikit reward dari teman saya walaupun dengan cara yang agak sedikit memaksa :D. Kemudian setelah selesai, saya menghapus shell dan kemudian memberi sedikit masukan kepada teman saya untuk mencegah hal yang sama terjadi di kemudian hari.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *