黑客進階——服務端請求僞造漏洞的挖掘思路和分析

今天給大家分享的是關於ssrf這個漏洞的挖掘思路和分析

概念:SSRF(Server-Side Request Forgery),服務器端請求偽造,利用漏洞偽造服務器端發起請求,從而突破客戶端獲取不到數據限制

這裡的Server-side-request-forgery不知道同學們有沒有發現他和我們的csrf Cross-site request forgery 很像,其實啊csrf針對的是客戶端,而我們的ssrf針對的是服務端

比如我們發現了某網站存在ssrf我們可以去讓該網站訪問本地的127.0.0.1還可以去進行探測內網等操作,所以ssrf的危害還是很大的

口說無憑,我們啟動我們的ssrf靶機

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

這個就是我們的ssrf靶機環境了,首先我們可以嘗試輸入一些東西在url內

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

這裡輸入123456之後報錯了,我們發現他有一個file-get-contents函數

這是就要給大家引入這個函數的用法了

該函數功能有兩個可以是post或者get,我們這裡貼出get請求的代碼

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

如上是演示代碼

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

如上是ssrf的靶場的代碼

我們發現了這個file_get_contents函數我們只需吧url作為參數傳進去就可以了

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

成功加載了百度的頁面我們這是就要理解一下他的原理了

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

可能圖不太好看但是理論沒問題

簡單的理論過後我們走入最簡單的一個ssrf漏洞

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

這就是我的ip 111開頭的

我們打開某翻譯平臺然後粘貼url

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

成功獲取了該翻譯平臺的ip

這裡利用的是平臺的網頁翻譯功能,能夠輔助用戶去翻譯網頁的內容,當服務器去訪問時也就產生了ssrf漏洞

,那麼我們如何挖掘ssrf漏洞呢?

1. 漏洞掃描器的發現

這裡我們推薦burpsuite_pro的scnner模塊

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

圖為burpsuite_pro支持的漏洞,這裡只截圖了一小部分,後面還有很多很多,而且可擴展

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

我們把正常的請求包直接進行active scan 這樣就可以去發現ssrf漏洞了

這裡他掃出來的時外部服務交互,其實也就是ssrf漏洞

2. 手工發現很多地方的url可能時被base64位加密過的這個需要大家自己去發現

然後就是常出現漏洞的位置,比如我們提到的翻譯處,還有圖片的引用,以及其他的地方可能導致服務端去請求我們可控url的都可以作為我們的ssrf漏洞挖掘點

這裡我們有些事無回顯的那麼我們怎麼能去挖掘ssrf呢

這裡我們就要介紹一款工具netcat,這款工具在反彈shell的時候我相信大家都不陌生吧,我們只需要在服務器上開啟我們的netcat工具

執行命令為"nc -l -p 1234"這個時候我們用ssrf漏洞去嘗試訪問,這樣我們通過nc來驗證我們的ssrf漏洞了

這裡我們的nc在監聽1234端口,然後我們去利用ssrf漏洞去訪問,

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

黑客進階——服務端請求偽造漏洞的挖掘思路和分析

最終成功驗證了ssrf漏洞,大家在驗證的時候公網中也是同樣的方法

在這裡我們順便介紹一下nc吧

我們用到了 –l 和 -p 這樣就能監聽連接我們服務器1234端口了

總結

關於ssrf漏洞我個人認為危害比較大,因為可以利用的姿勢太多太多,也就導致了危害的增大,希望大家能夠早日挖到ssrf漏洞哦!


分享到:


相關文章: