web建站教程
  1. 首页
  2. vuejs
  3. js
  4. 好玩
  5. seo教程
  6. 前端知识
  7. 百度echarts
  8. 更多
    php入门
    nodejs
    mockjs
    reactjs
    mysql
    wordpress
    织梦cms
    帝国cms
    git教程
    IT知识
    模板大全
    休息站

帝国CMS技巧之防灌水机群发的一些功能说明

292 ℃
     

帝国cms技巧之防灌水机群发的一些功能说明,直接写步骤:

一、验证码
1、开启验证码

会员注册:后台>“系统设置”>“参数设置”>“用户设置”里开启
发布投稿:修改终极栏目选项设置里的投稿设置
会员登陆:后台>“系统设置”>“参数设置”>“用户设置”里开启

其它地方开启的可以看下参数设置里的相关设置。

2、验证码参数设置
后台>“系统设置”>“参数设置”>“基本属性”里有这三个设置项:
验证码字符组成:比较复杂的可以选用“数字+字母”
验证码过期时间:这个时间越短效果越好,表示从填写信息到提交表单的最长时间间隔。
验证码加密字符串:建议定期修改,被攻击时马上修改。

二、设置表单提交来源
后台>“系统设置”>“参数设置”>“基本属性”>“前台允许提交的来源地址”设置:
http://域名/

一般设置域名地址即可,如果要详细可以将所有表单提交都加上,比如投稿的:http://域名/e/DoInfo/AddInfo.php

三、可以设置发布时间间隔
会员注册:后台>“系统设置”>“参数设置”>“用户设置”>“同一IP注册间隔限制:”:一般设24小时。
发布投稿:后台>“系统设置”>“参数设置”>“信息设置”>“重复投稿时间限制”:设30秒以上为佳

四、设置新会员投稿限制
发布投稿:后台>“系统设置”>“参数设置”>“信息设置”>“新会员投稿限制”:一般可以设置30分钟或60分钟。

此方法只有在栏目投稿权限设置为会员才有效。这个是比较有效的方法,但不适合新开的网站。

五、栏目设置会员才能发布投稿
修改终极栏目选项设置里的投稿设置

六、会员注册可采用邮件激活
后台>“系统设置”>“参数设置”>“用户设置”里开启

七、限制会员每天投稿数量
后台>“用户面板”>“管理会员组”>修改会员组里可以限制会员每天投稿数量

此方法只有在栏目投稿权限设置为会员才有效。

八、定期修改前台COOKIE变量前缀
方法1:修改e/class/config.php文件里的“$phome_cookievarpre”变量内容
方法2:后台>“系统设置”>“安全参数配置”里修改(6.5以上版本支持在线设置)

九、表单设置必填项:
原理:给会员表单或系统模型设置一个隐藏的必填项。
1、会员注册表单:
(1)、后台>“用户面板”>“管理会员字段”>增加一个字段,字段类型TINYINT(1)
(2)、后台>“用户面板”>“管理会员表单”>修改会员表单:
选择刚才增加的字段为录入项、必填项、可增加、可修改;
会员表单模板里加:<input type="hidden" name="字段名" value="1">
然后点修改即可。

建议定期修改字段名,被攻击时马上修改。

2、信息投稿表单:
(1)、后台>“系统设置”>“管理数据表”>“管理字段”>增加一个字段,字段类型TINYINT(1)
(2)、后台>“系统设置”>“管理数据表”>“管理系统模型”>修改系统模型:
选择刚才增加的字段为录入项、投稿项、必填项、可增加、可修改;
录入表单模板和前台投稿表单模板里都加:<input type="hidden" name="字段名" value="1">
然后点修改即可。

建议定期修改字段名,被攻击时马上修改。

十、自制COOKIE或SESSION验证
此方法效果佳,但需要修改代码实现。下面我以COOKIE加密验证为例:
在表单页加以下PHP代码:(此代码前面不能有HTML输出,文件要导入e/class/connect.php文件)

$EmpireCMS_post_key='fdsai388f2f823fff'; //密钥
$empirecms_post_date='Y-m-d-H-i'; //验证时间格式,如何组合自己可以换字符位置与更改联接符-
$empirecms_post_domain='http://www.phome.net'; //验证域名地址
$empirecms_post_ck_var='abcdkpjtf'; //验证COOKIE变量名
$empirecms_post_chkey=md5($empirecms_post_key.date($empirecms_post_date).$empirecms_post_domain.$empirecms_post_ck_var);
esetcookie($empirecms_post_ck_var,$empirecms_post_chkey);

在接收函数加以下PHP代码:

$empirecms_post_key='fdsai388f2f823fff'; //密钥
$empirecms_post_date='Y-m-d-H-i'; //验证时间格式,如何组合自己可以换字符位置与更改联接符-
$empirecms_post_domain='http://www.phome.net'; //验证域名地址
$empirecms_post_ck_var='abcdkpjtf'; //验证COOKIE变量名
$empirecms_post_chkey=md5($empirecms_post_key.date($empirecms_post_date).$empirecms_post_domain.$empirecms_post_ck_var);
if(getcvar($empirecms_post_ck_var)!=$empirecms_post_chkey)
{
esetcookie($empirecms_post_ck_var,'');
exit();
}

注意事项:表单端和接收端的密钥、验证时间格式、验证域名地址、验证COOKIE变量名要一致,内容自行修改,上面只是例子。定期修改验证内容。

例子:(修改文件建议用DREAMWEAVER修改,可避免UTF-8被转成GBK编码)
1、以会员表单为例:
修改表单端文件:/e/member/register/index.php,打开文件搜索“$ecmsfirstpost=1;”,在这行下面加:

$empirecms_post_key='fdsai388f2f823fff'; //密钥
$empirecms_post_date='Y-m-d-H-i'; //验证时间格式,如何组合自己可以换字符位置与更改联接符-
$empirecms_post_domain='http://www.phome.net'; //验证域名地址
$empirecms_post_ck_var='abcdkpjtf'; //验证COOKIE变量名
$empirecms_post_chkey=md5($empirecms_post_key.date($empirecms_post_date).$empirecms_post_domain.$empirecms_post_ck_var);
esetcookie($empirecms_post_ck_var,$empirecms_post_chkey);

修改接收端函数文件:e/class/user.php,打开文件搜索“eCheckIpRegTime($regip,$pr['regretime']);”,在这行下面加:

$empirecms_post_key='fdsai388f2f823fff'; //密钥
$empirecms_post_date='Y-m-d-H-i'; //验证时间格式,如何组合自己可以换字符位置与更改联接符-
$empirecms_post_domain='http://www.phome.net'; //验证域名地址
$empirecms_post_ck_var='abcdkpjtf'; //验证COOKIE变量名
$empirecms_post_chkey=md5($empirecms_post_key.date($empirecms_post_date).$empirecms_post_domain.$empirecms_post_ck_var);
if(getcvar($empirecms_post_ck_var)!=$empirecms_post_chkey)
{
esetcookie($empirecms_post_ck_var,'');
exit();
}

2、以投稿表单为例:
修改表单端文件:/e/DoInfo/AddInfo.php,打开文件搜索“$tbname=$cr['tbname'];”,在这行下面加:

$empirecms_post_key='fdsai388f2f823fff'; //密钥
$empirecms_post_date='Y-m-d-H-i'; //验证时间格式,如何组合自己可以换字符位置与更改联接符-
$empirecms_post_domain='http://www.phome.net'; //验证域名地址
$empirecms_post_ck_var='abcdkpjtf'; //验证COOKIE变量名
$empirecms_post_chkey=md5($empirecms_post_key.date($empirecms_post_date).$empirecms_post_domain.$empirecms_post_ck_var);
esetcookie($empirecms_post_ck_var,$empirecms_post_chkey);

修改接收端函数文件:e/class/qinfofun.php,打开文件搜索“$keyvname='checkinfokey';”,在这行下面加:

$empirecms_post_key='fdsai388f2f823fff'; //密钥
$empirecms_post_date='Y-m-d-H-i'; //验证时间格式,如何组合自己可以换字符位置与更改联接符-
$empirecms_post_domain='http://www.phome.net'; //验证域名地址
$empirecms_post_ck_var='abcdkpjtf'; //验证COOKIE变量名
$empirecms_post_chkey=md5($empirecms_post_key.date($empirecms_post_date).$empirecms_post_domain.$empirecms_post_ck_var);
if(getcvar($empirecms_post_ck_var)!=$empirecms_post_chkey)
{
esetcookie($empirecms_post_ck_var,'');
exit();
}

十一、屏蔽IP段
后台>“系统设置”>“参数设置”>“用户设置”>“访问控制设置”,可设置禁止 IP 访问

技巧:(执行SQL前请先备份数据)
1、批量删除所有未审核会员SQL:
delete from phome_enewsmember where checked=0;
delete from phome_enewsmemberadd where userid not in (select userid from phome_enewsmember);

2、批量删除某一会员ID段会员SQL:(下面是删除2500~3000会员ID之间的会员)
delete from phome_enewsmember where userid>=2500 and userid<=3000;
delete from phome_enewsmemberadd where userid>=2500 and userid<=3000;

3、批量删除所有未审核的信息SQL:
delete from phome_ecms_news where checked=0;
delete from phome_ecms_news_data_1 where id not in (select id from phome_ecms_news);

4、批量删除所有标题包含“cms”的信息SQL:
delete from phome_ecms_news where where title like '%cms%';
delete from phome_ecms_news_data_1 where id not in (select id from phome_ecms_news);

其他说明:
一般开启验证码就能防护(记得定期更改“验证码加密字符串”)。
如果对方确实盯上你的站,针对你的网站来做灌水机,考虑用上面的其他方法结合。

dedecms验证码的代码解析

织梦DEDECMS验证码不显示的完美解决方法

详细的DedeCMS(织梦)目录权限安全设置教程

DEDECMS自动锚文本的设置方法与技巧详解

帝国cms信息反馈开启验证码

标签: 参数设置, 设置, 验证码

上面是“帝国CMS技巧之防灌水机群发的一些功能说明”的全面内容,想了解更多关于 帝国cms 内容,请继续关注web建站教程。

当前网址:https://ipkd.cn/webs_1192.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

当前位置: 网站首页 > 帝国cms
本文共计5276个字,预计阅读时长36分钟
生活小工具,收录了80多款小工具
上一篇: WordPress用自定义代码实现更高级的分页功能
下一篇: 车牌号输入HTML模板下载
x 打工人ai神器