linux 一条语句查杀php木马

根据php木马中的一些特征字段进行搜索,就可以搜出可能含有木马的的文件,特征字段可自行根据需要添加。
  find ./ -name "*.php" |xargs egrep "phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decoolcode|spider_bc"> /tmp/php.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

    find . -type f -name "*.php"|xargs grep  'versio:b.01'  -l >list.0320

需要注意的是,以上查出来的文件,有可能是正常的php文件,需要你根据实际甄别处理(批量替换),不要误杀了(处理以前注意备份俄)。

grep方法:
# grep -r –include=*.php  ‘[^a-z]eval($_POST’ . > /tmp/eval.txt

# grep -r –include=*.php  ‘file_put_contents(.*$_POST\[.*\]);’ . > /tmp/file_put_contents.txt

查找最近一天被修改的PHP文件

#   find -mtime -1 -type f -name \*.php

修改网站的权限

# find -type f -name \*.php -exec chmod 444 {} \;

# find ./ -type d -exec chmod 555{} \;

附:linux下的批量查找和替换。
find . -type f -name “*.html”|xargs grep ‘yourstring’

2:查找并用perl One-liners替换

find -name ‘要查找的文件名’ | xargs perl -pi -e ‘s|被替换的字符串|替换后的字符串|g’
下 面这个例子就是将当前目录及所有子目录下的所有*.shtml文件中的”<iframe src=http://com-indexl.com/ask/admin.html width=0 height=0></iframe>“替换为”(空)“.

find . -type f -name “*.shtml”|xargs perl -pi -e ‘s|<iframe src=http://com-indexl.com/ask/admin.html width=0 height=0></iframe>| |g’

perl -pi -e
在Perl 命令中加上-e 选项,后跟一行代码,那它就会像运行一个普通的Perl 脚本那样运行该代码.

从命令行中使用Perl 能够帮助实现一些强大的、实时的转换。认真研究正则表达式,并正确地使用,将会为您省去大量的手工编辑工作。

发表评论

电子邮件地址不会被公开。 必填项已用*标注