使用最新的操作系統,或者最新的穩定版(比如Ubuntu的LTS),定期打好更新,系統權限合理劃分,重要文件做權限安全保護。
比如:
# chattr +i /etc/passwd
# chattr +i /etc/group
# chattr +i /etc/shadow
# chattr +i /etc/gshadow
# chattr +i /etc/ssh/sshd_config
使用DenyHost程序防止SSH被暴力攻擊,具體方法見站外文章:http://www.myhack58.com/Article/48/66/2011/28833.htm2.Web服務器和PHP的安全規則:
首先根據需求更新Web服務器和PHP,在網站程序目錄中嚴格定義權限,比如不會修改的地方 做好禁止寫入權限, upload目錄和cache等臨時目錄需要做好限制PHP或相關腳本運行。
nginx規則相關腳本:
location ~ .*\.(php|php5)?$ {
rewrite ^/(uc\_client|templates|include|plugins|admin|attachments|images|
forumdata)/.*\.(php|php5)?$ /50x.php last;
}
apache規則相關腳本//注意:這裏改成你需要屏蔽的目錄 比如upload目錄
php_flag engine off
Order allow,deny
Deny from all
php.ini需要修改的地方
查找:disable_functions找到後在=後面添加這裏都是禁止在php裏面執行的函數exec,system,passthru,error_log,ini_alter,dl,openlog,syslog,readlink,symlink,link,leak,fsockopen,proc_open,
popepassthru,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,popen
服務器木馬查殺篇(PHP)1.安裝殺毒軟件,我的服務器使用的是avast效果還算比較好。
2.根據木馬特徵掃描人工排查(人工排查這個就需要個人經驗判斷了)
PHP木馬的最明顯特徵是使用了eval與base64_decode這個函數還有一些比較危險的函數。
可以輸入下面的命令 進行查詢
find /home/www/ -type f -name "*.php" | xargs grep "eval(" |more
增強版(在網站目錄執行):
find ./ -name "*.php" |xargs egrep "phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decoolcode|spider_bc"> /tmp/php.txt
grep -r –include=*.php '[^a-z]eval($_POST' . >/tmp/eval.txt
grep -r –include=*.php 'file_put_contents(.*$_POST\[ .*\ ]);' . >/tmp/file_put_contents.txt
find ./ -name "*.php" -type f -print0 | xargs -0 egrep "(phpspy|c99sh|milw0rm|eval\(gzuncompress\(base64_decoolcode|eval\(base64_decoolcode|spider_bc|gzinflate)" | awk -F: '{print $1}' | sort | uniq
代碼中的空格使用時注意下上面代碼最終會講名單輸出到 /tmp 目錄中 請直接查看列表 根據情況進行處理。
3.查找最近一天被修改的PHP文件
#find -mtime -1 -type f -name \*.php
修改網站的權限find -type f -name \*.php -exec chmod 444 {} \;
find ./ -type d -exec chmod 555{} \;