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

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

缺陷编号:wooyun-2013-042050

漏洞标题:74cms后台任意文件删除漏洞

相关厂商:74c,s.com

漏洞作者: sn...

提交时间:2013-11-06 10:29

修复时间:2013-11-11 10:29

公开时间:2013-11-11 10:29

漏洞类型:设计缺陷/逻辑错误

危害等级:高

自评Rank:20

漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-11-06: 细节已通知厂商并且等待厂商处理中
2013-11-11: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

好吧 写的不够详细。再写一次。。

详细说明:

拿骑士的演示站做测试。
http://demo.74cms.com/admin
使用 测试 123456
登陆后台。
点击工具页面。
找到百度开放平台。。
点击配置
如下图:

1-1.jpg


修改索引文档名称为 index.php
修改文档保存目录为 /
如下图:

1-2.jpg


保存。。
点击资源文档。
即可操作删除文件。
如下图:

1-3.jpg


代码分析:
admin_baiduxml.php

foreach($flist as $key => $file)
{
if (file_exists($xmldir.$file))
{
$flistd[$key]['file_type'] = $file==$xmlset['indexname']?'<span style="color:#FF6600">索引文档</span>':'资源文档';
$flistd[$key]['file_size'] = round(filesize($xmldir.$file)/1024/1024,2);
$flistd[$key]['file_time'] = filemtime($xmldir.$file);
$flistd[$key]['file_url'] = $_CFG['site_domain'].$_CFG['site_dir'].$trimxmldir.$file;
$flistd[$key]['file_name'] = $file; //这里只要是我们配置里设置什么名字,就会显示什么。不管之前是否存在,是否是系统文件。
}
}


继续看删除。也没有做任何判断。

elseif($act == 'del')
{
$xmlset=get_cache('baiduxml');
$xmldir = '../'.$xmlset['xmldir'];
$file_name=$_POST['file_name']; //没做任何判断,我们可以提交任意文件名字进行删除。。。只要是post过去的文件名都可以删。。
if (empty($file_name))
{
adminmsg("请选择文档!",1);
}
if (!is_array($file_name)) $file_name=array($file_name);
foreach($file_name as $f )
{
@unlink($xmldir.$f);
}
adminmsg("删除成功!",2);
}


修复方法。代码分析里面有了。程序猿应该看的懂。。

漏洞证明:

因为删除有较大危害性。故不做删除演示。

修复方案:

修复方法。代码分析里面有了。程序猿应该看的懂。。一灯你懂了吗?

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


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2013-11-11 10:29

厂商回复:

最新状态:

暂无