漏洞概要
关注数(24)
关注此漏洞
漏洞标题:一封邮件操控QQ邮箱可蠕虫(收发邮件、查看好友列表等)
相关厂商:腾讯
提交时间:2015-04-14 09:31
修复时间:2015-05-30 11:02
公开时间:2015-05-30 11:02
漏洞类型:设计缺陷/逻辑错误
危害等级:高
自评Rank:15
漏洞状态:厂商已经确认
Tags标签:
无
漏洞详情
披露状态:
2015-04-14: 细节已通知厂商并且等待厂商处理中
2015-04-15: 厂商已经确认,细节仅向厂商公开
2015-04-25: 细节向核心白帽子及相关领域专家公开
2015-05-05: 细节向普通白帽子公开
2015-05-15: 细节向实习白帽子公开
2015-05-30: 细节向公众公开
简要描述:
利用 qq.com 子站下一个 flash,可访问 QQ 邮箱等站点的数据
详细说明:
原理和之前的《读取已登陆用户163/126 邮件的》(www.wooyun.org/bugs/wooyun-2015-0106908)一样。
存在漏洞的 flash 文件:
http://mail.qq.com/zh_CN/htmledition/swf/uploader1d35b7.swf
其中有个 uploader.UploadSchedule 类开放了 URLLoader 操作的接口,使用自己的 flash 将其反射出来,按照其规范调用,即可访问 crossdomain.xml 中授权了 *.qq.com 的站点。并且请求是 POST 的,使得利用更为顺利。
例如访问 QQ 邮箱。首先获取 SID,这个貌似有多种登录方式,这里以自己为例,访问:http://mail.qq.com/cgi-bin/login?fun=psaread 可获得已登录的 SID。
有了 SID 即可各种操作。访问邮件列表:
http://set1.mail.qq.com/cgi-bin/mail_list?sid={SID}&page=0
访问 QQ 好友列表:
http://set1.mail.qq.com/cgi-bin/laddr_lastlist?sid={SID}&t=addr_datanew&category=hot
发邮件:
http://set1.mail.qq.com/cgi-bin/compose_send?sid={SID}
。。。
漏洞证明:
自己的 flash:
其中有几个细节:
1.uploader1d35b7.swf 构造函数里用到了 stage 属性,由于被嵌套的 swf 初始化时是没有 stage 的(在 ADD_TO_STAGE 事件之后才有),所以加载这个 flash 时会报错。
但万幸的是,在访问 stage 之前,已经执行了 Security.allowDomain('*'),所以即使主类构造失败,但这个 swf 的权限已经打开,不影响后期利用。(调试模式下报错点继续执行即可)
2.URLLoader 返回是数据默认是字符型的,遇到中文会乱码。因此这里使用 binary 传输,收到后分析页面中 <meta> 指定的编码,再转码成相应的字集,即可避免乱码。
3.UploadSchedule 类没有提供下载完成的回调,因此使用不断轮询的方式,探测是否下载完成。
具体的操控逻辑写在网页里。这里以读取邮件列表为例:
不同的登录方式 sid 的位置也不同,但不少页面里都可以获取到。
修复方案:
敏感信息站点部署 crossdomain.xml 十分危险,设计不合理。
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:12
确认时间:2015-04-15 11:00
厂商回复:
问题已确认,正在处理中,感谢反馈。
最新状态:
暂无
漏洞评价:
评论
-
2015-04-14 09:36 |
EtherDream ( 实习白帽子 | Rank:64 漏洞数:11 | JSHacker)
-
2015-04-14 10:00 |
xsser ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)
-
2015-04-14 10:19 |
EtherDream ( 实习白帽子 | Rank:64 漏洞数:11 | JSHacker)
-
2015-04-14 10:24 |
xsser ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)
-
2015-04-15 11:07 |
疯狗 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)
-
2015-04-15 11:11 |
子非海绵宝宝 ( 核心白帽子 | Rank:1044 漏洞数:106 | 发扬海绵宝宝的精神!你不是海绵宝宝,你怎...)
-
2015-04-15 14:24 |
辛巴 ( 普通白帽子 | Rank:231 漏洞数:83 | 现实中的无能为力,不代表网络中也要低声下...)
-
2015-04-15 14:33 |
EtherDream ( 实习白帽子 | Rank:64 漏洞数:11 | JSHacker)
其实和 qq 关系不大,是个 flash 自身缺陷,好多网站都有中招,就不重复刷了。
-
2015-04-15 16:06 |
px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)
@EtherDream 其实这个你可以提交成通用型漏洞,还有通用奖励的
-
2015-04-15 16:36 |
Fire ant ( 实习白帽子 | Rank:73 漏洞数:26 | 他们回来了................)
-
2015-04-15 19:55 |
MayIKissYou ( 普通白帽子 | Rank:195 漏洞数:33 | 勿忘初心)
-
2015-04-15 20:21 |
泳少 ( 普通白帽子 | Rank:231 漏洞数:79 | ★ 梦想这条路踏上了,跪着也要...)
-
2015-04-15 20:59 |
咖啡 ( 实习白帽子 | Rank:48 漏洞数:20 )
-
2015-04-15 23:44 |
财神8868 ( 路人 | Rank:0 漏洞数:1 | 财神送礼,万分康荣!)
-
2015-04-15 23:46 |
刘海哥 ( 普通白帽子 | Rank:114 漏洞数:28 | 索要联系方式但不送礼物的厂商定义为无良厂...)
-
2015-04-20 13:02 |
EtherDream ( 实习白帽子 | Rank:64 漏洞数:11 | JSHacker)
@px1624 写了篇该缺陷原理分析的文章:http://drops.wooyun.org/papers/5732
-
2015-09-15 20:25 |
Naih ( 路人 | Rank:10 漏洞数:1 | 无趣之人)
@EtherDream 这些API的referer限制,你怎么绕过去的