漏洞概要 关注数(24) 关注此漏洞
>
漏洞详情
披露状态:
2014-10-21: 细节已通知厂商并且等待厂商处理中
2014-10-26: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2014-12-20: 细节向核心白帽子及相关领域专家公开
2014-12-30: 细节向普通白帽子公开
2015-01-09: 细节向实习白帽子公开
2014-12-30: 细节向公众公开
简要描述:
我发现齐博在一般应用列表里呢,好期待~
齐博地方门户无源码,测试可以上官网的演示站:http://life.qibosoft.com 进行测试。
详细说明:
问题出在齐博搜索的位置,也就是:http://life.qibosoft.com/coupon/s.php
代码如上,这个注入之所以不需要登录。。。是因为源码里把showerr("请先登录");注释掉 了,不知道为何。
继续往下看,看到这个while语句:
while($rs = $db->fetch_array($querys)){
$fids[]=$rs[fid];
}
查询出来fid,将$fid放进$fids数组中。之后用implode将$fids数组变成字符串,放进IN子句中,IN子句并没有单引号限制。
看起来没问题,因为$fids是$rs[fid]组成的数组。但这里很重要的是,了解齐博的都知道,齐博在inc/common.inc.php中有这样一段:
等于说将$_GET/$_POST/$_COOKIE注册成全局变量了。所以$fids的初值我们是可以控制的,这个while语句前也没有清除$fids,只是往这个数组里加$fid。
最后导致了注入。
我们可以看看演示站:
漏洞证明:
修复方案:
unset($fids);之后再进入while循环。
版权声明:转载请注明来源 phith0n@乌云
>
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2014-12-30 14:44
厂商回复:
漏洞Rank:12 (WooYun评价)
最新状态:
暂无

