网站地图    收藏   

主页 > 入门引导 > 黑客攻防 >

DamiCMS 任意控制投票票数 - 网站安全 - 自学php网

来源:未知    时间:2015-04-15 13:07 作者:xxadmin 阅读:

[导读] DamiCMS 任意控制投票票数 投票的关键代码如下。 foreach($_POST[vote] as $v) { var_dump($v); $v = str_replace(\n,,$v); $s = explode(=,$v); var_dump($s); $data[vote] = str_replace($v,$s[0].=.(intval($s[1]) + 1),$data[vote]); }...

DamiCMS 任意控制投票票数

投票的关键代码如下。

foreach($_POST['vote'] as $v)
                {
                        var_dump($v);
                        $v = str_replace("\n","",$v);
                        $s = explode("=",$v);
                        var_dump($s);
                        $data['vote'] = str_replace($v,$s[0]."=".(intval($s[1]) + 1),$data['vote']);
                }
                var_dump($data);
                if($vote->where('id='.intval($_POST['id']))->save($data))



传入的数据用等号分割,类似 选项1=3 会变成 array(选项1,3), 如果只传入选项一,会变成array(选项1,null),intval(null)会变成零,并且写入数据库



POC:



一开始有100票

 

damicms7.JPG



提交以下这样的请求
 

damicms8.JPG



可以看到票数变成1票
 

damicms9.JPG







如果想提高票数可以用x-forwarded-for来进行刷票。

官方Demo测试一下
 

damicms10.JPG

 

解决方案:

不要用str_replace这种诡异的实现。。。

 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论