“ 先理解一下原理,再复现几个相关漏洞,最后总结字典”
前言
想起大佬一个csrf token绕过案例,在存在referer、orgin、csrftoken的情况下依旧可以成功执行csrf攻击。
他用的方法是url混淆,这让我想起我在越权bypass中也成功应用过好多次,遗憾的是当时我并没有意识到它也可以应用在csrf测试中。
今天研究一下,url混淆是咋回事。
漏洞原理
URL混淆漏洞是指在处理和解析URL时,由于不同组件或系统的解析规则不一致,攻击者可以利用这种不一致来绕过安全控制或获取敏感信息。这种漏洞通常涉及到URL的路径、查询参数、编码方式等方面。
简单来说,混淆后的不同URL均路由至同一资源时,后端程序或组件没有做好URL规范解析时会绕过安全访问控制。
http://example.com//foo/ 和 http://example.com/foo/均指向foo目录
http://example.com/;/foo 和 http://example.com/..;/foo均指向foo目录
http://example.com/foo.js 和 http://example.com/foo.css均指向foo目录
漏洞复现
我想复现一下shiro和spring权限绕过,这里用的vulhub靶场。
一、先复现一下shiro权限绕过漏洞
我先扫一下目录,发现admin面板,大概率就是绕过这个访问控制了。
我打算使用权限绕过相关字典fuzz四个位置
通过测试的payload有很多,是点和分号及其组合。
如果我给它加上waf是否还能绕过
拦截了几个payload,但基本没什么影响。
二、复现下spring的权限绕过漏洞
payload 已经给出来了。。。
spring的权限绕过是%0a %0d及其组合
实战案例
这是一个管理员具有导出功能,抓包,我将管理员cookie替换为无权限用户cookie,尝试垂直越权,返回无操作权限。
尝试url混淆模糊路径,fuzz字典,发现%2e可以绕过。
后续修复完成后,再次测试发现增加json后缀可以绕过。
总结
测试鉴权相关的漏洞时,可以尝试url混淆,接口多个位置fuzz,如果是知名框架的话,尝试历史漏洞即可。
文中字典可关注公众号并回复url混淆字典即可
原文始发于微信公众号(道一安全):SRC挖掘-URL混淆的利用
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论