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

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

缺陷编号:wooyun-2015-096990

漏洞标题:qibocms全部开源系统前台注入一枚

相关厂商:齐博CMS

漏洞作者: ′雨。

提交时间:2015-02-13 13:48

修复时间:2015-05-14 15:06

公开时间:2015-05-14 15:06

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-02-13: 细节已通知厂商并且等待厂商处理中
2015-02-13: 厂商已经确认,细节仅向厂商公开
2015-02-16: 细节向第三方安全合作伙伴开放
2015-04-09: 细节向核心白帽子及相关领域专家公开
2015-04-19: 细节向普通白帽子公开
2015-04-29: 细节向实习白帽子公开
2015-05-14: 细节向公众公开

简要描述:

无视GPC。
因为出现的问题还是在公共文件上出的问题。
而且是每个qibo的每个系统都必须有的文件
所以每个系统都存在。
之前在360发的, 然后刚放假 就再去官网下载个新的来看。
惨不忍睹。
用v7整站系统来演示一下
最近通用漏洞貌似要好好查啊,写详细点。

详细说明:

最新下载地址 http://down.qibosoft.com/down.php?v=v7
之前在360发了个 后面看到补了,
之前的漏洞文件 vote/vote.php来看看

foreach($voteId AS $key=>$value)
{
$value=addslashes($value); //对比之前的是 加了一个来转义。
$db->query("UPDATE {$pre}vote_element SET votenum=votenum+1 WHERE id='$value' ");
}


这样是修复了这里没错 但是没修到实处。
导致了我们还可以找到其他的文件的注入。
继续来看看inc/common.inc.php中 这个公共文件 是每个qibo的系统都必须有的。

$_POST=Add_S($_POST);
$_GET=Add_S($_GET);
$_COOKIE=Add_S($_COOKIE);
function Add_S($array){
foreach($array as $key=>$value){
@eregi("['\\\"]+",$key) && die('ERROR KEY!');
if(!is_array($value)){
$value=str_replace("&#x","& # x",$value); //过滤一些不安全字符
$value=preg_replace("/eval/i","eva l",$value); //过滤不安全函数
!get_magic_quotes_gpc() && $value=addslashes($value);
$array[$key]=$value;
}else{
$array[$key]=Add_S($array[$key]);
}
}
return $array;
}
if(!ini_get('register_globals')){
@extract($_FILES,EXTR_SKIP);//这里是漏洞点。
//可以看到上面的判断条件是 判断register globals 是不是开启的。
// 如果是关闭的 才会进入。 注意是关闭 不是开启哦。。
// regitser globals这个不用多说 从php 4.2开始默认都是off的
// 基本都是关闭的 曾经提交漏洞 因为需要register globals on 所以被未通过。
// 当是off的时候 extract来把_FILES里的读取出来 用了EXTR_SKIP参数
// 所以不能覆盖之前存在的变量 但是qibo是伪全局 所以我们可以找一个未初始化的
// _FILES extract出来后 还是一个数组 所以找一个把数组循环出来的
// 因为_FILES数组里的key是我们不可控制的把, 但是一些value可以控制 例如name
}


所以就要去找一个 把数组循环出来的value带入查询的。
因为之前发了个 把vote/vote.php里面的那处修复了 所以就需要另外找一处了。
找了一会 才找到了一处。。
在member/comment.php中

if($job=='del'){
foreach( $cidDB AS $key=>$value){
$rs=$db->get_one("SELECT aid FROM {$pre}comment WHERE cid='$value'");//把value带入了查询。
$erp=get_id_table($rs[aid]);
$rsdb=$db->get_one("SELECT C.cid,C.uid AS commentuid,C.aid,A.uid,A.fid FROM {$pre}comment C LEFT JOIN {$pre}article$erp A ON C.aid=A.aid WHERE C.cid='$value'");
if($rsdb[uid]==$lfjuid||$rsdb[commentuid]==$lfjuid||$web_admin||in_array($rsdb[fid],$fiddb)){
$db->query("DELETE FROM {$pre}comment WHERE cid='$rsdb[cid]'");
}
$db->query("UPDATE {$pre}article$erp SET comments=comments-1 WHERE aid='$rsdb[aid]'");
}

漏洞证明:

555.jpg


利用放到下面的购买板块啦。
利用很简单 如果能看懂的话 就自己去构造构造把 就别来购买了。
这个member/comment.php 是需要登录一个会员的
其实地方门户系统还有其他的地方是不需要登录会员的。
但是这里我就不多说了。

修复方案:

_FILES过滤。

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2015-02-13 15:05

厂商回复:

感谢提出来

最新状态:

暂无


漏洞评价:

评论

  1. 2015-02-13 13:51 | menmen519 ( 普通白帽子 | Rank:762 漏洞数:146 | http://menmen519.blog.sohu.com/)

    过年又发了!!!!

  2. 2015-02-13 13:53 | 浅蓝 ( 普通白帽子 | Rank:274 漏洞数:109 | 爱安全:www.ixsec.orgXsec社区:zone.ixse...)

    前排!

  3. 2015-02-13 14:36 | 炊烟 ( 普通白帽子 | Rank:238 漏洞数:44 | 每一天都需要努力。)

    雨牛又回来了!!

  4. 2015-02-13 14:41 | 泳少 ( 普通白帽子 | Rank:231 漏洞数:79 | ★ 梦想这条路踏上了,跪着也要...)

    放假了。。

  5. 2015-02-13 14:56 | 牧马 ( 普通白帽子 | Rank:107 漏洞数:17 | 我是要成为猪猪侠的男人。。。。)

    雨牛id的空格不见了?

  6. 2015-02-13 15:01 | ′雨。 ( 普通白帽子 | Rank:1231 漏洞数:190 | Only Code Never Lie To Me.)

    @牧马 对捏 有空格@不到 就麻烦 就把空格去掉了。

  7. 2015-02-13 15:01 | ′雨。 ( 普通白帽子 | Rank:1231 漏洞数:190 | Only Code Never Lie To Me.)

    话说咋看不到那POC板块了。。

  8. 2015-02-13 16:19 | 牛肉包子 ( 普通白帽子 | Rank:254 漏洞数:64 )

    前天放的假吧 给跪了

  9. 2015-02-13 18:49 | %270x5c ( 实习白帽子 | Rank:64 漏洞数:23 | 乌拉拉)

    为何要这么叼

  10. 2015-02-13 23:22 | 小菜虫 ( 路人 | Rank:24 漏洞数:5 )

    雨神 是变量覆盖吗

  11. 2015-02-17 21:27 | 90Snake ( 普通白帽子 | Rank:109 漏洞数:42 | 最大的漏洞就是人)

    @′雨。 还能改ID???

  12. 2015-03-17 19:25 | menmen519 ( 普通白帽子 | Rank:762 漏洞数:146 | http://menmen519.blog.sohu.com/)

    common.inc 和我猜测的一样,果真是common文件问题 看样子思路这东西能通用啊

  13. 2015-05-14 16:06 | 超蓝 ( 路人 | Rank:4 漏洞数:1 | 换个马甲好好做人,请叫我暧昧)

    叼屌屌

  14. 2015-05-14 16:59 | sql小神 ( 路人 | Rank:19 漏洞数:4 | 有些漏洞可以提,有些漏洞不可以提。)

    雨神又来了

  15. 2015-05-14 21:50 | bobbi ( 路人 | Rank:8 漏洞数:6 | 人生真是寂寞如雪)

    求构造语句