Closed. This question is off-topic。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
5年前关闭。
我的网站最近遭到黑客攻击,服务器上有许多恶意文件。他们都添加了-i和-a扩展名
我发现使用
然后
都好
但是只有一个文件
当我对文件名
如何删除该文件?
好,我们有其中之一,如果您尝试rm ...
我们可以确认
原来3515只是bash的进程ID号或PID,之所以发生是因为shell将$$转换为PID。
它变为351522而不是3515222,因为
您可以将
或者,您可以使用单引号
双引号
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
5年前关闭。
我的网站最近遭到黑客攻击,服务器上有许多恶意文件。他们都添加了-i和-a扩展名
我发现使用
lsattr
命令,然后使用chattr -ai <Filenames>
删除不可变并仅附加属性然后
rm -f <Filenames>
删除都好
但是只有一个文件
$$222.php
无法删除当我对文件名
$$222.php
执行任何操作时,它将返回No such filename or directory whilst trying to stat 761022.php
如何删除该文件?
最佳答案
这很容易复制。
mkdir SO
cd ./SO
echo > '$$$222.php'
ls
$$$222.php
好,我们有其中之一,如果您尝试rm ...
rm $$$222.php
rm: cannot remove ‘351522.php’: No such file or directory
我们可以确认
$$
是否已被外壳程序转换为进程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转换,并且将在不匹配的地方进行转换。关于linux - 无法删除攻击者留下的文件$$$ 222.php ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28138159/