有点CMS前台无条件注入


有点CMS简介:

《友点企业网站管理系统》(YouDianCMS系统)集电脑网站、手机网站、微信、APP、小程序于一体,共用空间,数据自动同步,是国内五站合一优秀企业建站解决方案。

官网:http://www.youdiancms.com/

注入:

/App/Lib/Action/Member/CustomerAction.class.php:

    function saveModify(){
        header("Content-Type:text/html; charset=utf-8");
        $this->_checkPost( $_POST );
        unset( $_POST['InviterID'], $_POST['IsEnable']);
        $m = D('Admin/Member');
        $inviterID = $m->where("MemberID={$_POST['MemberID']}")->getField('InviterID');
        //检查当前MemberID是否自己的客户
        if( $inviterID == session('MemberID')){
            if( $m->create() ){
                if($m->save() === false){
                    $this->ajaxReturn(null, '修改失败!' , 0);
                }else{
                    $this->ajaxReturn(null, '修改成功!' , 1);
                }
            }else{
                $this->ajaxReturn(null, $m->getError() , 0);
            }
        }else{
            $this->ajaxReturn(null, '数据异常' , 0);
        }
    }

漏洞点在:

    $inviterID = $m->where("MemberID={$_POST['MemberID']}")->getField('InviterID');

上述代码直接将POST带入进了where子查询。

POC:

URL:http://www.test.com/index.php/Member/Customer/saveModify
POST:MemberName=xxxxx&MemberID=[SQL]

声明:小透明 | 渗透测试,代码审计,Web安全|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 有点CMS前台无条件注入


emmmmmmmmmmm............