你們對URL任意跳轉都確定瞭解,也知道他的危害,這裏我就不細說了,過~html
你們遇到的確定都是不少基於這樣的跳轉格式:http://www.xxx.xxx/xxx?xxx=http://www.xxx.xxx/xxxxx安全
基本的思路你們就是直接替換後面的URL來檢測是否存在任意URL跳轉,若是不存在,就直接返回到它本身的域名,若是存在,就跳轉到你指定的URL。測試
這裏我講述我所知道的因此小點。網站
利用問號,這是一個特性,利用問號能夠成功繞過URL限制。ui
好比:http://www.aaa.com/acb?Url=http://login.aaa.com 這是一個跳轉連接,跳轉到它的二級域名下,那麼這個問號放哪裏能夠繞過呢?其實就是放到它自身的域名前面也就是你添加的想要跳轉的域名的後面,如:http://www.aaa.com/acb?Url=http://test.com?login.aaa.com 。那麼,它實際上是會跳轉到這個test.com域名下,這個域名是我想要跳轉的任意域名,然後面的它自身域名必定要帶上,不帶上就沒法輔助用問號?這個特性來跳轉到指定域名了,而跳轉後,問號和問號後面的內容會變爲這樣:http://www.test.com/?login.aaa.com加密
這個是我本身研究出來的,不知道是否網上有人說過。url
好比:http://www.aaa.com/acb?Url=http://login.aaa.com/ 一樣是在它自己域名錢加上正斜槓,而後正斜槓前面跟上你想跳轉的域名地址spa
如:http://www.aaa.com/acb?Url=http://test.com/login.aaa.comhtm
反斜槓有三種思路圖片
兩個反斜槓繞過方法
好比:http://www.aaa.com/acb?Url=http://login.aaa.com/ 一樣是在它自己域名錢加上兩個反斜槓,而後兩個反斜槓前面跟上你想跳轉的域名地址
如:http://www.aaa.com/acb?Url=http://test.com\\login.aaa.com
一個反斜槓繞過方法
如:http://www.aaa.com/acb?Url=http://test.com\login.aaa.com
另外一種思路,一個反斜槓一個點
利用\.這樣的格式,也就是一個反斜槓加一個點來跳過限制,
如:http://www.aaa.com/acb?Url=http://test.com\.login.aaa.com
若是你用這方法在火狐裏進行跳轉,會有彈窗提示,在其它遊覽器則沒有。
如:http://www.aaa.com/acb?Url=http://login.aaa.com@test.com 後面的test.com就是要跳轉到的域名,前面的域名都是用來輔助以繞過限制的
有的域名白名單限制是不全的,好比若是想利用一個跳轉,而這個跳轉是通用,在這個公司網站不少子域名等均可以跳轉,那麼你買個域名也不算貴對吧,爲何這麼說呢,這個問題就是白名單限制不當,好比,當跳轉的域名包含這個網站下的全部域名,好比:http://www.aaa.com/acb?Url=http://login.aaa.com,這個login.aaa.com也能夠改爲aaa.com一樣能夠跳轉對吧,由於白名單裏只要有包含這個域名就直接成功跳轉。那麼當我在這個域名前面加上如testaaa.com,白名單裏會檢查是否包含aaa.com這個域名,包含,而後直接跳轉,而並無檢查這個域名的整個
信息,而後能夠利用這個問題,直接註冊一個testaaa.com這個域名就能夠利用這個跳轉。
如今不少網站都有多重驗證,好比你登錄帳戶後會出現另外一個驗證頁面,輸入手機驗證碼進行驗證,此時這上面的URL極可能存在任意跳轉的問題。
多重跳轉的問題致使可繞過URL限制
好比http://www.aaa.com/acb?Url=http://login.aaa.com/acb?url=http://login.aaa.com。固然,還有多重的,這個結構的多重跳轉你修改最後面的URL就能夠達到任意URL跳轉,中間的URL就不必動了。
好比不少登錄頁面的地方,其URL是一個跳轉的URL,如:http://www.aaa.com/acb?Url=http://test.com。你直接修改了後面爲任意URL,可是仍是停留在原地,彷佛沒什麼問題,可是,當你輸入帳號和密碼後點擊登錄按鈕後,就會觸發跳轉,固然,這個帳戶和密碼不必定要對的,隨便均可以,但得視系統而定吧。這個我遇到了不少,好比
你修改了域名,而後點擊登錄,登錄成功後即可觸發跳轉,這也是一個比較隱蔽的繞過URL限制的跳轉。
這個我尚未在測試中應用過,其請求是http://www.127.0.0.1.xip.io 這個繞過是在SSRF場景中的繞過,好比SSRF你要讀取內網地址,通常都作了限制,能夠嘗試用這方法進行繞過限制,從而訪問到內網。
另一點,URL跳轉涉及的安全問題你們常見的就是釣魚,那麼利用這個思路也可達成一個釣魚問題,如,http://www.qq.com.220.181.57.217.xip.io 當你訪問qq這個域名時,其實這個連接已經被解析到後面這個ip地址上了,那麼實際訪問的就是後面這個IP地址。
好比一個URL,它是能夠直接跳轉的,可是通常測試跳轉時你們習慣用www.baidu.com或qq.com這樣的可信站點進行測試,可是有些網站是能夠跳轉這些網站的,只要是可信站點且經常使用,基本均可以跳轉,那麼這就屬於正常的業務邏輯了。難道就這樣錯失一個URL跳轉漏洞了?其實否則,只要你的URL被百度收錄過,那麼直接搜索你的域名,site:xxx.xxx 由於你在百度裏點擊你的域名,它會先是一個302跳轉,而這個302跳轉就是百度下的302跳轉,那麼這樣就能夠繞過可信站點的限制,從而達到跳轉到指定URL,固然,百度這個302有點長,你給它進行加密就行。
固然,這個影響就很小了,好比當你填什麼表格或者須要填寫什麼的,當你上傳圖片,點擊下一步的時候,一般下一步就是預覽你填寫的信息,最後纔是提交,當你上傳了圖片後點擊下一步抓包,若是過濾不嚴,你會看到圖片的完整地址包含在POST參數裏,你就能夠直接修改這個地址爲任意URL,而後到達下一步,這時是肯定信息也就是預覽本身填寫的信息的正確仍是不正確,因爲你剛剛修改了圖片地址,這裏是沒有顯示出來的,圖像會是一個小XX,當點擊圖片右鍵選擇查看圖像時,就會觸發URL跳轉問題,其實這個也能夠利用來進行釣魚,釣後臺審覈員的信息,爲何呢,好比審覈看到圖片沒法加載,通常都會點擊查看圖片,而後跳轉,若是安全意識不知就會形成安全影響。
固然,若是POST參數裏就只是URL跳轉參數,那麼你能夠給它轉成GET方式,而後進行跳轉就能夠了,只要網站支持這樣的GET方式就行,在Burp Suite裏能夠一鍵轉換提交方式,右鍵選擇Change request method就能夠!
如:http://www.aaa.com/acb?Url=http://test.com#login.aaa.com
強力鏈接:https://www.secpulse.com/archives/67064.html