find 命令是应急响应中最常见的,主要是用来查webshell、查shell脚本、查异常账户、异常权限文件
-name 查找文件名
-mtime 查找创建文件或者修改文件内容时间
-ctime 查找创建文件时间或者修改文件内容时间或者修改文件权限时间
-atime 查找文件访问时间 a就是access,访问的意思
-type 按文件类型查找 f就是普通文件 d就是目录
-perm 按照权限查找
-user 按照用户查找,
! -name(-user) 查找不是xx文件名或者不是xx用户的文件
find -name “*.txt” 查找当前目录所有的txt后缀文件
服务器8月9号被入侵,那么可能黑客已经上传了webshell,那么你了解清楚服务器的脚本类型之后,你需要查下天以内是否有新增、修改过(内容)、修改过(权限)的脚本文件
查找当前目录下(包括子目录)最近2天以内创建或者修改(内容)或者修改过(权限)的所有php脚本
find ./ -ctime -2 -name "*.php"
往1.php文件写入文本“1234”,1.php不存在自动创建
echo "123test" >1.php 往1.php文件写入文本“1234”,1.php不存在自动创建
查找当前目录下(包括子目录)最近2天以内创建或者修改过(内容)的所有php脚本
find ./ -mtime -2 -name "*.php"
查找当前目录下(包括子目录)最近2天以内创建或者修改过(内容)的所有aps脚本
find ./ -mtime -2 -name "*.asp"
查找当前目录下(包括子目录)最近2天以内创建或者修改过(内容)的所有jsp脚本
find ./ -mtime -2 -name "*.jsp"
查找当前目录下(包括子目录)最近2天以内创建或者修改过(内容)的所有aspx脚本
find ./ -mtime -2 -name "*.aspx"
查找当前目录下(包括子目录)最近2天以内创建或者修改过(内容)的所有jspx脚本
find ./ -mtime -2 -name "*.jspx"
查找根目录下权限是777(777表示当前用户&所属组&其他用户都是可读可写可执行)的所有文件`
find / -type f -perm 777
默认没有777个文件,修改1.php的权限是777
chmod 777 1.php
找根目录下权限是777(777表示当前用户&所属组&其他用户都是可读可写可执行)的所有文件,可以查到有个1.php文件
find / -type f -perm 777
黑客入侵之后可能会创建shell脚本,而且你发现了一个异常账户www,那么你需要对这个用户的异常文件就行查询,还要对其是否创建了.sh后缀的shell脚本进行查询
查询异常账户www都有哪些所属文件
查 www 用户 最近3天以内创建的所有shell脚本 .sh结尾,并且权限是777
查www用户最近三天以内访问的所有shell脚本,并且权限不是644
find / -user www
find / -user www -ctime -3 -perm 777 -name "*.sh"
find / -user www -atime -3 ! -perm 644 -name "*.sh"
技巧:主要理解参数是什么意思即可,参数可以叠加。
find / -user root -perm -4000 -print 2>/dev/null |xargs ls -lh
find / -user root -perm -4000 -print 2>/dev/null -exec ls -lh {} ;
find / -nouser
find / -amin -10 # 查找在系统中最后10分钟访问的文件
find / -atime -2 # 查找在系统中最后48小时访问的文件
find / -empty # 查找在系统中为空的文件或者文件夹
find / -group cat # 查找在系统中属于 groupcat的文件
find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件
find / -mtime -1 #查找在系统中最后24小时里修改过的文件
find / -nouser #查找在系统中属于作废用户的文件
find / -user fred #查找在系统中属于FRED这个用户的文件
find /zyz/ -mtime -1 -type f 查找最后24小时zyz目录里面修改过的文件 type f代表是普通文件
find /sbin/ /usr/sbin/ /bin/ /usr/bin/ /root/ /boot/ -mtime -5 -print
-name filename #查找名为filename的文件
-perm #按执行权限来查找
-user username #按文件属主来查找
-group groupname #按组来查找
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n #按文件访问时间来查GIN: 0px">
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2 找文件,-n指n天以内,+n指n天以前
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2 #查更改时间比f1新但比f2旧的文件
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c] #查长度为n块[或n字节]的文件
-depth #使查找在进入子目录前先行查找完本目录
-fstype #查更改时间比f1新但比f2旧的文件
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c] #查长度为n块[或n字节]的文件
-depth #使查找在进入子目录前先行查找完本目录
-fstype #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount #查文件时不跨越文件系统mount点
-follow #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio %; #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到
-mount #查文件时不跨越文件系统mount点
-follow #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio #对匹配的文件使用cpio命令,将他们备份到磁带设备中
-prune #忽略某个目录