当前位置: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

厂商回复:

感谢您对网易的关注。

最新状态:

暂无