### 简要描述: 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 ``` [<img src="https://images.seebug.org/upload/201307/22161928fe90ac45dfefaae3d21a64a5dc115dc8.png" alt="a.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/22161928fe90ac45dfefaae3d21a64a5dc115dc8.png) 再看看删除222222的收货地址url: ``` http://localhost/shopex/?member-6-delRec.html ``` [<img src="https://images.seebug.org/upload/201307/22162009e011f10833dd27bcbfcc6cf20f8a4ce0.png" alt="b.png" width="600"...
### 简要描述: 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 ``` [<img src="https://images.seebug.org/upload/201307/22161928fe90ac45dfefaae3d21a64a5dc115dc8.png" alt="a.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/22161928fe90ac45dfefaae3d21a64a5dc115dc8.png) 再看看删除222222的收货地址url: ``` http://localhost/shopex/?member-6-delRec.html ``` [<img src="https://images.seebug.org/upload/201307/22162009e011f10833dd27bcbfcc6cf20f8a4ce0.png" alt="b.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/22162009e011f10833dd27bcbfcc6cf20f8a4ce0.png) 现在我们删除111111的5号收货地址,然后截包,更改addrId为222222的6号收货地址: [<img src="https://images.seebug.org/upload/201307/22162057a8ea2586049c7ad7b1f3f1903fd1b29e.png" alt="c.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/22162057a8ea2586049c7ad7b1f3f1903fd1b29e.png) 最后222222的6号地址被成功删除。 [<img src="https://images.seebug.org/upload/201307/221621252ad6c560896f1ba02629e32915b548fb.png" alt="d.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/221621252ad6c560896f1ba02629e32915b548fb.png)