目錄
URL Bypass
數字IP Bypass
302跳轉 Bypass
DNS重綁定 Bypass?
SSRF繞過方法:
(1)@????????? http://abc.com@127.0.0.1
(2)添加端口號????? http://127.0.0.1:8080
(3)短地址??????? https://0x9.me/cuGfD
(4)可以指向任意ip的域名? xip.io
(5)ip地址轉換成進制來訪問 192.168.0.1=3232235521(十進制)
(6)非HTTP協議
(7)DNS RebindingCTFHUB技能樹——SSRF(一)-CSDN博客
URL Bypass
@繞過
題目描述:請求的URL中必須包含http://notfound.ctfhub.com,來嘗試利用URL的一些特殊地方繞過這個限制吧。
?打開環境,根據題目url訪問,但是什么都沒有
?url=http://notfound.ctfhub.com/127.0.0.1/flag.php
可使用HTTP 基本身份認證繞過:
HTTP 基本身份認證允許 Web 瀏覽器或其他客戶端程序在請求時提供用戶名和口令形式的身份憑證的一種登錄驗證方式。
即??? http://www.xxx.com@www.yyy.com形式
構造payload:????????????????url訪問得flag
?url=http://notfound.ctfhub.com@127.0.0.1/flag.php
數字IP Bypass
題目描述:這次ban掉了127以及172.不能使用點分十進制的IP了。但是又要訪問127.0.0.1。該怎么辦呢
根據題目描述知道點分十進制的IP被禁用,故使用其他方式表達數字
127.0.0.1的十進制:2130706433
127.0.0.1的十六進制:0x7F000001
構造payload:??????????????????????????url訪問得flag
?url=http://2130706433/flag.php?url=http://0x7F000001/flag.php
302跳轉 Bypass
題目描述:SSRF中有個很重要的一點是請求可能會跟隨302跳轉,嘗試利用這個來繞過對IP的檢測訪問到位于127.0.0.1的flag.php吧
嘗試訪問?url=127.0.0.1/flag.php?
使用file:///協議 獲取index.php、flag.php源碼
?url=file:///var/www/html/index.php?url=file:///var/www/html/flag.php
發現黑名單限制了127 、172、10、192。但沒有限制localhost。
localhost也叫local (本地服務器)
127.0.0.1在windows等系統是:本機地址(本機服務器)
通過本機的host文件,windows自動將localhost解析為127.0.0.1所以可以localhost代替127.0.0.1
構造payload:??????????????????????? 得到flag
?url=localhost/flag.php
DNS重綁定 Bypass?
題目描述:關鍵詞:DNS重綁定。剩下的自己來吧,也許附件中的鏈接能有些幫助
附件文章
嘗試訪問?url=127.0.0.1/flag.php
使用file:///協議 獲取的index.php、flag.php源碼與上題一樣,但使用localhost無法得到flag。
使用DNS重綁定
通過
rbndr.us dns rebinding service
DNS重綁定:
瀏覽網頁過程中,用戶在地址欄中輸入包含域名的網址,瀏覽器通過DNS服務器將域名解析為IP地址,然后向對應的IP地址請求資源,最后展現給用戶。
即? 域名 =>公共DNS服務器 => IP
作為域名的所有者,可以隨時設置解析IP:用戶第一次訪問,解析域名test.gm7.org的IP為104.21.26.222在用戶第二次訪問前,修改域名解析的IP為127.0.0.1用戶第二次訪問,解析域名test.gm7.org的IP為127.0.0.1
當我們發起域名解析請求的時候,第一次訪問會返回一個ip地址A,但是當我們發起第二次域名解析請求的時候,卻會返回一個不同于A的ip地址B。
滲透測試DNS重綁定_dns重綁定 ssrf-CSDN博客
網站設置DNS:
這個網站會隨機指向兩個綁定地址的其中一個,由于127段是回環地址,將AB設置成127.0.0.1
和127.0.0.2
,每一個都能訪問localhost
故構造payload:??????????????????????? 得到flag
?url=7f000001.7f000002.rbndr.us/flag.php