有个朋友服务器遭受攻击,目前可以断定是CC攻击,所以提供个PHP防CC攻击代码。说的有点过分了,其实也就是防止快速刷新代码,对于那么多的伪造IP,这个也起不了多大作用。CC攻击,还真是个头疼的问题。直接上代码。
<?php
/**
* @author 天涯
* mail@phpha.com
*/
//代理IP直接退出
empty
(
$_SERVER
[
'HTTP_VIA'
])
or
exit
(
'Access Denied'
);
//防止快速刷新
session_start();
$seconds
=
'3'
;
//时间段[秒]
$refresh
=
'5'
;
//刷新次数
//设置监控变量
$cur_time
= time();
if
(isset(
$_SESSION
[
'last_time'
])){
$_SESSION
[
'refresh_times'
] += 1;
}
else
{
$_SESSION
[
'refresh_times'
] = 1;
$_SESSION
[
'last_time'
] =
$cur_time
;
}
//处理监控结果
if
(
$cur_time
-
$_SESSION
[
'last_time'
] <
$seconds
){
if
(
$_SESSION
[
'refresh_times'
] >=
$refresh
){
//跳转至攻击者服务器地址
exit
(
'Access Denied'
);
}
}
else
{
$_SESSION
[
'refresh_times'
] = 0;
$_SESSION
[
'last_time'
] =
$cur_time
;
}
?>