来源:自学PHP网 时间:2015-04-15 15:00 作者: 阅读:次
[导读] Discuz!X最新版本(及部分旧版本所存在的刷分漏洞)今天论坛有个用户积分突然涨了特别多,一查日志,发现是以前在旧版发现的一个刷分洞。原本以为早就修复了,没想到还存在,那就...
Discuz!X最新版本(及部分旧版本所存在的刷分漏洞) 在完成任务时(home.php?mod=draw&do=view&id=xx),任务先前的状态缺少判断
function draw($id) { global $_G; if(!($this->task = C::t('common_task')->fetch_by_uid($_G['uid'], $id))) { showmessage('task_nonexistence'); } elseif($this->task['status'] != 0) { showmessage('task_not_underway'); } elseif($this->task['tasklimits'] && $this->task['achievers'] >= $this->task['tasklimits']) { return -1; } ...... 之后就是获得任务奖励了
function giveup($id) { global $_G; if($_GET['formhash'] != FORMHASH) { showmessage('undefined_action'); } elseif(!($this->task = C::t('common_task')->fetch_by_uid($_G['uid'], $id))) { showmessage('task_nonexistence');www.2cto.com } elseif($this->task['status'] != '0') { showmessage('task_not_underway'); }
1、新建一个任务,就选择红包类任务吧 home.php?mod=task&do=view&id=2
home.php?mod=task&do=draw&id=2
在 source\class\class_task.php 中的 draw 函数部分,加入任务是否领取的判断 ...... elseif($this->task['status'] != '0') { showmessage('task_not_underway'); }
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com