[VULNHUB] Os-hacknos-2

Zaidan Rizaki
4 min readDec 17, 2019

Information Gathering

Nmap

nmap -sV -sC -p- hacknos.vh -oN initial.nmap -v

Server cuma menjalankan SSH dan web server.

Directory Scanning

dirb http://hacknos.vh /usr/share/wordlists/common.txt
Hasil scan dirb

Dari hasil scan dengan dirb menunjukkan server menggunakan CMS Wordpress.

WPscan

wpscan adalah salah satu tools yang sering digunakan untuk melakukan scanning di web yang menjalankan Wordpress. Umumnya wpscan digunakan untuk mengetahui versi wordpress, tema, dan plugin yang terpasang.

wpscan --url http://hacknos.vh/tsweb/ 
Hasil scan wpscan

Ternyata web target menggunakan plugin grace-media-player, cari nama plugin + ‘vulnerability’ maka ketemu bug LFI [exploit.db].

Local File Inclusion (LFI) adalah kerentanan/vulnerability yang umum ditemukan pada aplikasi web. Kerentanan ini memungkinkan penyerang/attacker untuk menyertakan file lokal yang tersimpan di server agar dapat menjadi bagian dari proses eksekusi aplikasi. (harryadinanta.com)

Attacking

Setelah mengetahui ada bug LFI di web diatas, coba buka link yang kemungkinan vulnerable.

http://hacknos.vh/tsweb/wp-content/plugins/gracemedia-media-player/templates/files/ajax_controller.php?ajaxAction=getIds&cfg=../../../../../../../../../../etc/passwd

Dan kita mendapatkan informasi user dan group di server dan ada hash password user ‘flag’ dibawah :D

Langkah selanjutnya adalah password cracking menggunakan john. Pertama copy data hash user flag ke file txt.

echo 'flag:$1$flag$vqjCxzjtRc7PofLYS2lWf/' > flag_hash

Lalu crack dengan john.

john flag_hash /usr/share/wordlists/rockyou.txt

rockyou. txt contains 14,341,564 unique passwords, used in 32,603,388 accounts. Kali Linux provides this dictionary file as part of its standard installation.. gampangnya rockyou.txt adalah file berisi password dengan kekuatan lemah.

Tunggu selesai lalu s̶i̶a̶p̶ ̶d̶i̶h̶i̶d̶a̶n̶g̶k̶a̶n̶ buka flag_hash menggunakan john.

john --show flag_hash

Dari hasil diatas maka kita telah mendapat username dan password untuk user flag.

SSH dengan user flag

Sebelumnya yang kita ketahui adalah kita bisa mendapat file passwd server, dan di dalam file tersebut terdapat informasi user, group, homedir, dan shell user terkait. Salah satu hal yang cukup menarik perhatian adalah adanya user ‘backup’ dengan homedir di /var/backups. Dan biasanya dalam CTF direktori backup adalah tempat bersemayamnya file-file konfigurasi server, database, hingga password yang bersangkutan :D

Setelah kita login dengan user flag, ternyata kita hanya mendapat akses shell restricted. Yang mana kita tidak bisa melakukan command yang direstrict oleh si owner.

Salah satu cara untuk membypass restricted shell adalah dengan memanggil shell (/bin/sh) dengan salah satu bahasa pemrograman yang tersedia dalam suatu server. Karena di server ini terdapat python maka gunakan python.

python3 -c "import pty; pty.spawn('/bin/sh')"

Kita dapat akses shell dan bisa menjalankan semua command non-sudo.

Referensi untuk bypass restricted environtment ataupun melakukan privilege escalation di sistem Linux dapat di cek di GTFObins atau ExploitDB.

Langkah selanjutnya adalah memeriksa isi /var/backups dan ternyata ada direktori passbkp yang berisi MD5 hash password untuk user rohit :)

“Another password cracking, another GPU burning”

Lakukan password cracking dengan john lagi.

Dan ternyata crackingnya cukup memanaskan laptop karena kombinasi passwordnya lumayan rumit...

SSH dengan user rohit

Login dan kita dapat flag user :)

Next kita harus dapat root flag yang berada di /root yang pastinya cuma bisa diakses oleh si root sendiri. *Yo dawg*

Privilege Escalation

Hal wajib untuk privesc di sistem Linux adalah linenum.sh, copas/download lalu jalankan script tersebut.

Dan ternyata kita masuk ke group lxd yang bisa punya permission untuk melakukan sudo (sudoers). Dengan ini kita hanya perlu “sudo su” untuk masuk ke user root :D

Sekian writeup Os-hacknos-2 ini, thanks!

--

--

Zaidan Rizaki

Ordinary high school kid who has big interest in networking and information security stuff.