Linux文件排查
1、敏感目录文件分析
(1) 按时间顺序 查看敏感目录 注意权限和大小 ll -ath
/tmp
/usr/bin
/usr/sbin 经常作为恶意软件下载根目录及相关文件被替换的目录。
~/.ssh
/etc/ssh
(2) 查看开机启动项 ls -alt /etc/init.d/
(3) 针对可疑文件可以使用stat进行创建修改时间、访问时间的详细查看,若修改时间距离事件日期接近,有线性关联,说明可能被篡改或者其他。
stat /etc/passwd
(4)当前用户home目录查看历史命令
cat ~/.bash_history
ps、
先查看/etc/passwd 文件最后一列如果不是nologin,就切换到这个用户,然后查看历史命令
主要关注的是第3、4列的用户标识号和组标识号,和倒数一二列的用户主目录和命令解析程序。
cat /etc/passwd | grep -v nologin
cat /etc/passwd | grep /bin/bash
(5)查看档案的结尾 默认显示最后十行 -f 动态显示文件最新追加的内容
tail -f /var/log/nps.log
(6)查看隐藏文件
ls /etc -ar | grep "^\."
^\.:正则表达式,匹配以 . 开头的行(即隐藏文件/目录)
(7)排查SUID程序
对于一些设置了SUID权限的程序进行排查
find / -type f -perm -04000 -ls -uid 0 2>/dev/null
2、find命令
(1)查看最近24小时被修改的php文件
-mtime -n +n 按文件更改时间来查找文件,-n指n天以内,+n指n天前
-atime -n +n 按文件访问时间来查找文件,-n指n天以内,+n指n天前
-ctime -n +n 按文件创建时间来查找文件,-n指n天以内,+n指n天前
find / -mtime 0 -name "*.sh"
find / -mtime -1 -name "*.php"
#以前24小时的
find / -mtime 1 -name "*.php"
#以前24小时-48小时的
find / -mtime +1 -name "*.php"
#以前48小时外的
(2)查找以txt结尾的文件
find / -name "*.txt"
忽略大小写 -iname 不是结尾 ! -name
(3)特殊权限文件查看
查找777 的权限的文件
find / -perm 777 | more
(4)grep
-v 反转查找
-E 使用正则表达式选项
-n 输出包含匹配字符串的行数
–color=auto 标记匹配颜色