首页 » SEO优化 » php杀毒技巧_WEB安然单行敕令查杀Webshellphp为例

php杀毒技巧_WEB安然单行敕令查杀Webshellphp为例

访客 2024-10-26 0

扫一扫用手机浏览

文章目录 [+]

作为一个个人站长,一个特头疼的问题是不知不觉中网站会被人黑了,挂马了。
在以前的文章中笔者先容过用脚本剖析访问日志,对恶意攻击进行封闭的处理方法。

那么对付已经被人挂马,被人插入Webshell的网站,该如何处理,这里笔者给你先容一种相对大略,操作性强的方法,那便是本日文章的内容。

php杀毒技巧_WEB安然单行敕令查杀Webshellphp为例

根据Webshell中的一些特色字段进行搜索,就可以搜出可能含有木马的文件,特色字段可自行根据须要增删。

php杀毒技巧_WEB安然单行敕令查杀Webshellphp为例
(图片来自网络侵删)

perl -lne 'print \公众$ARGV $_\"大众 if /(phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decoolcode|spider_bc)/ ' `find -type f -name \"大众.php\公众`

本行脚本阐明:这行代码结合了find和Perl单行来实现Webshell的查杀,首先通过` find -type f -name \"大众.php\"大众` 列出本目录及子目录下所有php文件,把稳`反斜杠(tab上面的建),find命令参数 -type f表示类型为文件,-name \公众.php\"大众`表示文件名以php结尾(当然可以是其他类型,可以是其他特色)。

find详细用法可以用find -h看解释,或者搜索引擎搜索其用法。

接着搜索到的所有php文件都被通报个Perl单行,perl对每一个文件按行进行正则搜索,搜索phpspy,c99sh,milw0rm,eval (gunerpress,eval (base64_decoolcode,spider_bc等关键词(把稳正则匹配中\"大众(\公众为关键字须要在其前面加反斜杠\来转义)。
末了把匹配到的文件名和行内容输出。

把稳输出的$ARGV表示文件列表中的每一个文件文件名,$_表示当前列表确当前项,此处表示匹配到的行内容。

以上的脚本输出了每一个匹配的行,可以作为一个用来详细核对每一个项目。
实际中会须要只输出有问题文件名,实在也大略,对上述脚本稍做修正即可。

per -lne '{$files{$ARGV}++ if /(phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decoolcode|spider_bc)/}END{print for keys %files} ' `find -type f -name \公众.php\公众`

以上脚本在脚本1的根本上用了个哈希变量 %files把匹配的每一行的文件名作为键,如果有匹配其值就+1,末了再END模块输出%files的键,即有匹配的文件名。
当然也可以先把所有文件名都输出然后重定向做个uniq也可以的。

perl -lne 'print \"大众$ARGV\公众 if /(phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decoolcode|spider_bc)/ ' `find -type f -name \"大众.php\公众`|uniq

须要把稳的是,以上查出来的文件,有可能是正常的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

其他须要把稳的事变:

快捷查询Web文件修正韶光,文件权限可以用:

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

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

修正网站的权限

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

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

末了做一个知识扩展:

1、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 脚本那样运行该代码.

标签:

相关文章

我国土地利用分类代码的构建与应用

土地利用分类代码是我国土地管理的重要组成部分,是土地资源调查、规划、利用和保护的依据。土地利用分类代码的构建与应用显得尤为重要。本...

SEO优化 2025-02-18 阅读1 评论0

微信跳转微信支付便捷支付体验的秘密武器

移动支付已成为人们日常生活中不可或缺的一部分。作为我国领先的社交平台,微信支付凭借其便捷、安全的支付方式,深受广大用户的喜爱。而微...

SEO优化 2025-02-18 阅读1 评论0

探寻会计科目代码背后的奥秘分类与

会计科目代码是会计信息系统中不可或缺的组成部分,它将企业的经济活动进行分类和归纳,为会计核算、财务分析和决策提供重要依据。本文将从...

SEO优化 2025-02-18 阅读1 评论0