来源:自学PHP网 时间:2015-04-17 10:15 作者: 阅读:次
[导读] shopex在注册用户时存在验证不严,导致注册时可以随意定义预存款余额或积分等字段的内容在文件\core\shop\controller\ctl.passport.phpif( !$info = $account-create($_POST,$message) ) { ......
shopex在注册用户时存在验证不严,导致注册时可以随意定义预存款余额或积分等字段的内容
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]); } } 显然已经意识到这些重要的字段是不允许通过客户端去赋值的,但是没注意大小写的问题。
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com