来源:未知 时间:2015-04-15 13:08 作者:xxadmin 阅读:次
[导读] doyo建站程序平行权限问题2处 小伙伴和我看了下doyoCMS的逻辑,交wooyun小伙伴们看看是不是个 漏洞 首先出现问题的地方是这段代码 代码位置:/source/member.php function mydel(){//多处逻辑越权...
doyo建站程序平行权限问题2处 小伙伴和我看了下doyoCMS的逻辑,交wooyun小伙伴们看看是不是个漏洞 function mydel(){//多处逻辑越权操作 $molds=$this->syArgs('molds',1); $id=$this->syArgs('id'); switch ($molds){ case 'comment': if(!syDB('comment')->delete(array('cid'=>$id,'user'=>$this->my['user']))){ message("删除失败,请重新提交"); } break; case 'message': if(!syDB('message')->delete(array('id'=>$id,'user'=>$this->my['user']))){ message("删除失败,请重新提交"); } syDB('message_field')->delete(array('aid'=>$id)); break; default: $c=syDB($molds)->find(array('id'=>$id,'user'=>$this->my['user'],'usertype'=>1),null,'id,isshow'); if(!$c||$c['isshow']==1)message("此内容已经审核或不是您发布的内容,不能删除。"); if(!syDB($molds)->delete(array('id'=>$id,'user'=>$this->my['user'],'usertype'=>1))){ message("删除失败,请重新提交"); } syDB($molds.'_field')->delete(array('aid'=>$id)); break; } $w=array('aid'=>$id,'molds'=>$molds); foreach(syDB('member_file')->findAll($w,null,'url') as $v){@unlink($v['url']);} syDB('member_file')->delete($w); message("删除成功"); }
解决方案:增加数据库造作中uid的识别 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com