原文链接
C攻击确实是很蛋疼的一种攻击方式,Discuz!的配置文件中已经有了一个自带的减缓CC攻击的参数,在配置文件config_global.php中72行: $_config['security']['attackevasive'] = 0; 论坛防御级别,可防止大量的非正常请求造成的拒绝服务攻击,防护大量正常请求造成的拒绝服务攻击, 这个参数可以设置的值有: 0表示关闭此功能 1表示cookie刷新限制 2表示限制代理访问 4表示二次请求 8表示回答问题(第一次访问时需要回答问题) 默认值是0,当遭到攻击时,先分析其攻击手法和规律,组合使用。可以尝试先设置为2,4,1|4,1|2|4|8,如果1|2|4|8还不行,那说明应用程序层面上已经抵挡不住,网站遭到的可能是大流量的DDOS洪水攻击,只能通过像墨者安全那样专业的高防服务才能有效的进行防御。 开启防CC攻击后,会影响搜索引擎蜘蛛的抓取,下面修改后不影响搜索引擎蜘蛛的抓取方法来某网友提供,修改前切记备份好文件。 不影响搜索引擎蜘蛛抓取的修改方法,需要修改下面文件: 第一种方法: 在/source/class/discuz/discuz_application.php文件中可以找到如下代码(第330行) if($this->config['security']['attackevasive'] && (!defined('CURSCRIPT') || !in_array($this->var['mod'], array('seccode', 'secqaa', 'swfupload')) && !defined('DISABLEDEFENSE'))) { 修改为 if(!IS_ROBOT && $this->config['security']['attackevasive'] && (!defined('CURSCRIPT') || !in_array($this->var['mod'], array('seccode', 'secqaa', 'swfupload')) && !defined('DISABLEDEFENSE'))) {
第二种方法、: 修改文件 \source\include\misc\misc_security.php 修改方法 在 global $_G; 下面加入如下代码 /*拓展安全机制 开始*/ /*配置1 搜索引擎*/ /*范围:0=不额外处理;1=该搜索引擎跳过dz安全防护;*/ $s_Baidu=1; $s_360=1; $s_Sogou=1; $s_Bing=1; $s_Byte=1; $s_Ucsm=1; /*配置2 跳过dz安全防护的ip段,一行一个,注意格式*/ $ip_list=array( '112.36.*.*', ); /*开始处理*/ $doing=false; $agent=$_SERVER['HTTP_USER_AGENT']; if($s_Baidu&&stristr($agent,"baiduspider")){ $doing=true; }elseif($s_360&&stristr($agent,"360Spider")){ $doing=true; }elseif($s_Sogou&&stristr($agent,"sogou spider")){ $doing=true; }elseif($s_Sogou&&stristr($agent,"sogou web spider")){ $doing=true; }elseif($s_Bing&&stristr($agent,"bingbot")){ $doing=true; }elseif($s_Byte&&stristr($agent,"bytespider")){ $doing=true; }elseif($s_Ucsm&&stristr($agent,"yisouspider")){ $doing=true; } if(!$doing){ $ip_arr=$temp = explode('.',$_G['clientip']); if(in_array($ip_arr[0].'.*.*.*',$ip_list)){ $doing=true; }elseif(in_array($ip_arr[0].'.'.$ip_arr[1].'.*.*',$ip_list)){ $doing=true; }elseif(in_array($ip_arr[0].'.'.$ip_arr[1].'.'.$ip_arr[2].'.*',$ip_list)){ $doing=true; }elseif(in_array($ip_arr[0].'.'.$ip_arr[1].'.'.$ip_arr[2].'.'.$ip_arr[3],$ip_list)){ $doing=true; } } //var_dump($this->config['security']['attackevasive']); if($doing){ $this->config['security']['attackevasive']='0'; } //var_dump($this->config['security']['attackevasive']); /*拓展安全机制 结束*/
|