### 简要描述: shopex在注册用户时存在验证不严,导致注册时可以随意定义预存款余额或积分等字段的内容 ### 详细说明: 在文件\core\shop\controller\ctl.passport.php ``` if( !$info = $account->create($_POST,$message) ) { $this->splash('failed','back',$message,'','',$_POST['from_minipassport']); } ``` 用户注册的变量都保存在$_POST中,继续看根目录文件index.php ``` filterData($_POST); require CORE_DIR.'/include_v5/shopCore.php'; return new shopCore(); //过滤字段 function filterData(&$data) { static $black_list = array( 'order_num','advance','advance_freeze','point_freeze','point_history','member_lv_id', 'point','score_rate','state','role_type','advance_total','advance_consume', 'experience','login_count', ); foreach($black_list as $v) { unset($data[$v]); } } ``` 显然已经意识到这些重要的字段是不允许通过客户端去赋值的,但是没注意大小写的问题。 [<img src="https://images.seebug.org/upload/201307/0301200724b1f4a48adee3d9d6e6c937045f38e3.jpg" alt="shopex.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/0301200724b1f4a48adee3d9d6e6c937045f38e3.jpg) ### 漏洞证明: [<img...
### 简要描述: shopex在注册用户时存在验证不严,导致注册时可以随意定义预存款余额或积分等字段的内容 ### 详细说明: 在文件\core\shop\controller\ctl.passport.php ``` if( !$info = $account->create($_POST,$message) ) { $this->splash('failed','back',$message,'','',$_POST['from_minipassport']); } ``` 用户注册的变量都保存在$_POST中,继续看根目录文件index.php ``` filterData($_POST); require CORE_DIR.'/include_v5/shopCore.php'; return new shopCore(); //过滤字段 function filterData(&$data) { static $black_list = array( 'order_num','advance','advance_freeze','point_freeze','point_history','member_lv_id', 'point','score_rate','state','role_type','advance_total','advance_consume', 'experience','login_count', ); foreach($black_list as $v) { unset($data[$v]); } } ``` 显然已经意识到这些重要的字段是不允许通过客户端去赋值的,但是没注意大小写的问题。 [<img src="https://images.seebug.org/upload/201307/0301200724b1f4a48adee3d9d6e6c937045f38e3.jpg" alt="shopex.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/0301200724b1f4a48adee3d9d6e6c937045f38e3.jpg) ### 漏洞证明: [<img src="https://images.seebug.org/upload/201307/030120328c1f67b38f5c005b614a67ba88d32eec.jpg" alt="shopex-111.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201307/030120328c1f67b38f5c005b614a67ba88d32eec.jpg) 注册后用户的预存款余额已经变为99999