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

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

缺陷编号:wooyun-2015-096710

漏洞标题:Iwebshop 最新版越权漏洞打包

相关厂商:Iwebshop

漏洞作者: 路人甲

提交时间:2015-02-17 20:43

修复时间:2015-04-30 18:48

公开时间:2015-04-30 18:48

漏洞类型:SQL注射漏洞

危害等级:中

自评Rank:10

漏洞状态:未联系到厂商或者厂商积极忽略

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-02-17: 积极联系厂商并且等待厂商认领中,细节不对外公开
2015-04-30: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

Iwebshop 最新版越权漏洞打包

详细说明:

看到iwebshop在2015.01.26又更新了(v3.0.15011000),看了看更新说明,说已经修改了wooyun上的漏洞,就下下来研究一下。
以下的5个点都存在越权问题,某些不但可以看到用户的各种信息,还可以帮助卖家发货(发给谁就是你说了算了,你懂的)~另外,这里通遍历url后面的id 即可操作所有的订单数据
GET /index.php?controller=seller&action=order_deliver&id=2
GET /index.php?controller=order&action=shop_template&id=2&seller_id=2
GET /index.php?controller=order&action=merge_template&id=1&seller_id=1
GET /index.php?controller=order&action=pick_template&id=1&seller_id=1
GET /ndex.php?controller=order&action=expresswaybill_template&id=6
下面就以第一个为例进行证明
问题点:GET /index.php?controller=seller&action=order_deliver&id=2 用户在自己的“商家管理”页面访问这个URL,即可对该订单进行操作(发给谁就是你说了算了,你懂的),当然这里的用户信息可以看到自不必说了,另外,这里的id可以从1开始遍历,就可以操作所有的订单了。
文件在/controllers/seller.php的order_deliver()方法中

public function order_deliver()
{
$order_id = IFilter::act(IReq::get('id'),'int');
$data = array();
if($order_id)
{
$order_show = new Order_Class();
$data = $order_show->getOrderShow($order_id);
}
$this->setRenderData($data);
$this->redirect('order_deliver');
}


可以看到id是用户传入的,且没有对该id进行权限和属性的判断,直接查数据库了。
测试方法:进入自己的“商家管理”,访问以上的url即可,通过修改id可遍历所有订单。

捕获副本.jpg


下图为可操作其他商家的订单

证明副本.jpg

漏洞证明:

见 详细说明

修复方案:

过滤

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝