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

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

缺陷编号:wooyun-2014-080875

漏洞标题:qibocms 地方门户系统 注入#4(demo测试)

相关厂商:齐博CMS

漏洞作者: ′雨。

提交时间:2014-10-31 10:06

修复时间:2015-01-29 10:08

公开时间:2015-01-29 10:08

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-10-31: 细节已通知厂商并且等待厂商处理中
2014-10-31: 厂商已经确认,细节仅向厂商公开
2014-11-03: 细节向第三方安全合作伙伴开放
2014-12-25: 细节向核心白帽子及相关领域专家公开
2015-01-04: 细节向普通白帽子公开
2015-01-14: 细节向实习白帽子公开
2015-01-29: 细节向公众公开

简要描述:

offset

详细说明:

在zhuangxiu/job.php中

if(eregi("^([_0-9a-z]+)$",$job)){
require_once(Mpath."inc/job/$job.php");
}elseif(eregi("^([_0-9a-z]+)$",$action)){
require_once(Mpath."inc/job/$action.php");
}


包含进来
zhuangxiu\inc\job\post_img.php中

foreach( $photodb AS $key=>$value){
if(strlen($value)>4&&!eregi("(gif|jpg|png)$",$value)){ //这里限定了value结尾必须含有jpg啥的
showerr("只能上传GIF,JPG,PNG格式的文件,你不能上传此文件:$value");
}
}
$num=0;
foreach( $photodb AS $key=>$value ){
$titledb[$key]=filtrate($titledb[$key]);
$value=trim($value);
$value=filtrate($value);
if($titledb[$key]>100){
showerr("标题不能大于50个汉字");
}
if(strlen($value)<4){
$db->query("DELETE FROM `{$_pre}pic` WHERE pid='{$piddb[$key]}' AND id='$id'");
}elseif($piddb[$key]){
$num++;
$db->query("UPDATE `{$_pre}pic` SET name='{$titledb[$key]}',imgurl='$value' WHERE pid='{$piddb[$key]}'");
}elseif($value){
$num++;
$db->query("INSERT INTO `{$_pre}pic` ( `id` , `fid` , `mid` , `uid` , `type` , `imgurl` , `name` ) VALUES ( '$id', '$fid', '$mid', '$lfjuid', '0', '$value', '{$titledb[$key]}')");
}


UPDATE `{$_pre}pic` SET name='{$titledb[$key]}',imgurl='$value' WHERE pid='{$piddb[$key]}'
注意看这语句。 $title 并没有初始化 那么结合qibocms的全局机制 那么就可以控制
而且这里 $titledb[$key] 如果我们提交的$titledb 为字符串的话 那么[$key]就成了读取字符的了。 如果$key 为0 那么就是读取字符串的第一位
如果我们提交' 被qibocms的全局转义成了\' 那么截取第一位 就是\
就能吃掉一个单引号了。 然后 刚好后面的一个变量可控。
导致了可以注入。 $value 虽然结尾限定了必须为jpg
但是直接注释掉后面的就行了。

12.jpg


可以看到截取的\ 吃掉了 单引号 造成了注入。
构造一下。

13.jpg


成功出数据。
测试demo:

14.jpg


成功报错 直接update column就出数据了。

漏洞证明:

13.jpg

修复方案:

判断是不是数组。
如果是数组的话 再进行这样的操作。

版权声明:转载请注明来源 ′雨。@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2014-10-31 15:52

厂商回复:

感谢提出来

最新状态:

暂无