无法删除攻击者留下的文件$$$ 222.php

时间:2015-01-25 15:40:38

标签: linux file ssh

我的网站最近遭到黑客入侵,并在服务器上有大量恶意文件。他们都添加了-i和-a扩展

我发现这个用了 lsattr命令然后使用 chattr -ai <Filenames>删除不可变和仅追加属性 然后rm -f <Filenames>删除

一切都很好

但是有一个文件 无法移除的$$222.php

当我对文件名$$222.php做任何事情时,它会返回

No such filename or directory whilst trying to stat 761022.php

如何删除此文件?

1 个答案:

答案 0 :(得分:1)

这很容易重复。

mkdir SO
cd ./SO
echo > '$$$222.php'
ls
$$$222.php

好的,我们有其中一个,如果你试图这个......

rm $$$222.php
rm: cannot remove ‘351522.php’: No such file or directory

我们可以确认shell将$$转换为进程ID号。

ps

PID TTY          TIME CMD
3515 pts/8    00:00:00 bash
7671 pts/8    00:00:00 ps

结果3515只是bash的进程ID号或PID,这是因为shell将$$转换为PID。

echo $$
3515

它变为351522而不是3515222,因为$2指的是命令bash的第二个参数,它是空白的。

您可以使用带有通配符的rm -i将其删除,-i会询问您是否确定要删除每个匹配的文件:

rm -i *php

rm -i *222.php

或者您可以使用单引号rm '$$$222.php'

双引号rm "$222.php"仍然会被shell转换,并且会在不匹配的地方进行转换。