shopex 接口设计问题导致某一类用户名密码重置

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: shopex 接口设计问题导致某一类用户名密码重置 ### 详细说明: 看到 shopex 有一个云登录机制,看代码: ``` // 云登陆回调地址 function ecopen_login_verify(){ // 签名验证 $token = $this->system->getConf('certificate.token'); ($_GET['sign'] && $this->get_ce_sign($_GET, $token) == $_GET['sign']) || exit("签名错误,云登陆无法完成"); // 为登陆者创建账户 $accountMdl = $this->system->loadModel('member/account'); $mem = $accountMdl->createotherlogin($_GET); if(!$mem){ $this->splash('failed',$this->system->base_url(),__('登陆失败,请检查!')); exit; } ``` 跟进去看看get_ce_sign ``` function get_ce_sign($params,$token){ $arg=""; ksort($params); reset($params); while (list ($key, $val) = each ($params)) { if ( 'sign' == $key ) continue; $arg.=$key."=".urlencode($val)."&"; } return md5(substr($arg,0,count($arg)-2).$token);//去掉最后一个问号 } ``` 这里默认安装时候token是个空值 所以之后md5是可以计算出来的,根据他的函数我们计算一个url http://localhost/shopex/?passport-ecopen_login_verify.html&open_type=xxxxxxx&open_id=yyyyy&nickname=xxxxx&email=test@163.com&password=mmmm&sign=76753b58491c5baa4c7885780c753e6a 跟进去$mem =...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息