![Ubuntu 16.04,即使重新启动后,root 命令 sh 的 CPU 使用率仍达到 400%](https://linux22.com/image/903827/Ubuntu%2016.04%EF%BC%8C%E5%8D%B3%E4%BD%BF%E9%87%8D%E6%96%B0%E5%90%AF%E5%8A%A8%E5%90%8E%EF%BC%8Croot%20%E5%91%BD%E4%BB%A4%20sh%20%E7%9A%84%20CPU%20%E4%BD%BF%E7%94%A8%E7%8E%87%E4%BB%8D%E8%BE%BE%E5%88%B0%20400%EF%BC%85.png)
我最近发现我的 Ubuntu 上有一个进程(如图所示)总是占用大约 400% 的 CPU 占用率,但却毫无意义。即使我重启了 PC,它仍然在那里,但什么也没发生。我试图杀死它,但它在几秒钟后又重新出现。
截图来自top
-第一行,PID 4313,root,命令sh
:
我搜索过类似的问题,但没有一个是由这个“root sh 命令”引起的。有人知道为什么会出现这个问题,而我无法摆脱它吗?
任何想法都会有很大帮助。谢谢!
更新:谢谢@dessert。我认为在这种情况下使用屏幕截图更有意义。而且我实际上不知道如何从 htop 粘贴文本。
我其实对这里的一切都很陌生。htop 看起来是一个非常方便的工具,可以调查进程。root 正在运行的是 ntpd。我在这里对于 macOS,通过更改约会时间变成自动。但在我的例子中它不起作用。我觉得这肯定是很容易修复的。但我不知道该怎么做……
更新:
问题解决了。我认为这是某种比特币挖矿攻击。
当“ntpd”占用大量 CPU 时,我意识到我甚至没有安装 ntpd...
which ntpd #returns nothing.
当我查看 strace -p 时,它给了我以下信息:
有 8 个子进程。我对 ntpd 了解不多,但这看起来不寻常且可疑。
然后我使用以下命令来定位执行文件:
cd /proc/14503
sudo ls -l exe
进入 /cpu/bin 文件夹,我发现了伪造“ntpd”进程的文件。有一个 cron.d 文件,我认为是用来重新生成进程的。
删除整个“bin”文件夹,终止进程。 CPU 使用率停止了,并且没有再恢复。
sudo rm -rv bin
sudo kill 14503
我没有重启操作系统来验证它是否会重新生成。但我至少会立即更改我的 root 密码。我不知道这是否意味着有人已经拥有了我的 root 密码。如果是,他如何以及为什么会拥有密码?