web -- ssrf
web學習之SSRF
- 最開始玩ctf接觸的就是web但是隨著開始逐漸專註於pwn,在加之web的知識體系本來就繁雜,所以準備寫一期關於web大體的知識
day1
SSRF
SSRF(Server-Side Request Forgery,伺服器端請求偽造)是一種由攻擊者構造形成由伺服器端發起請求的一個安全漏洞。一般情況下,SSRF攻擊的慕白哦是從外網無法訪問的內部系統
大部分web伺服器架構中,Web伺服器自身都可以訪問互聯網和伺服器所在的內網
SSRF形成的原因大多數是服務端提供了從其他伺服器獲取數據的功能,且沒有對目標地址做過濾和限制,該目標地址是由用戶輸入可控的
相關利用函數
1.file_get_contents()
file_get_contents() 把整個文件讀入一個字元串中。該函數是用於把文件的內容讀入到一個字元串中的首選方法。註:**也可以將url當作文本文件進行處理及可以進行遠程url的鏈接**
2.fsockopen
fsockopen — 打開一個網路連接或者一個Unix套接字連接,及實現用戶訂製的url的數據(文件/html)
3.curl_exec
執行一個cURL會話
防禦繞過
1.IP編碼繞過
+www.ip.xip.io:在xip.io前面加一個你url1,那麼就會訪問這個url1的地址
例子:訪問www.baidu.com.192.168.1.1.xip.io => 最後訪問的就是192.168.1.1這個地址
+將ip轉換為10進位
2.協議變換
*我們平時除了可以用tcp/ip協議還可以用Dict,Gopher,File協議來進行網路數據的傳輸
Gopher協議是HTTP協議出現之前,在internat上常見且常用的一個協議,但Gopher協議並沒有完全消失
Gopher協議可以做很多事情,特別是在SSRF中可以發揮很多重要的作用。利用此協議可以攻擊內網的FTP、Telnet、Redis、Memcache,也可以進行Get,Post請求
參考鏈接:
*//www.php.net/manual/zh/function.fsockopen.php
*//www.runoob.com/php/
*//www.bilibili.com/video/BV1qx411o7eu?p=6(這個影片對新手特別友善)
