[Vulnhub] – DC-1

Pada kesempatan kali ini, penulis ingin berbagi pengalaman mengerjakan Vulnbox pertamanya.

Kita diberikan sebuah VM yang kemudian langkah pertama adalah scan terlebih dahulu untuk mendapatkan IP dari vulnbox kita. Tools yang digunakan adalah netdiscover dan dengan perintah yang digunakan adalah:

$ sudo netdiscover -i wlp3s0 -r 172.20.10.1/24

Dengan output sebagai berikut:

Dari gambar diatas, sepertinya vulnbox target kita ada di dalam IP 172.20.10.9. Berikutnya penulis melakukan port-scanning dengan menggunakan tools nmap, dengan command sebagai berikut:

$ nmap -A -v -p1-65535 172.20.10.9

Dengan output sebagai berikut:

Dari gambar diatas, kita bisa mengetahui bahwa selain port 22 yakni SSH, ada juga website yang berjalan di port 80 dengan menggunakan CMS (Content management system) Drupal v7 (Perlu diingat karena akan berguna untuk kedepannya) dan RPC yang berjalan di port 111. Untuk SSH karena kita belum mempunyai informasi yang cukup, kita belum bisa mendapatkan akses di port tersebut. Kalau begitu mari kita ke port berikutnya yakni 80. Berikut isi dari port 80:

Ternyata kita harus melakukan login terlebih dahulu untuk mengakses bagian dalam dari website tersebut. Jika diingat kembali, di hasil port-scanning, website tersebut memiliki robots.txt (Informasi mengenai robots.txt dapat dilihat di link). Mari kita lihat isi dari robots.txt:

Jika dilihat dari robots.txt ini, tidak ada yang menarik. Sampai sini, penulis stuck sekitar beberapa puluh menit sampai menyadari kembali bahwa website ini menggunakan Drupal v7. Penulis pun langsung mencari apa saja exploit yang tersedia untuk Drupal v7 di teman baik kita yakni G O O G L E. Setelah beberapa saat mencari, penulis menemukan sesuatu yang menarik yakni exploit yang bernama Drupalgeddon.

Exploit ini memungkinkan kita untuk mendapatkan Remote Code Execution (RCE). Dari sana, penulis langsung coba mencari exploit itu di Metasploit Framework (msfconsole):

Ternyata ada (yeay!), penulis pun menggunakan exploit tersebut dan set RHOSTS ke IP target yakni 172.20.10.9:

Setelah siap, tinggal GO!

YESH! Exploit berhasil dan kita berhasil masuk ke meterpreter. Dari ini penulis mencari langkah selanjutnya dari list command meterpreter dan menemukan sesuatu:

Terdapat command shell yang memungkinkan kita untuk spawn shell.

Dari shell yang berhasil kita spawn, kita hanya masuk sebagai www-data. Dari sana, penulis mencoba melakukan directory listing dan menemukan flag pertama:

Flag 1:

Every good CMS needs a config file – and so do you.

Dalam flag pertama ini kita mendapatkan clue baru untuk menuju flag kedua, yaitu ada sesuatu dalam config dari Drupal ini. Penulis pun mencari config file tersebut dan menemukan di dalam sites/default/settings.php.

Jika ada default, maka ada yang diubah. Maka dari itu, mari kita lihat isi dari settings.php.

YESH flag kedua:

Flag 2:

Brute force and dictionary attacks aren’t the

* only ways to gain access (and you WILL need access).

* What can you do with these credentials?

Tidak hanya itu, kita juga mendapatkan credential untuk mysql dari Drupal tersebut:

MySQL username: dbuser

MySQL password: R0ck3t

Jika kita lihat dari clue yang terdapat di flag kedua, kita perlu mencari sesuatu dalam MySQL. Then, let’s go!

Didalam database drupaldb terdapat 80 tables:

Dari situ, ada table yang menarik yakni users. Mari kita lihat isinya:

Disini dapat kita lihat ada 2 users yaitu admin dan Fred. Disana juga terdapat hash dari password mereka:

Disini kita punya 2 pilihan:

  • Crack hash dengan Hashcat dan rockyou wordlist (INSANE)
  • Menggali lebih dalam lagi MySQL yang ada untuk kemungkinan informasi menarik (Saran dari mentor penulis) (Lama dan BARBAR h3h3h3).

Dari sini, dikarenakan komputer penulis akan langsung freeze jika menjalankan Hashcat, maka penulis menggunakan cara kedua yakni menjelajahi MySQL lebih dalam untuk kemungkinan informasi menarik. Setelah sekitar beberapa menit mencari, penulis mendapatkan flag ketiga di table search_dataset:

Flag 3:

special perms will help find the passwd but you ll need to exec that command to work out how to get what’s in the shadow

Hmm, passwd. Mungkin kita diminta untuk melihat isi dari /etc/passwd terlebih dahulu untuk clue berikutnya:

Dalam file tersebut, kita mendapatkan informasi bahwa ada user flag4 (lihat bagian paling bawah dari file passwd). Mari kita akses directory tersebut untuk mendapatkan flag berikutnya:

Flag 4 didapat!

Can you use this same method to find or access the flag in root?

Probably. But perhaps it’s not that easy. Or maybe it is?

Dari clue berikutnya, sepertinya tahap selanjutnya adalah privilege escalation. Penulis pun kembali ke teman baik G O O G L E untuk mencari informasi mengenai Linux Privilege Escalation.

Dalam link berikut, terdapat beberapa cara seperti DirtyCow dan cara lainnya seperti dari SUID atau setuid (Informasi mengenai SUID dapat dilihat di link berikut). Penulis pun menggunakan cara yang SUID. Langkah-langkahnya terbagi sebagai berikut:

  • Mencari file executable yang memiliki SUID
  • Menggunakan executable yang memiliki SUID tersebut untuk Privilege Escalation

Dari langkah pertama, penulis menggunakan command sebagai berikut:

$ find / -perm -u=s -type f 2>/dev/null

Command ini akan mencari file mana saja yang memiliki s dalam permission-nya. Berikut outputnya:

Dan ternyata, command find yang kita gunakan pun memiliki permission tersebut. Berikutnya kita hanya tinggal menggunakan command tersebut untuk melakukan Privilege Escalation. Command yang digunakan adalah:

$ find / -exec ‘/bin/sh’ \;

Parameter exec pada command ini dapat digunakan untuk Arbitrary Code Execution.

YEAH! Kita dapat root. Berikutnya dari flag keempat, kita diminta untuk meng-akses flag terakhir yang hanya bisa dibuka oleh root. Maka dari itu langsung saya kita gaspol!

Flag 5:

Well done!!!!

Hopefully you’ve enjoyed this and learned some new skills.

You can let me know what you thought of this little journey
by contacting me via Twitter – @DCAU7

Dengan ini perjalanan penulis di Vulnbox ini sudah selesai (iyalah dah root kok h3h3h3).

One Reply to “[Vulnhub] – DC-1”

Leave a Reply

Your email address will not be published. Required fields are marked *