前期准備:
靶機地址:https://www.vulnhub.com/entry/doubletrouble-1,743/
kali攻擊機ip:192.168.11.129
靶機 ip:192.168.11.182
一、信息收集
1.使用nmap對目標靶機進行掃描
發現開放了22和80端口
2. 80端口
是個登錄界面,用的是 qdPM 9.1 系統,掃一下目錄看看有沒有什么發現:
查看一下可用的信息:
發現了文件的上傳目錄:
在 /secret 目錄下發現了一個可疑圖片:
不像是系統里的圖片,應該是提示信息,下載下來圖片
3.圖片隱寫
看看有沒有隱寫:
發現有密碼,那應該思路沒錯,用隱寫爆破工具 stegseek 爆破一下:
查看接出來的 output 文件:
發現郵箱和密碼,登陸一下網站:
**otisrush@localhost.com
otis666
**
二、漏洞利用
查看一下網站,看看有沒有什么可利用的點,之前掃出來的目錄有上傳文件的目錄,找找有沒有可以上傳文件地方:
發現修改個人信息里有上傳圖片地方,不知道檢不檢查文件格式,寫一個php shell文件上傳一下試一試:
shell 文件用的是 https://www.revshells.com/ 中的 PHP pentestmonkey,自動就能生成,很方便的網站。
上傳之后報錯了:
看一下 /uploads 目錄:
發現其實上傳成功了,那就訪問一下並監聽:
寫入交互式shell:
三、提權
查看一下權限:
發現是以root權限運行的 awk,awk 是一種處理文本文件的語言的文本分析工具。可以進行提權(https://gtfobins.github.io/gtfobins/awk/):
sudo awk 'BEGIN {system("/bin/sh")}'
發現得到root權限。查看一下系統中的文件:
在 /root 下發現了一個鏡像,其他的沒有什么發現。只能開個把這個鏡像下載下來。
四、第二台靶機
安裝一下這個鏡像,這就不多說了。
地址是 192.168.11.183,使用nmap對第二台目標靶機掃描
發現開了22和80端口,訪問一下80端口:
是個登錄窗口,嘗試登陸了一下,什么也沒變化。
五、sql注入
推測有某種sql注入,懶得手測,直接上sqlmap:
發現是易受基於時間的sql注入,爆下數據庫:
sqlmap -u "http://192.168.11.183/" -forms -dbs
爆下 doubletrouble 數據庫的表:
sqlmap -u "http://192.168.11.183/" -forms -D doubletrouble --tables
發現 users 表,爆下表信息:
sqlmap -u "http://192.168.11.183/" -forms -D doubletrouble -T users --dump
發現兩個賬號,ssh登陸一下:
只有 clapton 用戶能登進去,查看一下系統文件:
發現 clapton 用戶的主目錄中有一個flag。然后進行提權。
六、第二台靶機提權
查看一下系統信息:
發現是 Linux 內核 3.2.x。而且,有一個著名的漏洞 “Dirty Cow” 已經影響了包括這個在內的很多版本。
參考:https : //github.com/FireFart/dirtycow/blob/master/dirty.c
把這個源碼復制下來編譯一下:
gcc -pthread dirty.c -o dirty -lcrypt
然后執行 ./dirty root
這里是創建了一個密碼為 root 的 root 用戶 firefart。此外,它還將原始 /etc/passwd 文件備份為 /tmp/passwd.bak。一旦我們獲得了用戶,我們
就可以通過 SSH 進入它,切換到 firefart 用戶。
這里就拿到root了,查看flag:
這里還可以改 root 的密碼。