如何复制 /proc/xxxxx?

如何复制 /proc/xxxxx?

我的一台服务器上的用户帐户被黑客入侵,黑客启动了一些垃圾邮件二进制文件。在我终止这些进程之前,我想复制它们,但是当我

tar czf 30333.tar.gz /proc/30333

所有文件都是空的。

问题

我如何复制/proc/30333

答案1

这里有一个脚本,可以让你限制要保存的文件的大小(这里是 32 或 64 MiB,具体取决于 shell):

PID=30333
ulimit -f 65536
cd /proc/$PID || exit 1
find . -type d -exec sh -c 'mkdir -p /tmp/proc/$PID/$1' sh {} \;
find . -type f -exec sh -c 'cat $1 > /tmp/proc/'$PID'/$1' sh {} \;
tar czf /tmp/$PID.tgz /tmp/proc/$PID
rm -rf /tmp/proc/$PID

答案2

/proc是一个虚拟文件系统,没有任何实际的文件,而是包含有关系统上运行的进程的信息。

答案3

解决方案

cp -r /proc/30333 /root
tar czf /root/30333.tar.gz /root/30333

答案4

确保/proc/30333/exe复制的内容中包含该内容。不只是符号链接,还包括它指向的实际可执行文件。

内存映像可能也很有用。您可以通过键入以下内容创建核心转储:

gdb
attach 30333
gcore

相关内容