天天看點

如何使用SSRFire自動掃描和發現SSRF漏洞

作者:白帽hacker淬煉

關于SSRFire

SSRFire是一款針對漏洞的自動化漏洞挖掘工具,在該工具的幫助下,廣大研究人員隻需要給該工具提供一個目标域名和伺服器資訊,SSRFire将幫助我們自動挖掘出潛在的SSRF漏洞。除此之外,該工具還可以挖掘XSS以及開放重定向等安全漏洞,功能算是十分強大了。

什麼是SSRF漏洞?

SSRF(Server-Side Request Forgery)服務端請求為僞造,SSRF是一種由攻擊者構造形成由服務端發起請求的一個安全漏洞。 一般情況下,SSRF攻擊的目标是從外網無法通路的内部系統。(正是因為它是由服務端發起的,是以它能夠請求到與它相連而與外網隔離的内部系統) SSRF漏洞形成的原因大多是因為服務端提供了從其他伺服器應用擷取資料的功能且沒有對目标位址作過濾和限制。

工具要求

由于該工具基于GAU、FFUF、qsreplace和OpenRedirex等工具開發,是以我們需要在本地裝置上安裝并配置好Go和Python 3.7+環境。我們不需要自己去手動安裝這些工具元件,因為SSRFire提供的安裝腳本setup.sh可以自動幫我們安裝完成。我們隻需要安裝好Go和Python 3.7+環境即可。需要注意的是,就算你已經安裝好了上述工具元件,我們也建議大家重新安裝一次,這樣就不會有什麼像路徑沖突這樣的意外情況出現了。

如果你不想重新安裝的話,請将下列代碼粘貼到項目的.profile檔案中,對工具元件進行描述。接下來,修改ssrfire.sh的第十行,替換你的.profile檔案路徑:

#Replace /path/to/ with the specific directory where the tool is installed

#If you already have configured paths for any of the tools, replace that code with the below one.

ffuf(){

        echo "Usage: ffuf https://www.domain.com/FUZZ payloads.txt"

        /path/to/ffuf/./main -u $1 -w $2 -b $3 -c -t 100

}

 

gau(){

        echo "Usage: gau domain.com"

        /path/to/gau/./main $1

}

 

gau_s(){

/path/to/gau/./main --subs $1

}

 

openredirex(){

        echo "Usage: openredirex urls.txt payloads.txt"

        python3 /path/to/OpenRedireX/openredirex.py -l $1 -p $2 --keyword FUZZ

}

qsreplace(){

/path/to/qsreplace/./main $1

}           

工具下載下傳

廣大研究人員可以使用下列指令将該項目源碼克隆至本地:

git clone https://github.com/ksharinarayanan/SSRFire.git           

工具使用

chmod +x setup.sh

./setup.sh (preferably yes for all ---> **highly recommended**)

./ssrfire.sh -d domain.com -s yourserver.com           

工具文法

./ssrfire.sh -d domain.com -s yourserver.com -f custom_file.txt -c cookies           

domain.com:需要測試的目标域名

yourserver.com:檢測SSRF的伺服器,比如說Burp collaborator

custom_file.txt:可選參數,提供自定義URL

cookies:可選參數,以認證使用者發送請求

尋找SSRF漏洞

現在,我們就可以通過GAU來擷取目标域名的所有URL位址了。這個過程可能需要很長時間,我們可以在項目的output/domain.com/raw_urls.txt檔案中檢視到爬取到的位址清單。

等待工具運作大概10-15分鐘的時間,直到我們擷取到足夠多的需要測試的URL為止。接下來,将output/domain.com中的raw_urls.txt檔案拷貝到domain.com檔案夾之外,然後運作下列指令:

./ssrfire.sh -d domain.com -s yourserver.com -f /path/to/copied_raw_urls.txt           

工具會詢問你是否删除現有目錄,選擇“yes”即可,此時将會跳過GAU擷取URL位址的過程。

現在,所有的URL以及參數都将進行過濾處理,yourserver.com也将會被填充到參數值中(final_urls.txt)。

下一步就是向所有的URL位址發送請求了。

尋找XSS漏洞

警告:此操作将産生大量的資料流量,請不要将其用于未授權測試的站點。

此功能将測試所有擷取到的URL,工具将會根據響應資料中的資訊,來将可疑的URL位址添加到output/domain.com/xss-suspects.txt檔案中,但可能存在一定的假陽性。

如需進一步測試,可以将該清單輸入到類似XSStrike之類的的XSS掃描工具中來确定漏洞的有效性。

尋找開放重定向漏洞

此操作需要提供Payload檔案的路徑,或直接使用預設Payload。開發人員建議使用OpenRedirex,因為該工具經過專門設計,可以通過從清單中加載URL來檢查開放重定向。

工具運作截圖

如何使用SSRFire自動掃描和發現SSRF漏洞

項目位址

SSRFire:https://github.com/ksharinarayanan/SSRFire

繼續閱讀