有漏洞无作为才可怕、可耻!

  安全问题:

  是否有权限进行CURD,因为参数在地址栏里,是可以修改的,(或参数在html页面里,可以用firebug修改源码),所以进行CURD之前要先查询该操作人是否拥有这条记录,比如:根据门店ID和传递的参数查询这条记录是否属于这个操作人,如果不属于就提示(非法操作,已被记录!,以达到警告的目的)。SQL的where条件不能太单一!

  例如:

    

    /*
     * 校验是否有权限进行CURD
     */
    public function check_rbac($theme_id){
        $model=M();
        $adm_session = es_session::get(md5(conf("BI_AUTH_KEY")), 1);
        $location_id=$adm_session['supplier_locations'];
        $map=array('id'=>$theme_id,'location_id'=>$location_id);
        $result=$model->where($map)->getField('id');
        if(empty($result)){
            $this->error('非法操作,已被记录!');
        }

    }

 

  

如果您阅读过此文章有所收获,请为我顶一个,如果文章中有错误的地方,欢迎指出。

相互学习,共同进步!

 

posted @ 2015-12-13 22:07  张发财  阅读(469)  评论(0编辑  收藏  举报