当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2014-049703

漏洞标题:Discuz! X3.1 刷分系列漏洞之2

相关厂商:Discuz!

漏洞作者: Coxxs

提交时间:2014-01-24 10:26

修复时间:2014-04-24 10:27

公开时间:2014-04-24 10:27

漏洞类型:设计缺陷/逻辑错误

危害等级:低

自评Rank:3

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-01-24: 细节已通知厂商并且等待厂商处理中
2014-01-24: 厂商已经确认,细节仅向厂商公开
2014-01-27: 细节向第三方安全合作伙伴开放
2014-03-20: 细节向核心白帽子及相关领域专家公开
2014-03-30: 细节向普通白帽子公开
2014-04-09: 细节向实习白帽子公开
2014-04-24: 细节向公众公开

简要描述:

Discuz!X最新版本(及部分旧版本所存在的刷分漏洞)
这几天整理DZ的刷分漏洞,原本打算出个系列发上来,结果发现不少漏洞都已经fix了,这可能已经是系列的最后一个了吧。

详细说明:

在使用“千斤顶”道具时,使用的数量缺少负值判断
上面的一句话已经很清晰地说明问题了,所以这里就不分析的很详细了
使用“千斤顶”道具时,会调用以下文件:
source\class\magic\magic_jack.php
在该文件的57行开始,是使用道具的部分:

function usesubmit() {
...
$magicnum = intval($_GET['magicnum']);
...
}


其中的$magicnum就是在使用道具时,填写的使用数量。
填入正数时,会正常消耗相应数量的“千斤顶”道具。
但由于这个变量未进行负值判断,造成填入负数时,可以直接获得大量“千斤顶”道具。
具体重现步骤,在漏洞说明中详述。

漏洞证明:

1、购买一个千斤顶道具
2、打开任意帖子,在右下角选择“千斤顶”道具,提示:

本次使用数量:


3、填入一个负数,如-100,点击使用,提示:

千斤顶成功将主题顶起


4、查看道具数量,现在有101个千斤顶
之后将这些道具卖掉即可刷取积分

修复方案:

打开 source\class\magic\magic_jack.php
查找(约在第67行):

if(empty($magicnum) || $magicnum > $this->magic['num']) {


替换为

if(empty($magicnum) || $magicnum <= 0 || $magicnum > $this->magic['num']) {


这样,使用道具填入负数时,就会提示

道具数量不足或没有填写使用数量。


版权声明:转载请注明来源 Coxxs@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:5

确认时间:2014-01-24 11:01

厂商回复:

感谢

最新状态:

暂无