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

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

缺陷编号: WooYun-2012-05980

漏洞标题: 骑士cms任意目录打包下载漏洞。。。

相关厂商: 74cms.com

漏洞作者: 猪头子

提交时间: 2012-04-23 14:21

公开时间: 2012-06-07 14:21

漏洞类型: 敏感信息泄露

危害等级: 中

自评Rank: 10

漏洞状态: 厂商已经确认

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

Tags标签: 无

0人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-04-23: 细节已通知厂商并且等待厂商处理中
2012-04-23: 厂商已经确认,细节仅向厂商公开
2012-04-26: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航无声信息
2012-06-17: 细节向核心白帽子及相关领域专家公开
2012-06-27: 细节向普通白帽子公开
2012-07-07: 细节向实习白帽子公开
2012-06-07: 细节向公众公开

简要描述:

74cms_v3.1.20120214中任意web目录打包下载。。。很有意思的漏洞

详细说明:

74cms后台有一个备份模板的功能,程序会自动备份选中的模板并压缩下载,但是没有对用户提交的$tpl变量进行检查就带入函数,导致构造变量即可打包任意目录并下载。。

看代码。。在admin/admin_template.php 第47行

code 区域
elseif ($act == 'backup')
{
check_token();
check_permissions($_SESSION['admin_purview'],"tpl_backup");
require_once(ADMIN_ROOT_PATH.'include/admin_phpzip.php');
$tpl = trim($_REQUEST['tpl_name']);
//$filename受$tpl影响
$filename = '../temp/backup_templates/' . $tpl . '_' . date('Ymd') . '.zip';
$zip = new PHPZip;
//没有检查tpl_name的有效性就直接调用zip进行压缩
//由于$filename也受$tpl控制,导致如果遍历层数大于三层web程序会把压缩文件
//放入web目录外。。
$done = $zip->zip('../templates/' . $tpl . '/', $filename);
if ($done)
{
header("Location:".$filename."");
}
else
{
adminmsg("操作失败!",0);
}
}

漏洞证明:



更改tpl_name,我们下载data文件夹











修复方案:

过滤吧亲

版权声明:转载请注明来源 猪头子@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:5

确认时间:2012-04-23 16:23

厂商回复:

添加对漏洞的补充说明以及做出评价的理由

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):
登陆后才能进行评分

评价

  1. 2012-04-12 13:13 | xsser 认证白帽子 ( 普通白帽子 | Rank:297 漏洞数:22 | 当我又回首一切,这个世界会好吗?)
    1

    发现你喜欢搞后台的漏洞,但是真正难的不是从前台到后台么?

  2. 2012-04-12 13:20 | 猪头子 ( 普通白帽子 | Rank:189 漏洞数:35 | 自信的看着队友rm -rf/tar挂服务器)
    1

    @xsser 同意。。可是我都没有找到前台的漏洞~~~~

  3. 2012-06-07 21:01 | popok ( 普通白帽子 | Rank:117 漏洞数:24 | nothing)
    0

    @xsser 原来是个后台的功能,这个差别太大了。。 如果前台的任意打包下载,那就值20rank,如果是后台的,顶多值5rank

  4. 2013-04-23 13:03 | hfy ( 路人 | Rank:5 漏洞数:3 | 打了个狗~)
    0

    @猪头子 猪头子啊~

登录后才能发表评论,请先 登录