18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 建站知识 > 【教学篇】URL重定向漏洞

【教学篇】URL重定向漏洞

时间:2023-02-09 11:48:01 | 来源:建站知识

时间:2023-02-09 11:48:01 来源:建站知识

什么是URL重定向?

我们点击一个网页内的外链时, 网页访问另一个网站





如上图, 这是一个简书网站, 跳转到另一个网站的URL重定向

URL漏洞呢?

进一步利用, 如果我们把上图简书访问的URL改为一个恶意网站, 那么就可以实现一次类似于反射型xss的攻击

举几个应用的例子,

  1. 把url改为和某大网站一模一样的钓鱼网站, 用户输入账号密码后就会被盗号
  2. 把URL改为一个内嵌csrf的攻击脚本, 就可以实现csrf攻击
感觉本质就是, 伪装恶意链接, 让目标用户访问

在哪里可以发现它?

黑盒测试





这是我学校的一个登陆网站, 其中service=url, 就有可能存在URL重定向漏洞

白盒测试

这里就举一个php的例子, 其他的语言小伙伴们可以自己百度







常见的参数

这个黑盒白盒都可以用于快速定位, 发现可能的漏洞
redirect
redirect_to
redirect_url
url
jump
jump_to
target
to
link
linkto
domain

激动人心的攻防战

攻1:直接利用

下方虚构一个链接来举例子:
http://Baidu.com?url=http://hack.com
http://hack.com就是攻击性网站, Baidu代表正常网址
肉鸡点这个网站后, 自以为点的事baidu的站点, 结果跳转的黑客的网站

防1:协议一致性

作用不大, 如果baidu用https协议, http://hack.com也要用https协议

防2: 域名字符串检测

就是检测 url= 后面的链接, 是否是自己的网站, 比如

  1. <?php
  2. $redirect_url = $_GET['url'];
  3. if(strstr($redirect_url,"www.baidu.com") !== false){
  4. header("Location: " . $redirect_url);}
  5. else{
  6. die("Forbidden");}
  7. ?>



上方代码可以实现, 如果你给的链接里面没有http://www.baidu.com 这个字符串, 那么就禁止访问

攻2

修改链接为:
http://baidu.com?url=http://www.baidu.com.hack.com
相当于组合域名

防3: 检测跳转URL末尾是否匹配

原理同防2, 改为检测末尾的域名

攻3:

有2个方法绕 防3

  1. 把域名改为: http://baidu.com?url=http://hack.com/baidu.com
    就是把白名单域名当做目录位置放到链接里面
  2. 直接买一个奇怪的域名: www.hack-baidu.com, 要是能买到类似的, 也是醉了….

攻&防4: 无限各种奇葩的正则匹配, 就是不让你加入恶意域名

二次跳板法, 先看代码
http://baidu.com?url=http://baidu.com?url=http://hack.com
这个先跳转到白名单网站, 再在后面加入一个恶意网站, 也之骚也~~

奇怪的绕过

还有很多奇怪的东西, 直接搬运过来的, 大家欣赏一下吧~





还有其他的绕过思路, 搬到下面了







以上就是URL重定向漏洞的全部内容了,关注我,不迷路~

“黑掌”,一个每天都可以了解到黑客新闻,和掌握更多渗透教学的地方。



关键词:漏洞,教学

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭