Linux安全之PHP木马查杀与防范

1.服务器自身系统安全:
  使用最新的操作系统,或者最新的稳定版(比如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.htm

2.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{} \;

猜你喜欢

转载自blog.csdn.net/ieflex/article/details/80705600