轻源码

  • QingYuanMa.com
  • 全球最大的互联网技术和资源下载平台
搜索
轻源码 门户 Discuz!专区 查看主题

Discuz! X3.1 防止自动注册机

发布者: lbm | 发布时间: 2018-2-12 09:23| 查看数: 6192| 评论数: 0|帖子模式

问题:在discuz论坛的管理过程中,发现很多不存在的邮箱在不停的注册。经查证发现是一些注册机在注册。有什么办法防止吗?

分析:
        这些软件进行注册的时候用户名的本人是不会进到论坛来的,但我们在后台设置了问答验证和验证码,在他的注册机里面有获取这些信息的功能。
        比如我们设置一个问答:郑州区号是多少?大家都知道是0371,注册机那边获取验证问答的时候,软件管理人员肯定也知道是0371,这种方法没用。

解决办法:
        我们需要解决的就是他不到论坛来就无法获取问题与答案。

步骤:

① 后台 进行 验证设置
c631e409229c37f16b52e15de18da3a9.png



② register.htm  文件 代码修改

template\default\member  在默认模板文件夹找到member文件夹,里面有个 register.htm 文件,打开
ctrl+f  查找 <!--{if $secqaacheck || $seccodecheck}-->   大概在213行 可以找到。
213—216行代码:
  1. <!--{if $secqaacheck || $seccodecheck}-->
  2.         <!--{block sectpl}--><div class="rfm"><table><tr><th><span class="rq">*</span><sec>: </th><td><sec><br /><sec></td></tr></table></div><!--{/block}-->
  3.         <!--{subtemplate common/seccheck}-->
  4. <!--{/if}-->
复制代码
修改为(即把上面代码删了,把下面的复制过去  注意注释部分):
  1. <!--{if $secqaacheck}-->    <!--注意这里if $secqaacheck || $seccodecheck变为if $secqaacheck-->
  2.       <!--{block sectpl}--><div class="rfm"><table><tr><th><span class="rq">*</span><sec>: </th><td><sec><br /><sec></td></tr></table></div><!--{/block}-->
  3.       <!--{subtemplate common/seccheck1}-->   <!--注意这里seccheck变为seccheck1-->
  4. <!--{/if}-->

  5. <!--{if $seccodecheck}-->   <!--注意这里 if $secqaacheck || $seccodecheck变为$seccodecheck-->
  6.        <!--{block sectpl}--><div class="rfm"><table><tr><th><span class="rq">*</span><sec>: </th><td><sec><br /><sec></td></tr></table></div><!--{/block}-->
  7.        <!--{subtemplate common/seccheck2}-->  <!--注意这里seccheck变为seccheck2-->
  8. <!--{/if}-->
复制代码
③seccheck.htm文件代码修改:

在default\common文件夹下找到seccheck.htm文件,把它复制两份,分别命名seccheck1.htm与seccheck2.htm

原seccheck.htm文件代码:
  1. {eval
  2.         $sechash = !isset($sechash) ? 'S'.($_G['inajax'] ? 'A' : '').$_G['sid'] : $sechash.random(3);
  3.         $sectpl = str_replace("'", "\'", $sectpl);
  4. }
  5. <!--{if $secqaacheck}-->
  6.         <span id="secqaa_q$sechash"></span>               
  7.         <script type="text/javascript" reload="1">updatesecqaa('q$sechash', '$sectpl', '{$_G[basescript]}::{CURMODULE}');</script>
  8. <!--{/if}-->
  9. <!--{if $seccodecheck}-->
  10.        <span id="seccode_c$sechash"></span>               
  11.        <script type="text/javascript" reload="1">updateseccode('c$sechash', '$sectpl', '{$_G[basescript]}::{CURMODULE}');</script>
  12. <!--{/if}-->
复制代码
修改之后
seccheck1.htm文件代码:
  1. {eval
  2.         $sechash = !isset($sechash) ? 'S'.($_G['inajax'] ? 'A' : '').$_G['sid'] : $sechash.random(3);
  3.         $sectpl = str_replace("'", "\'", $sectpl);
  4. }

  5. <!--{if $secqaacheck}-->
  6.        <span id="secqaa_q$sechash"></span>        
  7.        <script type="text/javascript" reload="1">updatesecqaa('q$sechash', '$sectpl', '{$_G[basescript]}::{CURMODULE}');</script>
  8. <!--{/if}-->
复制代码
seccheck2.htm文件代码:
  1. {eval
  2.         $sechash = !isset($sechash) ? 'S'.($_G['inajax'] ? 'A' : '').$_G['sid'] : $sechash.random(3);
  3.         $sectpl = str_replace("'", "\'", $sectpl);
  4. }

  5. <!--{if $seccodecheck}-->
  6.        <span id="seccode_c$sechash"></span>               
  7.        <script type="text/javascript" reload="1">updateseccode('c$sechash', '$sectpl', '{$_G[basescript]}::{CURMODULE}');</script>
  8. <!--{/if}-->
复制代码
④在register.htm  文件添加问题(对应discuz后台答案)

<!--{if $secqaacheck}-->部分添加问题:
  1. <!--{if $secqaacheck}-->
  2.        <!--{block sectpl}--><div class="rfm"><table><tr><th><span class="rq">*</span><sec>: </th><td><sec><br /><sec><br/>

  3. <label>验证问答处回答:<span style=" color:red;">本网站网址中间部分9个字母?</span></label>    <!--手动添加的问题-->

  4. </td></tr></table></div><!--{/block}-->
  5.         <!--{subtemplate common/seccheck1}-->
  6. <!--{/if}-->
复制代码


上面注释部分为手动添加的问题,当然可以不定时的更改问题和后台对应问题的答案,这样子就可以有效地预防注册机注册,当然不是100%,这里只是提供一个思路供大家参考


最后效果:
5483fe2da1d4b8cddac12c311bd41a81.png




当然,不手动在页面添加问题的效果如下:
6246ca3a82be7b16f4dbf38c141ed380.png


可以对比一下

最新评论

轻源码让程序更轻更快

QingYuanMa.com

工作时间 周一至周六 8:00-17:30

客服QQ点击咨询

微信公众号

APP客户端

Copyright © 2016-2019 http://www.qingyuanma.com/ 鲁ICP备17014494号

快速回复 返回顶部 返回列表