漏洞概要
关注数(3)
关注此漏洞
漏洞标题: 74CMS设计缺陷导致被脱裤(有服务器环境限制)
提交时间: 2014-05-08 19:00
公开时间: 2014-08-06 19:00
漏洞类型: 设计缺陷/逻辑错误
危害等级: 中
自评Rank: 15
漏洞状态:
厂商已经确认
漏洞详情
披露状态:
2014-05-08: 细节已通知厂商并且等待厂商处理中
2014-05-09: 厂商已经确认,细节仅向厂商公开
2014-05-12: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航、无声信息)
2014-07-03: 细节向核心白帽子及相关领域专家公开
2014-07-13: 细节向普通白帽子公开
2014-07-23: 细节向实习白帽子公开
2014-08-06: 细节向公众公开
简要描述:
~~
详细说明:
首先我们来科普一下windows的短文件名,也就是下面我们要用到的。
http://**.**.**.**/bugs/wooyun-2010-056625
见上面漏洞的科普介绍,这里我们直接利用吧。
74cms的数据库备份如下:
备份的文件名为:
$file = !empty($_GET['file']) ? trim($_GET['file']) : date("Ymd_", time()) . get_rand_char(5).uniqid()
备份的地址为/data/backup/filename.sql
也就是默认情况下数据库备份文件的filename为:
年月日_5位大小写字母+uniqid()_卷的number.sql
例如:20140508_HaHzj536b51968ec34_1.sql
利用windows的短文件名我们可以访问数据库备份文件如下:
20140508_HaHzj536b51968ec34_1.sql == 201405~1.sql
漏洞证明:
在不知道备份文件名的情况下,我们可以来利用段文件名爆破一下:
很快得到短文件名:201405~1.sql
修复方案:
1、如果您是Windows服务器,请将备份文件存到WEB不可访问的位置;
2、将文件名随机长度小于<9,就不会出来短文件名,当然文件名最好是字母随机,而不是数字随机;
3、将文件所放目录进行随机化处理。
4、把备份数据库文件后缀为php,在最前面加一段代码:<?exit('error');?>,使其无法访问此文件。
5、其他
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:20
确认时间:2014-05-09 15:31
厂商回复:
感谢您对骑士的支持!
最新状态:
暂无
漏洞评价:
对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值
漏洞评价(共0人评价):
评价
-
2014-05-08 19:51 |
U神
( 核心白帽子 |
Rank:1360 漏洞数:150 | 乌云核心菜鸟,联盟托管此号中,欢迎加入08...)
0
-
2014-05-08 20:42 |
xfkxfk
( 核心白帽子 |
Rank:2299 漏洞数:351 | 呵呵!)
0