什么是URL调转
URL跳转其实现实生活中也经常能看到相似的例子
而URL跳转漏洞,就是利用网页中大家对于看起来正常的路标的信任,做一层跳转,达到欺骗的作用
比如简单来说.这是一群恶意/钓鱼诈骗网址.大家基本能看一眼就认出来.发在QQ群或者什么地方也会自动被检测出恶意链接可能. (这种就好比我们上面图的骷髅路标,看起来就给人不可靠的感觉)
再来一批官方的路标(网址),这些可能大家就很信任了.
好,那么就来几个利用漏洞的例子.(构建一些好的上下文环境,截图是比较low的做法….)
- www7.baidu.com 是真的么?
- 大长串的字符编码是真的么?
- 看似是正常的网址.后面的参数有问题么?
如果上面觉得.那下面这个,你还会觉得么?
仔细看发现,表面良好的路标背后其实指向的是一个错误的路径.而且普通人并没有对很长的参数辨别观察的习惯.所以很容易就”误入歧途”
再来定义:
借助没验证的URL跳转,将app/浏览器引导到不安全的另一个区域/链接,从而攻击.
实战Demo
上面的定义搞清楚之后,大家就应该很容易理解什么是URL跳转攻击了.那么实际中使用会遇到哪些阻碍或者问题呢? 常见三种方式
- Header 头跳转(php去实现)
- js跳转
- meta标签跳转
Header头
举个简单的例子.click me这里的代码是,其他几个效果也类似,就只列举一个:
1 | <a href="url.php?url=https://imbajin.com">click me</a> |
1 | #上面的点击触发中间php执行跳转 |
JS跳转
1 | <script type="text/javascript"> |
meta跳转
1 | <!DOCTYPE html> |
原理分析
通过上面的漏洞利用,我们可以发现URL攻击的主动权是在自己.而不是网址本身.因为我们使用了狸猫换太子的策略,
很多大的厂商传统的sql注入.文件上传,CSRF漏洞并不好发现.但是URL跳更容易挖掘,需要精心设计应用场景.
过程重现:
- hacker 构建恶意链接,发在QQ群或者是浏览多的贴吧/论坛中(网址需要进行伪装,尽可能迷惑)
- 用户点击后,经过hacker的服务器或者脚本解析.跳到hacker的网站(通常网址比较像之前的网站.)








