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

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

缺陷编号: WooYun-2014-49070

漏洞标题: PHPYUN逻辑错误无限刷积分

相关厂商: php云人才系统

漏洞作者: 齐迹

提交时间: 2014-01-16 16:08

公开时间: 2014-04-16 16:08

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

危害等级: 高

自评Rank: 10

漏洞状态: 厂商已经确认

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

Tags标签: 逻辑错误

1人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-01-16: 细节已通知厂商并且等待厂商处理中
2014-01-16: 厂商已经确认,细节仅向厂商公开
2014-01-19: 细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航无声信息
2014-03-12: 细节向核心白帽子及相关领域专家公开
2014-03-22: 细节向普通白帽子公开
2014-04-01: 细节向实习白帽子公开
2014-04-16: 细节向公众公开

简要描述:

PHPYUN逻辑错误无限积分所以标题党了一下!

详细说明:

逻辑错误

未对用户输入严格过滤!

问题发生在

member/model/com.class.php

1158行

code 区域
$integral=$this->config["integral_com_comments"]*$_POST['time'];
.....
if($statis["integral"]<$integral){
$this->obj->ACT_msg("index.php?C=pay","你的".$this->config["integral_pricename"]."不足,请先充值");
}
.....
$nid=$this->obj->company_invtal($this->uid,$integral,false,"购买会员等级");
....



进行找到company_invtal方法

code 区域
function company_invtal($uid,$integral,$auto=true,$name="",$pay=true,$pay_state=2,$type="integral"){
if($auto){
$nid=$this->DB_update_all("company_statis","`".$type."`=`".$type."`+".$integral."","uid='".$uid."'");
}else{
$nid=$this->DB_update_all("company_statis","`".$type."`=`".$type."`-".$integral."","uid='".$uid."'");
$integral="-".$integral;
}
if($pay){
$dingdan=mktime().rand(10000,99999);
$value="`order_id`='".$dingdan."',";
$value.="`com_id`='".$uid."',";
$value.="`pay_remark`='".$name."',";
$value.="`pay_state`='".$pay_state."',";
$value.="`pay_time`='".mktime()."',";
$value.="`order_price`='".$integral."',";
if($type=="integral"){
$value.="`type`='1'";
}else{
$value.="`type`='2'";
}
$this->DB_insert_once("company_pay",$value);
}
return $nid;
}



这里也没有判断正负数 直接 减。。。

漏洞证明:

访问

/member/index.php?C=buyvip

phpyun_bug4.jpg





phpyun_bug5.jpg





phpyun_bug6.jpg

修复方案:

判断一下把!这可是钱啊!

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2014-01-16 16:13

厂商回复:

感谢您的提供,我们会尽快修复!

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):
登陆后才能进行评分

评价

登录后才能发表评论,请先 登录