文章插图
一、概述
服务端未对传入的跳转url变量进行检查和控制,可导致恶意用户构造一个恶意地址,诱导用户跳转到恶意网站 。跳转漏洞一般用于钓鱼攻击,通过跳转到恶意网站欺骗用户输入用户名和密码来盗取用户信息,或欺骗用户进行金钱交易;还可以造成xss漏洞 。
常见的可能产生漏洞的参数名redirect,redirect_to,redirect_url,url,jump,jump_to,target,to,link,linkto,domain
定义:借助未验证的URL跳转,将应用程序引导到不安全的第三方区域,从而导致的安全问题 。
url跳转常见出现的地方(即漏洞产生的地方)
- 登陆跳转我认为是最常见的跳转类型,认证完后会跳转,所以在登陆的时候建议多观察url参数
- 用户分享、收藏内容过后,会跳转
- 跨站点认证、授权后,会跳转
- 站内点击其它网址链接时,会跳转
- 在一些用户交互页面也会出现跳转,如请填写对客服评价,评价成功跳转主页,填写问卷,等等业务,注意观察url 。
- 业务完成后跳转这可以归结为一类跳转,比如修改密码,修改完成后跳转登陆页面,绑定银行卡,绑定成功后返回银行卡充值等页面,或者说给定一个链接办理VIP,但是你需要认证身份才能访问这个业务,这个时候通常会给定一个链接,认证之后跳转到刚刚要办理VIP的页面 。
【Web安全之URL跳转漏洞】
二、URL跳转漏洞原理
黑客利用URL跳转漏洞来诱导安全意识低的用户点击,导致用户信息泄露或者资金的流失 。其原理是黑客构建恶意链接(链接需要进行伪装,尽可能迷惑),发在QQ群或者是浏览量多的贴吧/论坛中 。安全意识低的用户点击后,经过服务器或者浏览器解析后,跳到恶意的网站中 。
文章插图
恶意链接需要进行伪装,经常的做法是熟悉的链接后面加上一个恶意的网址,这样才迷惑用户 。
文章插图
诸如伪装成像如下的网址,你是否能够识别出来是恶意网址呢?
http://gate.baidu.com/index?act=go&url=http://t.cn/RVTatrdhttp://qt.qq.com/safecheck.html?flag=1&url=http://t.cn/RVTatrdhttp://tieba.baidu.com/f/user/passport?jumpUrl=http://t.cn/RVTatrd
三、攻击方式及危害
恶意用户完全可以借用URL跳转漏洞来欺骗安全意识低的用户,从而导致“中奖”之类的欺诈,这对于一些有在线业务的企业如淘宝等,危害较大,同时借助URL跳转,也可以突破常见的基于“白名单方式”的一些安全限制,如传统IM里对于URL的传播会进行安全校验,但是对于大公司的域名及URL将直接允许通过并且显示会可信的URL,而一旦该URL里包含一些跳转漏洞将可能导致安全限制被绕过 。
如果引用一些资源的限制是依赖于“白名单方式”,同样可能被绕过导致安全风险,譬如常见的一些应用允许引入可信站点如youku.com的视频,限制方式往往是检查URL是否是youku.com来实现,如果youku.com内含一个url跳转漏洞,将导致最终引入的资源属于不可信的第三方资源或者恶意站点,最终导致安全问题 。
四、实现方式
- Header头跳转
- JAVAscript跳转
- META标签跳转
这里我们举个Header头跳转实现方式:
<?php$url=$_GET['jumpto'];header("Location: $url");?>
如果jumpto没有任何限制,所以恶意用户可以提交:http://www.wooyun.org/login.php?jumpto=http://www.evil.com
来生成自己的恶意链接,安全意识较低的用户很可能会以为该链接展现的内容是www.wooyun.org从而可能产生欺诈行为,同时由于QQ,淘宝旺旺等在线IM都是基于URL的过滤,同时对一些站点会以白名单的方式放过,所以导致恶意URL在IM里可以传播,从而产生危害,譬如这里IM会认为www.wooyun.org都是可信的,但是通过在IM里点击上述链接将导致用户最终访问www.evil.com这个恶意网址 。
推荐阅读
- Linux之kali修改ssh服务配置文件允许root用户远程登录
- 动物之森气球上的礼物怎么拿 动森怎么打气球礼物
- 不惑之年是多少岁?
- 在汜水关之战中被当时默默无名的关羽斩杀的猛将是?,关羽在汜水关斩的大将
- 项羽为什么在楚汉之中会失败,楚汉相争为什么项羽会输
- 李诵在位时间,唐肃宗李亨之后是谁继位
- 丰臣秀吉之后是谁?丰臣秀吉是谁的家臣
- jenkins+Acunetix实现自动化安全测试
- 月经后8天算安全期吗
- 汉中之战后刘备的实力,汉中之战诸葛亮参与了吗?