前期准備:
靶機地址:https://www.vulnhub.com/entry/corrosion-2,745/
kali攻擊機ip:192.168.11.129
靶機地址:192.168.11.180
一、信息收集
1.使用nmap對目標靶機進行掃描
發現開放了22、80和8080端口。
2.80端口
先訪問下80端口:
掃一下目錄:
沒發現什么可利用信息。
3.8080端口
訪問下8080端口:
掃一下目錄:
發現了不少東西,查看一下:
/readme.txt
說在服務器上留了個文件,還有密碼。
/backup.zip
是個壓縮包,下載下來看一下:
但是需要密碼,那就爆破一下:
fcrackzip -D -p /usr/share/wordlists/rockyou.txt -u backup.zip
pw == @administrator_hi5
解壓后查看一下里面的文件,在 tomcat-users.xml 文件里發現有用戶名和密碼:
但是 Tomcat 里登錄不了用戶:
二、漏洞攻擊
不過 msf 有個 Tomcat 上傳webshell的模塊,有用戶名和密碼就可以使用:
設置用戶名密碼和目標靶機:
運行該模塊:
輸入 shell 后就獲得了 Tomcat 用戶,查看一下系統文件:
發現 /home 目錄下有一些信息:
note.txt 文件里說更改了 randy 對主目錄的權限,不能進行刪除和添加。user.txt 文加下有一個flag:
因為 randy 下的文件不能修改,一些關鍵文件也無法查看,而/home/jaye 文件夾里的文件沒有權限查看:
嘗試一下切換成 jaye 用戶,密碼還是用剛才發現的 Tomcat 密碼:
發現可以登錄到 jaye 用戶,查看一下 /etc/passwd 文件:
發現可以用ssh登錄,這樣看着有點不方便,ssh登錄:
發現一些文件,查看一下,發現 Files 文件夾下有個 look 文件:
是系統的look命令,look命令可以越權訪問(https://gtfobins.github.io/gtfobins/look/),
- LFILE=file_to_read
- ./look '' "$LFILE" (我在 FILES 目錄下)
把 /etc/shadow 文件復制下來,,保存到本地。/etc/passwd 文件可以在msf控制台獲取,也可以用上述方式獲取,使用 unshadow 命令生成需要破解的密碼:
unshadow passwd ushadow > pass.txt
用john破解一下:
爆破了好幾個小時,爆出來兩個用戶:
melehifokivai (jaye)
07051986randy (randy)
第一個是已知的,登錄下第二個:
三、提權
查看允許做什么:
說可以運行 /usr/bin/python3.8 /home/randy/randombase64.py,查看下該文件:
發現會以 root 運行這個python腳本,用了base64模塊,查看一下該文件的權限:
發現不能更改該文件,但是他會用python程序運行,我們直接在python程序 base64 模塊里面寫入shell,先找到python中的base64腳本:
發現 base64.py 有權限,寫入shell,vim用不了,用的nano編輯器:
先寫入 os 模塊,在寫入shell:
因為我改的是 python3.8 ,所以以 python3.8 運行 randombase64.py 腳本:
獲得了root權限,查看flag:
完成。