未知命令占用了我的所有 CPU。“ ./10 -c/tmp/ ...”

未知命令占用了我的所有 CPU。“ ./10 -c/tmp/ ...”

什么命令./10 -c/tmp/ ...
我试过杀死它,但没有成功。除了重新启动,我还有什么选择?

我如何才能找出是什么触发了它?那是什么命令,我需要确定开发服务器上发生了什么。

它占用了我 VPS 上的所有内存和虚拟核心。

顶部

答案1

不要杀死它然而– 您需要让它运行才能调查它。

在 htop 中,绿色表示它是属于其他进程的线程。按ShiftH可折叠线程并仅显示主进程。终止线程是无用的,因为进程可能会重新启动它;您需要终止进程(主线程)。

请注意,这/tmp/...并不意味着命令被截断——而是字面上地/tmp 目录中的文件...,这是恶意软件伪装其文件的最常见方法之一。

有了进程的 PID,就ls -l /proc/<pid>/{exe,cwd,root}可以查看它从哪里运行(可执行文件和根目录)。更多提示可以在 中找到/proc/<pid>/fd/

还可以使用cat /proc/<pid>/cgroupsystemctl status -n0 <pid>将其与特定的 systemd 服务关联起来 - 例如,如果它显示 apache.service,则它通过您的 webapps 进入。(如果您得到的结果是它属于 LXD 容器 - 进入容器并在容器内重复相同的检查。)您还可以运行systemd-cgls以获取 cgroup 的完整进程列表。

如果系统具有可用的内核审计功能,请使用auditctl -w /tmp/... -p wa它来记录任何试图修改该文件(或-p rwa检测读取)的未来进程。

相关内容