boxmoe_header_banner_img

⋅無⋅限⋅進⋅步⋅

加载中

文章导读

URL重定向及跳转漏洞


avatar
yuhui 2025年10月24日 22

URL 重定向及跳转漏洞

概述

URL 跳转漏洞是指后台服务器在告知浏览器跳转时,未对客户端传入的重定向地址进行合法性校验,导致用户浏览器跳转到钓鱼页面的一种漏洞。

现在 Web 登录很多都接入了 QQ、微信、新浪等第三方登录,以 QQ 第三方授权登录为例说明,在我们调用 QQ 授权服务器进行授权时,会在参数中传入 redirect_url(重定向)地址,告知 QQ 授权服务器,授权成功之后页面跳转到这个地址,然后进行站点登录操作。但是如果你的重定向地址在传输过程中被篡改成了一个钓鱼网址,那么就是导致用户的授权信息被非法获取。当然,QQ 第三方登录,也会有自己的策略,就是接入 QQ 第三方登录的应用,会在开发者平台,配置相关的跳转白名单,只有属于白名单中的域名、子域名或 url ,QQ授权服务器才跳转,如果发现 redirect_url 不合法,则跳转到非法页面。

URL 重定向及跳转漏洞代码分析

header 获取 url 参数 使用 location 进行跳转,因为 url 参考可控导致可以跳转任何网站1746426520992-5cf46a4f-479a-4759-ae47-e2eaa248b452.png

URL 重定向跳转攻击

构造有危害的钓鱼页面,通过这个 url 进行跳转。192.168.0.103/06/vul/urlredirect/urlredirect.php?url=http://www.hacker.com 安全意识低用户会误以为是当前信任页面发出来的连接,生成的链接,用户访问后,可能会产生欺诈行为,同时由于 qq,淘宝旺旺等基础 url 过滤,但是也是基于白名单的方式放行,所以导入 url 可以在这些软件上大范围传播,产生很大的危害

url 重定向跳转防御

我们需要对传入的 URL 做有效性的认证,保证该 URL 来自于正确的地方,限制的方式同防止 csrf 一样可以包括:

1 referer 的限制

如果确定传递 URL 参数进入的来源,我们可以通过该方式实现安全限制,保证该 URL 的有效性,避免恶意用户自己生成跳转链接

2 加入有效性验证 Token

我们保证所有生成的链接都是来自于我们可信域的,通过在生成的链接里加入用户不可控的 Token 对生成的链接进行校验,可以避免用户生成自己的恶意链接从而被利用,但是如果功能本身要求比较开放,可能导致有一定的限制。

更新: 2025-05-05 14:29:32
原文: https://www.yuque.com/yuhui.net/network/kfotbmcikgxnog1s



评论(0)

查看评论列表

暂无评论


发表评论

表情 颜文字

插入代码