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

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

缺陷编号:wooyun-2014-078277

漏洞标题:网易云音乐Mac版存在XSS漏洞(file域)

相关厂商:网易

漏洞作者: mramydnei

提交时间:2014-10-08 10:48

修复时间:2015-01-06 10:50

公开时间:2015-01-06 10:50

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

危害等级:低

自评Rank:1

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-10-08: 细节已通知厂商并且等待厂商处理中
2014-10-08: 厂商已经确认,细节仅向厂商公开
2014-10-11: 细节向第三方安全合作伙伴开放
2014-12-02: 细节向核心白帽子及相关领域专家公开
2014-12-12: 细节向普通白帽子公开
2014-12-22: 细节向实习白帽子公开
2015-01-06: 细节向公众公开

简要描述:

Rank什么的倒无所谓。就怕哪天因为这个被搞了。所以还是打算提交1下

详细说明:

最近搞客户端XSS也积攒了一些经验,所以附上测试流程吧。测试了几个输入点后,在“修改个人资料”-“介绍”处发现了一点异常。
输入:

<a>asd</a>


输出:

<a rel="nofollow">asd</a>


1.png


这是个典型的“此地无银三百两的”处理方式。因为在看到程序员对用户输入做了这样的修改之后,就会让人想到。。这个玩意儿肯定在什么地方是当作html来解析的。开始查看别的页面。在朋友这个页面当中,发现介绍中的内容居然被当作html解析了。我这么认为的原因很简单,因为鼠标移动到asd时由于是anchor tag,指针会有变化(在没办法查看源代码的情况下,如果使用复杂的向量,当程序员对用户输入进行了特殊的过滤时,很难判断是没有解析还是被过滤了。)。

2.png


接着开始加大向量的复杂度,但尽量不要急着执行js。
输入:

<iframe src=http://baidu.com>


输出:什么都没有,全被移除了。
再看看程序员有没有进行“多余”的解码。
输入:

&lt;iframe src=http://baidu.com>


输出:

<iframe src=http://baidu.com>


看来是有的了。。已经看到加载了我们的iframe,如下图:

3.png


现在开始看看能不能执行js?
输入:

&lt;iframe src=http://baidu.com onload=alert(1)>


输出:

<iframe src=http://baidu.com onload=alert(1)>


当我再次切换到朋友页面时,却发现什么都没弹。。莫非是过滤了alert?换成prompt后:

4.png


再次弹起来了。不得不说程序员还是很调皮的。现在再确定两样东西。一个是protocol另外一个是user agent。
输入:

&lt;iframe src=http://baidu.com onload=prompt(location.protocol+navigator.userAgent)>


结果:

5.png


看样子是safari+本地域。心想着,这就好玩了,因为safari的file域是可以跨任意域的。接着再改个人资料(这里发现单双引号也被过滤了,所以按照前面的思路编码了一下):

&lt;iframe name=m src=http://zone.wooyun.org onload=&#34window.open(&#39javascript:prompt(document.cookie)&#39,&#39m&#39)&#34>


结果:

7.png


可以看到我们跨域拿到了zone.wooyun.org的cookie。当然对于这个站来说拿cookie也没啥用
,毕竟还是有httponly flag的。所以只是证明一下可行性。然后还有一个问题就是location会泄漏系统用户名。
输入:

&lt;iframe name=m src=http://zone.wooyun.org onload=prompt(location)>


结果:

8.png


看到这儿感觉,再来个csrf就完美了。不过抓包发现。update请求还是有个token的:

URL=http://music.163.com/api/user/profile/update?csrf_token=7f3948015b96761e93a4eed426122ca0


搞到这儿思路就断了,也花了我不少时间。所以不想再这个应用上面浪费时间了。

漏洞证明:

如上

修复方案:

暂时还只是self-XSS。不过我想不到不代表别人也没有办法。你可以忽略这个问题。但是希望你修复一下这里的输出。

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


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:3

确认时间:2014-10-08 15:15

厂商回复:

感谢您对网易的关注。

最新状态:

暂无


漏洞评价:

评论

  1. 2014-10-08 10:52 | 0x_Jin ( 普通白帽子 | Rank:319 漏洞数:37 | 微博:http://weibo.com/J1n9999)

    M锅你最终还是提交了~

  2. 2014-10-08 11:02 | px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)

    。。。你不怕哪天qq被搞么,赶紧提交qq的

  3. 2014-10-08 12:15 | 疯狗 认证白帽子 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)

    首先,我得有台Mac

  4. 2014-10-08 12:53 | 索马里的海贼 ( 普通白帽子 | Rank:254 漏洞数:24 | http://tieba.baidu.com/f?kw=WOW)

    首先,我得有台Mac

  5. 2014-10-08 13:02 | 0x_Jin ( 普通白帽子 | Rank:319 漏洞数:37 | 微博:http://weibo.com/J1n9999)

    @索马里的海贼 卤蛋师 你的MBP 要忍不住了

  6. 2014-10-08 13:12 | mramydnei ( 普通白帽子 | Rank:348 漏洞数:80 )

    @px1624 别说,QQ还真有

  7. 2014-10-08 13:55 | px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)

    @mramydnei qq肯定有呗,不过都舍不得提交。你提交的ios的那个qq 1分啊。。

  8. 2014-10-08 14:11 | mramydnei ( 普通白帽子 | Rank:348 漏洞数:80 )

    @px1624 分无所谓,修复就好了。QQ,IE,BSD之类的都是RCE代代相传。提交个XSS也改善不了什么。

  9. 2014-10-08 14:12 | px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)

    @mramydnei 哈哈

  10. 2014-10-08 16:23 | xsser 认证白帽子 ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)

    @mramydnei =。=

  11. 2014-10-08 16:24 | xsser 认证白帽子 ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)

    @mramydnei ios下的?

  12. 2014-10-08 17:19 | mramydnei ( 普通白帽子 | Rank:348 漏洞数:80 )

    @xsser xss么?windows下的QQ客户端应该还有。之前,那个发视频链接弹XSS的问题在修复之后有小伙伴说:“刚才突然掉线了,结果宽带认证页面(网页)怎么跑到QQ里边来了”。

  13. 2014-10-08 17:25 | mramydnei ( 普通白帽子 | Rank:348 漏洞数:80 )

    @xsser ios版QQ坑也不少。和webview问题一样不好说是谁的错。所以没提交。safari的file域可以跨任意http域的问题是个wont fix的漏洞。但是ios版的QQ客户端,像:“发送文件”,“浏览群共享文件”等功能只要是htm都在file域给它在webview里面打开了。这不一打开就得遭殃么。

  14. 2014-10-08 17:28 | xsser 认证白帽子 ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)

    @mramydnei 所噶 貌似有人报了

  15. 2014-10-08 17:39 | 从容 ( 普通白帽子 | Rank:221 漏洞数:75 | Enjoy Hacking Just Because It's Fun :) ...)

    乌云总部全用的mac