所以我被一个脚本工具包击中了...幸运的是,这个盒子是 Ubuntu,能够用类似系统中的二进制文件替换,然而,
有些文件我无法删除,我仍然对此感到困惑。被劫持的文件位于可由以下人员/_bin
写入的目录中:根。
nathan@db-0:~$ ls -ld !$
ls -ld /_bin
drwxr-xr-x 2 root root 4096 Mar 12 18:00 /_bin
好的,这些是目录的权限,现在针对其中的文件:
nathan@db-0:~$ ls -l /_bin
total 268
-rwxr-xr-x 1 root root 39696 Nov 19 22:25 ls
-rwxr-xr-x 1 root root 119800 Mar 31 2012 netstat
-rwxr-xr-x 1 root root 101240 Dec 12 2011 ps
现在,当我尝试删除其中一个文件(以 root 身份)时:
root@db-0:/home/nathan# rm /_bin/ls
rm: cannot remove `/_bin/ls': Operation not permitted
或者如果我尝试删除整个_bin
目录(再次以 root 身份):
root@db-0:/home/nathan# rm -rf /_bin
rm: cannot remove `/_bin/ls': Operation not permitted
rm: cannot remove `/_bin/netstat': Operation not permitted
rm: cannot remove `/_bin/ps': Operation not permitted
那么我该如何删除这些文件呢?
编辑:
确实,不可变位已设置,但是,删除它并不允许我删除文件。
root@db-0:/home/nathan# lsattr /_bin
s---ia--------- /_bin/ls
s---ia--------- /_bin/netstat
s---ia--------- /_bin/ps
root@db-0:/home/nathan# chattr -R -i /_bin
root@db-0:/home/nathan# lsattr /_bin
s----a--------- /_bin/ls
s----a--------- /_bin/netstat
s----a--------- /_bin/ps
root@db-0:/home/nathan# rm -rf /_bin
rm: cannot remove `/_bin/ls': Operation not permitted
rm: cannot remove `/_bin/netstat': Operation not permitted
rm: cannot remove `/_bin/ps': Operation not permitted
还验证了/_bin
没有不可变的位:
root@db-0:/home/nathan# lsattr -d /_bin
--------------- /_bin
答案1
最有可能的是,攻击者已将文件和目录设置为不可改变的属性。rootkit 通常这样做,以使清理变得更加困难。
为了确认这一点,请尝试:
lsattr /_bin
要删除不可变属性,请使用:
chattr -R -i /_bin
您还需要清除a
和s
属性,因为这些可能会影响您删除文件的能力。
chattr -R -i -a -s /_bin
请参阅chattr
手册页来完整了解所有属性的含义和作用。
答案2
看起来粘性位仍在那里。
chmod -t /_bin