网络通信 频道

FATBOY临时解决方案

众所周知,目前没有什么技术和设备可以完全抵挡DDOS攻击的,我针对FATBOY的工作原理,写出一个暂时缓解的代码,能够有效地防御小规模的攻击,因为FATBOY就是通过请求动态页面的数据库查询,达到托死数据库的目的,针对静态的页面效果相对要小得多,我在服务器上测试过,如果被FATBOY攻击,PHP论坛完全打开一个页面要100多秒,但打开静态页面,唰就出来了,效果还是比较明显的。

  大家把这些代码插入到需要防范的页面的顶部,或者写在一个文件或一些公共函数的文件里,在每个动态页面顶部包含进去就可以了。具体方法就不写了,相信会做基于动态页面搭配数据库的站点的站长,这些都不在话下的。相关代码如下:


针对ASP的
<%
''codz by angel
Dim URL
If DateDiff("s",Request.Cookies("angel")("vitistime"),Now())<2 Then

字串5


URL=Request.ServerVariables("Http_REFERER")
Response.Write("<meta http-equiv=""refresh"" content=""2;URL="&URL&""">")
Response.Write("防刷新,两秒后自动跳转...")
Response.End
End IF
Response.Cookies("angel")("vitistime")=Now()
%>


针对PHP的

<?php
//codz by angel
$query = ($_SERVER[''QUERY_STRING'']) ? "?".$_SERVER[''QUERY_STRING'']."" : "";
$url = "http://".$_SERVER[''SERVER_NAME''].$_SERVER[''PHP_SELF''].$query."";
if (time()-$_COOKIE[''vitistime'']<2) {
echo "<meta http-equiv=\"refresh\" content=\"2;URL=$url\">\n"; 字串4
echo "防刷新,两秒后自动跳转...<br>\n";
exit;
}
$posttime=time();
setcookie("vitistime",$posttime);
?>



  如果有问题什么问题就给我来信吧,4ngel_at_21cn.com或者angel_at_bugkidz.org。

 

 

文章来源地址:http://www.hackhome.com/html/wlcl/wlaq/2006/0610/26562.html

0
相关文章