如何防止CC攻击
CC(Challenge Collapsar),指的是对方利用程序或一些代理对您的网站进行不间断的访问,造成您的网站处理不了而处于当机状态
CC攻击的原理并不复杂,其主要思路是基于应用层的弱点进行攻击;传统的拒绝服务攻击,如Syn flood 主要是基于协议层和服务层的弱点开展攻击,早期的抗拒绝服务攻击产品也是基于此进行防护。而应用层的弱点,取决于各自应用平台的开发能力,因此难以具有通用性的防护方案,这也是CC攻击没有很好的防护产品,非常容易得手的原因。
现在已经有一些相应的防护产品~昨日Xushine研究院就看到了一款防火墙,原理就是单一用户对页面5秒钟刷新了三次以上,立即将该用户指向本地localhost地址一般为127.0.0.1。其实思路还是不错滴,可以有效的避免了CC,所以今天就给大家看看这个防火墙的实现~因为Xushine研究院是用wordpress构架的,wordpress是php程序制作,所以放出的版本为php版本~
$P_S_T = $t_array[0] + $t_array[1]; $timestamp = time(); session_start(); $ll_nowtime = $timestamp ; if (session_is_registered(\'ll_lasttime\')){ $ll_lasttime = $_SESSION[\'ll_lasttime\']; $ll_times = $_SESSION[\'ll_times\'] + 1; $_SESSION[\'ll_times\'] = $ll_times; }else{ $ll_lasttime = $ll_nowtime; $ll_times = 1; $_SESSION[\'ll_times\'] = $ll_times; $_SESSION[\'ll_lasttime\'] = $ll_lasttime; } if (($ll_nowtime - $ll_lasttime)<3){ if ($ll_times>=5){ header(sprintf("Location: %s",\'http://127.0.0.1\')); exit; } }else{ $ll_times = 0; $_SESSION[\'ll_lasttime\'] = $ll_nowtime; $_SESSION[\'ll_times\'] = $ll_times; }
这个可以? :shock: