linux服务器上使用find查杀webshell木马方法

简介: linux服务器上使用find查杀webshell木马方法本文转自:http://ju.outofmemory.cn/entry/256317只要从事互联网web开发的,都会碰上web站点被入侵的情况。

linux服务器上使用find查杀webshell木马方法
本文转自:http://ju.outofmemory.cn/entry/256317

只要从事互联网web开发的,都会碰上web站点被入侵的情况。这里我把查杀的一些方法采用随记的形式记录一下,一是方便自己以后的工作需要,二是给其他朋友提供一些参考帮助。写的不周的地方,高手们不要喷,欢迎给我提供更好的意见,对于我个人来说也是个提高,并表示感谢。

我们的服务器环境是linux,所以,肯定少不了用find这个命令,并且需要配合ls命令来使用。

1、可以查找近3天被修改过的文件,并显示文件列表详细信息:

find -name "*.php" -type f -mtime -3 -exec ls -l {} ;
当然,结果中可能会包含很多cache类文件,这些文件不是我们要查找的,那么就需要把这类文件从查询结果中排除掉,往往cache文件都存放到cache特定的目录。

使用 -prune 参数来进行过滤,增加排除某些目录条件的查询命令:

find . -path "/xxxxx/caches" -prune -o -name "*.php" -type f -mtime -3 -exec ls -l {} ;
注意:

(1)、要忽略的路径参数必须紧跟着搜索的路径之后,否则该参数无法起作用。

(2)、路径结尾不要有“/”符号。

2、查到可疑文件,分析,确定是木马后,根据木马文件的文件信息查找更多的存放位置。比如木马的文件名称为“muma.php”。

find . -name "muma.php" -type f -mtime -5 -exec ls -l {} ;
20160426144502

以上命令,是放宽了查询时间的长度,查询最近5天该名称文件的信息列表,可以通过查看文件大小来判定是否是同样的木马文件。

看图中命令结果,文件大小都是“233”,则有很大的可能性是同样的木马文件,综合修改时间判断,最好是也cat一下检查核验,以免误杀。

可以利用find和ls命令的一些更丰富的参数信息来判定分析。

可能会用到find命令的参数功能列表:

find /home -size +512k #查大于512k的文件
find /home -size -512k #查小于512k的文件
find /home -mtime -2 # 在/home下查最近两天内改动过的文件
find /home -atime -1 # 查1天之内被存取过的文件
find /home -mmin +60 # 在/home下查60分钟前改动过的文件
find /home -amin +30 # 查最近30分钟前被存取过的文件
find /home -newer tmp.txt # 在/home下查更新时间比tmp.txt近的文件或目录
find /home -anewer tmp.txt # 在/home下查存取时间比tmp.txt近的文件或目录
结合ls的两种时间信息:

ls -lc filename 列出文件的 ctime 是在写入文件、更改所有者、权限或链接设置时随Inode的内容更改而更改的时间。
ls -l filename 列出文件的 mtime 在写入文件时随文件内容的更改而更改的时间。
ctime和mtime不一致时有可能是木马文件,黑客有可能会修改了mtime时间。

3、删除木马文件

这一步应该是进一步分析木马的入侵路径等,但是这个过程又是另一个非常复杂的系统工程,后边再详细说明,暂时跳过。

find . -name "muma.php" -type f -mtime -5 -size -5k -exec rm -rf {} ;
增加一个过滤条件,-size -5k,即文件大小小于5k的。

4、查找目录下文件内容包含木马特定字符串的文件列表,并删除处理。

查找文件,并显示文件的ctime时间,比对文件信息

find . -name "*.php" -exec grep -rl "YLbgPfj524" {} ; -exec ls -lc {} ;

确认没有问题后,删除掉

find . -name "*.php" -exec grep -rl "YLbgPfj524" {} ; -exec rm -rfv {} ;
Oracle & MSSQL & Postgresql & Mysql 调优 & 优化

相关文章
|
1天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
4天前
|
缓存 Unix Linux
服务器linux!!!
本文介绍了计算机的演变历史、硬件基础知识及服务器相关知识。从电子管时代的ENIAC到冯-诺伊曼架构,再到现代计算机系统组成,详细讲解了计算机的发展历程。此外,文章还介绍了服务器的分类、品牌、硬件组成以及IDC机房的上架流程,为读者提供了全面的技术背景知识。
18 0
服务器linux!!!
|
6天前
|
人工智能 安全 Linux
|
6天前
|
Linux Shell 数据库
文件查找是Linux用户日常工作的重要技能介绍了几种不常见的文件查找方法
文件查找是Linux用户日常工作的重要技能。本文介绍了几种不常见的文件查找方法,包括使用`find`和`column`组合、`locate`和`mlocate`快速查找、编写Shell脚本、使用现代工具`fd`、结合`grep`搜索文件内容,以及图形界面工具如`Gnome Search Tool`和`Albert`。这些方法能显著提升文件查找的效率和准确性。
25 2
|
8天前
|
Linux 数据库
Linux服务如何实现服务器重启后的服务延迟自启动?
【10月更文挑战第25天】Linux服务如何实现服务器重启后的服务延迟自启动?
43 3
|
6天前
|
Linux
Linux 修改服务器时间
【10月更文挑战第27天】Linux 修改服务器时间
17 0
|
15天前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
111 5
|
15天前
|
Linux
Linux系统之expr命令的基本使用
【10月更文挑战第18天】Linux系统之expr命令的基本使用
51 4