文件无法删除
被进程占用:
lsof xxxx.xx
文件存在隐藏属性:
sattr xxxx.xx
chattr -a xxxx.xx
chattr -i xxxx.xx
上层文件存在SBIT权限:
这种情况只存在于非 root 权限去删除其他用户创建的目录的情况,即使文件权限是 777 也无法进行删除。
当目录被设置了粘滞位权限以后,即便用户对该目录有写入权限,也不能删除该目录中其他用户的文件数据,而是只有该文件的所有者和root用户才有权将其删除。
这种办法可以保持一种动态的平衡:允许各用户在目录中任意写入、删除数据,但是禁止随意删除其他用户的数据。
需要注意的是,粘滞位权限只能针对目录设置,对于文件无效。
设置了粘滞位权限的目录,使用ls命令查看其属性时,其他用户权限处的“x”将变为“t”。
粘滞位权限都是针对其他用户设置,使用chmod命令设置目录权限时,“o+t”、“o-t”权限模式可分别用于添加、移除粘滞位权限。
netstat -pantu 不显示 pid 而显示 -
可能是使用了mkdir .hidden 或者 mount -o bind .hidden /proc/PID
来隐藏
cat /proc/$$/mountinfo //查询挂载信息
umount /proc/PID //取消挂载
ps和top看不到恶意进程
- 挂载被隐藏(看上一个的操作)
- 命令被替换(使用busybox进行检修)
- LD_PRELOAD等方法共享库劫持(使用busybox进行检修)
快速查找文件
【which】
从环境变量查找系统命令的具体文件位置
【whereis】
从/usr目录快速查找文件
【locate】
从locatedb数据库查找文件路径
【find】
强大的搜索命令find <检索路径> <选项> <搜索内容>
具体使用方法
确定系统信息
cat /etc/issue //系统版本
uname -m
getconf LONG_BIT //查看系统位数
cat /proc/version //查看内核版本
uname -a
系统完整性检测
rpm -Va //Centos
apt install debsums //Ubuntu、Debian
debsums --all --changed
系统文件监控工具
AIDE\inotify\tripwire
查看glibc版本
ldd --version
误删文件恢复
被删除的文件在进程的内存空间还保存着一份,可以通过访问某个目录来找到文件恢复
如果正在进行读写操作:
lsof //查找进程文件恢复即可
mount //查看所有挂载点
umount //删除挂载点
lsblk -f //查看所有设备的挂载情况
df -T 路径 //可查看该路径的所属挂载点、所在分区、所在分区的文件系统类型
cat /proc/filesystems //查看文件系统的类型
常用恢复工具有:Extundelete、Debugfs、R-Linux、Ext3grep、Ext4magic
批量检索文件并打印信息
find / -name "内容" | while read line; do if [ -f $line ]; then ls -al $line; elif [ -d $line ]; then ls -al ../ | grep $line; fi; done
拷贝取证
- 使用虚拟化平台存储快照
- 打包整个系统
- 全盘拷贝(推荐 clonezilla)
- 进程拷贝(推荐 CRIU)
- 组合运用(冻结进程 + 全盘拷贝 + 恢复进程)