漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2013-017858
漏洞标题:4399储存型xss,过滤器绕过
相关厂商:4399小游戏
漏洞作者: px1624
提交时间:2013-01-25 12:17
修复时间:2013-03-11 12:18
公开时间:2013-03-11 12:18
漏洞类型:xss跨站脚本攻击
危害等级:高
自评Rank:15
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2013-01-25: 细节已通知厂商并且等待厂商处理中
2013-01-25: 厂商已经确认,细节仅向厂商公开
2013-02-04: 细节向核心白帽子及相关领域专家公开
2013-02-14: 细节向普通白帽子公开
2013-02-24: 细节向实习白帽子公开
2013-03-11: 细节向公众公开
简要描述:
4399某功能处可以xss,有过滤器过滤,但是可以通过一些手段进行绕过。
详细说明:
1 测试地址
请在确认后漏洞后删掉此地址内容。
2 4399日志处可以构成xss,此处的过滤器
传了个图,插了写代码进去,发现会将on expression \ 等过滤成.
3 经过测试发现,这里应该是对<img>标签的每个属性进行正则,只要发现就进行过滤,但是一个字符串只是过滤最前面的一个特殊字符。
就是说onload onload===》.load .load ononload===》.onload
4 所以直接构造onload为on/onload即可绕过
5 不过在测试时候发现,虽然可以插进去,F12查看也正常,但是没有执行。<img>的onload onerror之类的貌似都会重新判断一次。
比如
所以就又试着插了些别的代码,比如input、iframe等,
6 测试之后发现这里貌似只能插入<div> <img> <a> <font> <p>等几个标签,看来是做了白名单了
所以就用onmouseover
7 插一个大点的<img> <div> 效果也蛮不错诶,基本上进去就会触发了。(图中的红色边框是div的区域,为了让大家看的更加之观点)
图1
8 插入的代码,以及F12中看到成功插入
图2 图3
9 插入了下盗取cookie的代码,并成功盗取cookie登录
将onmouseover写为on/onmouseover,会过滤成为. onmouseover
插入成功后的盗取cookie的代码,用F12那里复制出来如下
(这里要注意对script进行下转换,不然script会被过滤成.)
图4
10 这里<div>也可以插入以下代码直接访问就触发xss
<div id="xx" onscroll="alert(1);" style="height:30px;overflow-y:auto;width:100px;">a b c a b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b ca b c<a name="t">d</a></div>
div 当滚动条滚动的时候触发
div里面的内容是为了让div出现滚动条,name="t"那个是为了让可以直接定位到那里使滚动条滚动
利用地址后面要http://xxx.html#t
要加上#t 才会直接到<a>标签name处触发onscroll
11 至于给管理员通过意见反馈、私信等途径,发链接去xss管理员cookie和后台地址这些事情我就不干了。
漏洞证明:
看上面描述。
修复方案:
过滤、、
会不会忽略、、
有么有礼物、、
版权声明:转载请注明来源 px1624@乌云
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:5
确认时间:2013-01-25 16:36
厂商回复:
非常感谢你提供的信息,已提交给相关部门处理。
最新状态:
暂无