DedeCMS自定义表单提示88952634恶意提交
原创DedeCMS经常使用表单来接收或收集用户提交的订单或信息,如果有人恶意攻击网站或者用扫描的方法,由于程序本身对某些字符进行过滤,如果你的表单提交过来的数据全部显示:88952634,就证明收到恶意攻击!
应对这样的攻击除了自身服务器的防护外,还可以在DedeCMS本身的diy表单里限制用户同一时间提交表单信息。网上找到这样的应对方法:
找到/plus/diy.php,找到
if(!is_array($diyform)) { showmsg('自定义表单不存在', '-1'); exit(); }
下面添加代码:
//检测游客是否已经提交过表单 //www.vi586.com if(isset($_COOKIE['VOTE_MEMBER_IP'])) { if($_COOKIE['VOTE_MEMBER_IP'] == $_SERVER['REMOTE_ADDR']) { ShowMsg('您已经填写过表单啦','-1'); exit(); } else { setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row['spec']*3600,'/'); } } else { setcookie('VOTE_MEMBER_IP',$_SERVER['REMOTE_ADDR'],time()*$row['spec']*3600,'/'); }
但是这是针对用户本身,也就是运用了浏览器的cookie,但是程序扫描的应该会失效,Safe3WVS扫描器在扫描sql注入漏洞时,post字段内就含有88952634这个数字,
这是利用限制IP达到重复多次提交的目的,用户同一个IP只能一天内只能提交三次,在上面的代码替换成下面代码:
//判断ip,限制预约次数 $intime = date('Y-m-d'); $row_ip = $dsql->getOne("SELECT count(*) as dd FROM `dede_xxxx` WHERE ip like '%{$ip}%' and date like '%{$intime}%'"); if($row_ip['dd'] >= 3) { echo "<script>alert('您今天的次数已经到达上限,欢迎明天前来!'); window.location.href=''"; exit(); }
扩展阅读
- DedeCMS移动栏目导航channelartlist判断当前栏目错误
- 百度清风算法4.0上线,捆绑下载器终结
- DedeCMS更换内容模型后文章不显示无损迁移数据
- DedeCMS表单自定义字段地区三级联动下拉选择修改优化版
- DedeCMS显示当前访问用户地域PHP方法
- DedeCMS自定义表单导出当天、两天的部分Excel数据
- 网站反复被植入木马较为有效的防护手段
- 服务器选择Win或Linux系统哪种更安全易上手
- DedeCMS缩略图引用HTTPS站外图片显示错误
- DedeCMS自定义表单批量审核增加删除全选取消全选按钮
- DedeCMS上传图片相对路径改为绝对路径有效处理办法
- 每到年底需要注意木马病毒频繁攻击应如何应对
本文地址:https://www.vi586.com/web/325.html
版权声明:原创文章,版权归重庆SEO吖七所有,欢迎分享本文,支持原创,转载请保留出处
赞
赞(5)