漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-082945
漏洞标题:5sing储存型XSS漏洞利用实例-可钓鱼盗号
相关厂商:中国原创音乐基地
漏洞作者: oldjiang
提交时间:2014-11-12 11:51
修复时间:2014-11-17 11:52
公开时间:2014-11-17 11:52
漏洞类型:xss跨站脚本攻击
危害等级:高
自评Rank:15
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-11-12: 细节已通知厂商并且等待厂商处理中
2014-11-17: 厂商已经主动忽略漏洞,细节向公众公开
简要描述:
鉴于上次无聊,找出5sing的支付漏洞,5sing一直没有给回复,便又去随便转了一圈,找到了一个储存型xss漏洞,顺便做了个简单测试,完美利用
详细说明:
储存型的XSS漏洞危害确实挺大的,也很容易被忽略,在各个系统中,属于高发漏洞,所以能在5sing发现这个漏洞也很正常,废话不多说,直接上实例。
漏洞所在页面:http://5sing.kugou.com/my/message/note(站内短信)
漏洞利用方法:由于发送站内短信对javascript脚本未过滤,可直接发送javascript脚本,导致可执行任意代码,本次测试,我将利用XSS进行钓鱼,成功率极高。
好了,上步骤。
1、注册个帐号,给我感兴趣的用户发送一条消息,该消息是经过特别伪造的,包含了XSS攻击脚本,代码如下:
OK,发送成功,结果如下(咱的广告词写的比较含蓄,如果劲爆点,成功率更高):
当用户收到信息后,点击我们伪造的链接,便会弹出如下窗口:
看到了么?要你输入密码以确认查看,这当然是我们伪造的窗口了,5sing根本没有这个要求。
我们伪造了个窗口,而且使用的就是5sing的弹窗库,所以混淆度极高,一不小心便会在密码输入框中输入密码。
这时候,当用户点击确认按钮后,便会执行我们伪造过后的代码,就是这段:
很明显,我们把用户输入的密码,转换为ascii码,再通过站内短信的方式,发送给用户编号为41496209的用户,这个用户当然是我自己的帐号,所以用户发送过来的密码,直接就被我查看了。
以下图片是用户点击“确认”按钮后,浏览器通过ajax提交的数据。
这时候,编号为41496209的用户(我自己的帐号)便收到了一条短信:
那个|45|50|51|52|53|54便是用户输入的密码转换成的ascii码,转换成字符便是123456,也就是我测试时输入的密码。
OK,测试完美成功,我只要注册N多个帐号,把这个帐号发送给每一个我感兴趣的用户,便可以坐等钓鱼成功。
漏洞证明:
修复方案:
由于系统只对类似<script>进行了过滤,而未对超链接中的javascript:;进行过滤,所以可以轻松执行我们伪造的代码。
那么修复方法也很简单,对提交的超链接进行过滤,如果有javascript脚本,直接过滤。
并且在提交时,如果超链接不是以http://开头的,直接过滤(目前只有编辑器的超链接生成按钮有次功能,发送短信时却未校验)。
版权声明:转载请注明来源 oldjiang@乌云
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2014-11-17 11:52
厂商回复:
最新状态:
暂无