QQMail邮件泄露漏洞

漏洞概要

缺陷编号:WooYun-2010-046

漏洞标题:QQMail邮件泄露漏洞

相关厂商:腾讯

漏洞作者:结界师

提交时间:2010-07-19 19:37

公开时间:2010-08-18 21:00

漏洞类型:CSRF

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

Tags标签:

漏洞详情

披露状态:

2010-07-19: 细节已通知厂商并且等待厂商处理中
1970-01-01: 厂商已经确认,细节仅向厂商公开
1970-01-11: 细节向核心白帽子及相关领域专家公开
1970-01-21: 细节向普通白帽子公开
1970-01-31: 细节向实习白帽子公开
2010-08-18: 细节向公众公开

简要描述:

QQMail在一些设计上存在问题,恶意攻击者可以引诱用户打开一个链接,从而直接获得用户的QQMail内的邮件,在微薄上利用短网址将使这种攻击会非常有效,建议不要轻易点击网址

详细说明:

http://mail.qq.com/cgi-bin/login?fun=passport&target=MLIST&t=login.js&pagesize=10&resp_charset=UTF8js-hijack可以取得返回的url,然后进一步可以获取邮件内容http://m138.mail.qq.com/cgi-bin/mail_list?flag=new&s=unread&folderid=8&folderid=1&folderid=3&folderid=user&fun=slock&sid=KCSRLFNrsbsbsbsCR9TjJR1djyz&pagesize=10&resp_charset=UTF8&t=mail_list.js同样是js-hijacking

漏洞证明:

如上

修复方案:

漏洞回应

厂商回应:

危害等级:高

漏洞Rank:7

确认时间:2010-07-19 19:37

厂商回复:

感谢。我们尽快确认和处理

最新状态:

2010-08-24:已修复

评价

  1. 2010-01-01 00:00 左右 白帽子 | Rank:23 漏洞数:3)

    超级good~~~

  2. 2010-01-01 00:00 苏南同学 白帽子 | Rank:41 漏洞数:5)

    js是怎么拿到内容的呢?我知道能执行。但是内容应该是跨域拿不到吧?

  3. 2010-01-01 00:00 he1renyagao 白帽子 | Rank:224 漏洞数:28)

    mark

  4. 2010-01-01 00:00 南柯太守 白帽子 | Rank:0 漏洞数:0)

    @苏南同学 貌似JSONP,动态脚本

  5. 2010-01-01 00:00 sunrain 白帽子 | Rank:29 漏洞数:3)

    大致看懂了。
    这里原本想通过jsonp协议取得一个直接可以执行的语句 像这样:passport(xxxxx) 但是替换之后 并没有返回这个 而是直接执行了想要的js 这里的问题就是
    1. 没有验证js域
    2. jsonp无法验证返回结果,无条件信任服务端