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

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

缺陷编号:wooyun-2013-031810

漏洞标题:ShopEx某处平衡权限漏洞

相关厂商:ShopEx

漏洞作者: xfkxfk

提交时间:2013-07-22 16:44

修复时间:2013-10-20 16:45

公开时间:2013-10-20 16:45

漏洞类型:非授权访问/权限绕过

危害等级:中

自评Rank:5

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

ShopEx某处平衡权限漏洞

详细说明:

首先我们来看看问题出现的文件源代码:
core/shop/controller/ctl.member.php文件

......
第1026行
//删除收货地址
function delRec($addrId){
$oMem = &$this->system->loadModel('member/member');
if($oMem->delRec($addrId)){
$this->redirect('member','receiver');
}
$this->_output();
}
......


上述函数delRec,没有对addrId进行判断,直接进行删除,这样修改addrId构造而已url就能删除整站中所有用户的收获地址。
我们修改

http://localhost/shopex/?member-21-delRec.html

中的21这个id号就可删除其他任意用户的地址。

漏洞证明:

先看看删除111111的收获地址url:

http://localhost/shopex/?member-5-delRec.html


a.png


再看看删除222222的收货地址url:

http://localhost/shopex/?member-6-delRec.html


b.png


现在我们删除111111的5号收货地址,然后截包,更改addrId为222222的6号收货地址:

c.png


最后222222的6号地址被成功删除。

d.png

修复方案:

具体就不说了,只要把core/shop/controller/ctl.member.php文件的删除收货地址的delRec函数按照修改收获地址函数modifyReceiver同样的方法,判断此addrId是否属于此用户:

if($aRet = $oMem->getAddrById($addrId, $this->member['member_id']))

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


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:1

确认时间:2013-07-22 16:59

厂商回复:

该问题已经提交发现并处理过 20130703
非常感谢您为shopex信息安全做的贡献

最新状态:

暂无


漏洞评价:

评论

  1. 2013-10-21 09:09 | xsjswt ( 普通白帽子 | Rank:156 漏洞数:49 | 我思故我猥琐,我猥琐故我强大)

    @小川 可惜不是你