天天看點

解決php伺服器向外發包攻擊其它伺服器

前一段時間公司在美國的伺服器經常性的流量很大,後來查了一下伺服器被植入木馬了,立馬清理木馬,好了幾天又出現同樣的問題了,接着清,由于這個伺服器我接手的時候很多安全措施就沒有做,php網站好多都是同時直接開放的寫入執行權限,由于這個伺服器上放着200多個客戶站,是以又不能在短時間内整理好,就想肯定有一個php函數用來進行發包的,沒有好的辦法那就去百度吧,看到了下面這篇文章,禁用了fsockopen()這個函數後果然向外發包的問題解決了,接下來就是苦了活了,一個一個網站設定權限。

解決php伺服器向外發包攻擊其它伺服器

因為php木馬造成伺服器對外發包的防範措施和解決方法解決方法:

經分析發現,這些發包的PHP程式都使用了fsockopen()這個函數來進行發包的。是以黑客學習基地建議您修改php.ini檔案,關閉這個函數,95%以上的程式是不需要這個函數的,個别程式如淘寶客、

Ucenter、部分API程式等才需要使用這個函數。如果關閉這個函數,發包程式就徹底失效,極大的增強了伺服器的安全級别和性能。

1. 關閉這個函數的方法,編輯php.ini檔案搜尋這個檔案中的“disable_functions =”,如果這行前面有;符号的就删除這個符号,然後把這行修改為:

disable_functions = popen,exec,passthru,system,fsockopen,pfsockopen

修改完成後儲存退出,并重新開機 IIS或apache服務即可生效 。

2. 如果您的伺服器上有DedeCMS程式,請特别注意檢查一下檔案是否存在:

/plus/config_s.php

/plus/index.php

/data/cache/t.php

/data/cache/x.php

這些一般是ddos的木馬程式,要及時删除

防止PHP DDOS發包的方法

if (eregi(“ddos-udp”,$read)) {

fputs($verbinden,”privmsg $Channel :ddos-udp – started udp flood – $read2[4]\n\n”);

$fp = fsockopen(“udp://$read2[4]“, 500, $errno, $errstr, 30);

if (!$fp)

{

或者:

fsockopen("udp://$ip", $port, $errno, $errstr, 5); //這就是利用 fsockopen 函數進行發包攻擊

既然是用fsockopen請求外部,那就不讓他請求

php.ini裡設定

allow_url_fopen = Off

如果這樣他還是能發包

extension=php_sockets.dll

改成

;extension=php_sockets.dll

重新開機APACHE、IIS、NGINX

這樣就可以防止PHP DDOS發包了

查找被添加的木馬檔案方法:

進入 C:\WINDOWS\system32\LogFiles\HTTPERR 打開最新的日志 然後搜尋 port

如果能搜尋到通路記錄 那就可以找到是哪個站中了木馬對外發包.

删除掉木馬檔案以後,

網上有不少解決方法是限制php中使用的函數,但是怕客戶網站有使用到那些函數。

最後設定了政策,阻止了udp協定的進出。

繼續閱讀