当前位置: 首页 > 图文教程 > 网络安全 > 安全基础 > FATBOY临时解决方案

安全基础
论附加码在网络安全中的作用
未登录主域,如何修改密码
网络防“虫”和全局安全网络应用
如何解决dllhost进程消耗CPU100%的问题
很巧妙的进程防杀方法
QQ安全问题完全解决方案(1)
QQ安全问题完全解决方案(2)
一次艰苦的病毒查杀过程
使用虚拟机测试你的补丁
误将Foxmail密码忘记之后
防泄密从Word开始(1)
防泄密从Word开始(2)
防泄密从Word开始(3)
防泄密从Word开始(4)
实况无线网络安全—简析无线安全实施策略
十大绝招轻松制服顽劣的间谍软件
防范DDoS攻击和全局安全网络的应对能力
个人电脑的安全防护
判断你的用户是否真的被黑客攻击(1)
判断你的用户是否真的被黑客攻击(2)

安全基础 中的 FATBOY临时解决方案


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 48 ::
收藏到网摘: n/a

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

  大家把这些代码插入到需要防范的页面的顶部,或者写在一个文件或一些公共函数的文件里,在每个动态页面顶部包含进去就可以了。具体方法就不写了,相信会做基于动态页面搭配数据库的站点的站长,这些都不在话下的。相关代码如下:
以下是代码片段:
<% 
’codz by angel 
Dim URL 
If DateDiff("s",Request.Cookies("angel")("vitistime"),Now())<2 Then 
 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"; 
 echo "防刷新,两秒后自动跳转...<br>\n"; 
 exit; 

$posttime=time(); 
setcookie("vitistime",$posttime); 
?>