Kali ini saya akan menjelaskan tentang hasil eksploitasi saya terhadap kerentanan kerentanan (vulnerability) yang ada pada metasploitable2 machine menggunakan tools metasploit yang berisi berbagai macam exploit hingga mendapatkan beberapa kali privilege escalation.

Port scanning menggunakan Nmap

Ini dilakukan untuk menemukan tiap port yang terbuka dan service service yang running di dalamnya beserta versinya.

None
Nmap command
  • sC → menggunakan default script nmap
  • -sV → menampilkan versi dari service yang running pada tiap port
  • -T4 → tingkat agresivitas scan dimana maksimalnya adalah T5
  • -p- → scan terhadap semua port yang ada, sedangkan secara default nmap hanya melakukan scan terhadap 1000 most common port
None
nmap result

Ada banyak port yang terbuka dan service yang running, tidak hanya yang tertera pada gambar.

Masuk ke console Metasploit

None
metasploit console

Sebelum melanjutkan ke tahap selanjutnya perlu diketahui bahwa saya mengeksploitasi running service secara acak, tidak berdasarkan urutan nomor port yang terbuka yang ada pada hasil scan nmap.

Exploiting Service → PostgreSQL

None
postgresql version
  1. Searching for Exploit

Dari hasil nmap tersebut diketahui bahwa postgresql yang running adalah versi 8, informasi ini akan digunakan untuk mencari exploit yang tepat di metasploit dengan keyword "search".

None
exploit list for postgresql version 8

2. Exploitation and Gaining Access

Didapatkanlah hasil list exploit yang tersedia di metasploit untuk postgresql versi 8. Saya mencoba satu per satu dari exploit yang teratas tapi belum ada yang berhasil, hingga akhirnya sampai ke exploit nomor 19.

None
exploit no. 19

Lalu mengecek informasi apa saja yang harus diisi pada exploit tersebut sebelum exploit dieksekusi, menggunakan keyword "options".

None
exploit no. 19 options

Selanjutnya mengisi informasi informasi yang diharuskan untuk diisi, ditandai dengan kata "yes" pada kolom required. Kemudian mengeksekusi exploit-nya.

None
exploit execution

Dapat dilihat dari gambar diatas, bahwa exploit sukses dijalankan dan berhasil mendapatkan akses ke shell bertipe meterpreter, tapi masih bukan berupa user root, maka perlu melakukan tahap selanjutnya.

3. Privilege Escalation

Saya menggunakan local_exploit_suggester untuk meng-enumerasi mana saja exploit yang dapat digunakan untuk melakukan privilege escalation berdasarkan shell meterpreter yang sudah didapat.

None
local_exploit_suggester

local_exploit_suggester hanya membutuhkan informasi nomor session dari shell yang akan dilakukan privilege escalation, dalam hal ini yaitu session nomor 1, karena baru ada 1 sesi shell yang terbuka.

None
list of privilege escalation exploit

Didapatkanlah list yang exploit yang dapat digunakan untuk melakukan privilege escalation, yaitu yang berwarna hijau, sedangkan yang merah tidak bisa.

Urutan penggunaannya yang pertama adalah yang menunjukkan "target is vulnerable", lalu "target appears to be vulnerable", kemudian yang lainnya. Maka pertama saya menggunakan yang nomor 6.

None
exploit/unix/local/setuid/nmap

Seperti biasa, mengisi informasi informasi yang diperlukan oleh exploit tersebut lalu mengeksekusinya.

Namun exploit tersebut ternyata masih belum berhasil atau proses privilege escalation gagal. Maka saya beralih ke exploit lainnya, yaitu yang nomor 1.

None
exploit/linux/local/glibc_ld_audit_dso_load_priv_esc