乌云(WooYun.org)历史漏洞查询---http://wy.zone.ci/
乌云 Drops 文章在线浏览--------http://drop.zone.ci/
2014-03-21: 细节已通知厂商并且等待厂商处理中 2014-03-28: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放 2014-05-22: 细节向核心白帽子及相关领域专家公开 2014-06-01: 细节向普通白帽子公开 2014-06-11: 细节向实习白帽子公开 2014-06-16: 细节向公众公开
过滤不严。
在system/modules/vote/vote.action.php中
public function checked_option(){ //var_dump($_POST); $mysql_model=System::load_sys_class('model'); $title="投票"; $curtime=time(); $option_id=$_POST['radio']; $vote_id=$_POST['vote_id']; $clientip=self::getIP(); //获取客户端地址 $sqlallowguest=''; $sqlinterval=0; //查询投票项的规则和规定时间 $vote_subjects=$mysql_model->GetOne("select * from `@#_vote_subject` where `vote_id`='$vote_id'"); $sqlallowguest=$vote_subjects['vote_allowguest'];//1允许游客投票 0不允许游客投票 $sqlinterval=$vote_subjects['vote_interval']; //N天后可再次投票,0 表示此IP地址只能投一次 if(1==$sqlallowguest){//判断是否允许游客投票 $vote_activer=$mysql_model->GetOne("select * from `@#_vote_activer` where `vote_id`='$vote_id' and `ip`='$clientip' order by subtime desc"); if(!empty($vote_activer)){//判断该ip用户已经投过票 //上次投票间隔天数 $datenum=($curtime-$vote_activer['subtime'])/(60*60*24); if($sqlinterval==0 || $datenum<=$sqlinterval){ //0 表示此IP地址只能投一次 _message("您已参加此次投票活动",null,3); }else{ //查出新增加的票数 $vote_option=$mysql_model->GetList("select * from `@#_vote_option` where `option_id`='$option_id' "); $option_number=$vote_option[0]['option_number']+1; $mysql_model->Query("UPDATE `@#_vote_option` SET option_number='$option_number' where `vote_id`='$vote_id' and `option_id`='$option_id' ");
$clientip=self::getIP();
function getIP() { global $ip; if (getenv("HTTP_CLIENT_IP")) $ip = getenv("HTTP_CLIENT_IP"); else if(getenv("HTTP_X_FORWARDED_FOR")) $ip = getenv("HTTP_X_FORWARDED_FOR"); else if(getenv("REMOTE_ADDR")) $ip = getenv("REMOTE_ADDR"); else $ip = "Unknow"; return $ip; }
xff是可控的。。。 而且没过滤。。 直接注入了。
注入成功。
过滤呗。
危害等级:无影响厂商忽略
忽略时间:2014-06-16 18:19
2014-03-28:已确认