预防discuz网站的cc攻击

运营Discuz!论坛,最重要的是管理,除了要防御垃圾贴非法广告贴外,必须的网络性能安全维护是必不可少的,曾有用户反馈自己的dz论坛打开特别慢,是不是网站被黑了,或者是中了木马,结果所有的页面扫描下来,网站程序一切正常,主机也是正常,那肯定是遭遇了cc攻击了,这种问题可能很多站长都遇到过(仅限做的好的,做的差的那种站长网站都没人知道)。


攻击者控制大量的电脑主机不停地向你的网站发大量数据包,攻击者利用cc的这个特点模拟N个用户并发连接,而这些连接都是真实、分散的,CC 攻击的请求全都是有效的请求,无法拒绝的请求,不易被察觉,直接导致服务器的连接被一些无用的垃圾请求占用,不能处理正常的访问者的连接,那么后果就是站点的页面访问速度急聚下降,用户访问的时候变的非常非常慢。


了解CC攻击的原理以后,我们提供给大家一种免费的处理方法,通过修改Discuz!内置的\config\config_global.php文件,来有效的防御轻量级的cc攻击。注:最根本的方法是让机房用硬防来防御,不过,这也是一种成本非常高昂的方案,机房不会为你百把元的空间把几万元甚至是百万元的硬防资源长时间搭上,一般这个时候就把你请退了.


文件打开后,我们注意到有段代码:

$_config['security']['attackevasive']= 0;// CC 攻击防御 1|2|4|8


1代表cookie刷新限制

当同一个cookie请求大于或等于1秒时刷新,将被限制访问。


2代表限制代理访问

代理访问是比较常用的一种攻击手段,因为代理可以有效地隐藏自己的身份,也可以绕开所有的防火墙,因为基本上所有的防火墙都会检测并发的TCP/IP连接数目,超过一定数目一定频率就会被认为是Connection-Flood。

使用代理攻击还能很好的保持连接,我们这里发送了数据,代理帮我们转发给对方服务器,我们就可以马上断开,代理还会继续保持着和对方连接(有人利用500个代理就能产生10万并发连接)。所以限制代理访问可以有效防御CC攻击。

4代表二次请求

开启了二次请求机制,先显示等待2秒重新加载然后才会跳转出真实的帖子,如下图所示:


8代表回答问题

当第一次访问时需要回答问题,如下图所示:



答对问题后才可以看到页面的具体内容。


了解了这些数字参数的涵义,我们设置起来就容易的多了,比如我设置成 1|2|4 就代表限制cookie刷新+限制代理访问+开启二次请求。


站点该怎么设置呢?


通过上面的概念性了解,实际的操作开始了,必须要在站点的配置文件中设置正确合理后,才可有效防御CC攻击。

打开\config\config_global.php文件,找到

$_config['security']['attackevasive']= 0;// CC 攻击防御 1|2|4|8

进行修改即可,0为关闭防御,打开防御可以把0修改为组合的形式,组合为: 1|2, 1|4, 2|8, 1|2|4...等


建议大家使用下面的设置方案:

$_config['security']['attackevasive'] = 1|2|4;

此方案可以通过延缓访问的方式,减轻访问量较大的站点的服务器压力,通过修改网站程序的配置来有效的防御轻量级的cc攻击,过滤无效的非法访问,希望对您有用。



猜你喜欢

转载自blog.csdn.net/momo_mutou/article/details/51645748