[導讀] 木馬和后門的查殺是系統管理員一項長期需要堅持的工作,切不可掉以輕心。以下從幾個方面在說明linux系統環境安排配置防范和木馬后門查殺的方法:一、web server(以nginx為例)1、為防止跨站感染,將虛擬主機目
木馬和后門的查殺是系統管理員一項長期需要堅持的工作,切不可掉以輕心。以下從幾個方面在說明linux系統環境安排配置防范和木馬后門查殺的方法:
一、Web Server(以Nginx為例)
1、為防止跨站感染,將虛擬主機目錄隔離(可以直接利用fpm建立多個程序池達到隔離效果)
2、上傳目錄、include類的庫文件目錄要禁止代碼執行(Nginx正則過濾)
3、path_info漏洞修正:
在nginx配置文件中增加:
if ($request_filename ~* (.*).php) {set $php_url $1; }if (!-e $php_url.php) {return 404; }
4、重新編譯Web Server,隱藏Server信息
5、打開相關級別的日志,追蹤可疑請求,請求者IP等相關信息。
二.改變目錄和文件屬性,禁止寫入
find -type f -name *.php -exec chmod 444 {} ;find -type d -exec chmod 555 {} ;
注:當然要排除上傳目錄、緩存目錄等;
同時最好禁止chmod函數,攻擊者可通過chmod來修改文件只讀屬性再修改文件!
三.PHP配置
修改php.ini配置文件,禁用危險函數:
disable_funcions = dl,eval,exec,passthru,system,popen,shell_exec,proc_open,proc_terminate,curl_exec,curl_multi_exec,show_source,touch,escapeshellcmd,escapeshellarg
四.MySQL數據庫賬號安全:
禁止mysql用戶外部鏈接,程序不要使用root賬號,最好單獨建立一個有限權限的賬號專門用于Web程序。
五.查殺木馬、后門
grep -r –include=*.php ‘[^a-z]eval($_POST’ . > grep.txtgrep -r –include=*.php ‘file_put_contents(.*$_POST[.*]);’ . > grep.txt
把搜索結果寫入文件,下載下來慢慢分析,其他特征木馬、后門類似。有必要的話可對全站所有文件來一次特征查找,上傳圖片肯定有也捆綁的,來次大清洗。
查找近2天被修改過的文件:
find -mtime -2 -type f -name *.php
注意:攻擊者可能會通過touch函數來修改文件時間屬性來避過這種查找,所以touch必須禁止
六.及時給Linux系統和Web程序打補丁,堵上漏洞