前言
假如在linux系统,攻击者在获取服务器权限后,会通过一些技巧来隐藏自己的踪迹和后门文件,介不就是非常可怕了嘛!!!
隐藏文件
Linux 下创建一个隐藏文件:
touch .test.txt
touch 命令可以创建一个文件,文件名前面加一个 点 就代表是隐藏文件 而且使用命令ls
-l是查看不出来的,只能查看到文件及文件夹,查看Linux下的隐藏文件需要用到命令:ls -al
隐藏权限
在Linux中,使用chattr命令来防止root和其他管理用户误删除和修改重要文件及目录,此权限用ls -l是查看不出来的,从而达到隐藏权限的目的。
这个技巧常被用在后门,变成了一些难以清除的后门文件
# 锁定文件
chattr +i test.txt
# 属性查看
lsattr test.txt
# 解除锁定
chattr -i test.txt
#删除文件
rm -rf 1.test.txt
隐藏历史操作命令
在shell中执行的命令,不希望被记录在命令行历史中,那么在linux中可以开启无痕操作模式,所谓神不知鬼不觉
只针对你的工作关闭历史记录
空格 set +o history
由于空格的缘故,该命令本身也不会被记录。
上面的命令会临时禁用历史功能,这意味着在这命令之后你执行的所有操作都不会记录到历史中,然而这个命令之前的所有东西都会原样记录在历史列表中。
如要重新开启历史功能
空格 set -o history
从历史记录中删除指定的命令
假设历史记录中已经包含了一些你不希望记录的命令。这种情况下我们怎么办?很简单。通过下面的命令来删除:
history | grep "keyword"
输出历史记录中匹配的命令
history -d 命令所在的行数
批量删除:
只保留前100个
sed -i '100,$d' .bash_history
进程隐藏
管理员无法通过相关命令工具查找到你运行的进程,从而达到隐藏目的,实现进程隐藏。
libprocesshider
github项目地址:https://github.com/gianlucaborello/libprocesshider
感兴趣的可以去项目学习
如何在Linux中发现隐藏的进程?
unhide 是一个小巧的网络取证工具,能够发现那些借助rootkit,LKM及其它技术隐藏的进程和TCP / UDP端口。这个工具在Linux,UNIX类,MS-Windows等操作系统下都可以工作。
下载地址:http://www.unhide-forensics.info/
安装
sudo yum install unhide
使用
unhide [options] test_list