password
icon
AI summary
type
status
date
slug
summary
tags
category
对于在实验室里做研究的研究牲来说,服务器就是生命线。无论是跑模拟、处理数据还是存储代码,它的稳定运行是我们科研工作的基础。
警报:那个“偷”走我们算力的神秘进程
一切始于一个再普通不过的下午,我远程登录服务器准备跑一个计算任务。却发现远程连不上某个服务器了,遂跑去机房物理连接查找问题,发现该服务器的一些基础服务(systemd、ssh)都已被破坏。

因为网络服务的基础库缺失所以要重装,但重装又要网络服务,陷入死循环。因为此前就有被挖矿的经历,怀疑有人在该台服务器搞破坏。
果不其然,第二天上午,信息中心发来警告,有一批服务器中了挖矿病毒,我们实验室的这两台赫然在列。

我立刻在另一台服务器上打开了系统监视器
htop
,结果令人震惊:CPU 的一些核心处于异常高运转状态,而“霸占”这一切的,是一些我从未见过的进程——nvc
。
它的参数暴露了其真实面目:
--algo kawpow --server 51.195.43.17:10400 --user RWJ...
kawpow
是一种加密货币的算法。很明显,我们的服务器被植入了挖矿病毒。它正在疯狂消耗我们宝贵的计算资源,为某个匿名的黑客赚取蝇头小利,却严重影响了我们所有人的研究进度。我下意识地执行了
kill -9
命令,进程消失了。但很快它又奇迹般地“复活”了。这说明,有一个守护程序在背后保护着它。深入调查:找到“复活”的秘密和更可怕的发现
病毒能自动重启,意味着它在系统里设置了持久化的后门。我排查了常见的定时任务(Cron),一无所获。攻击者显然使用了更隐蔽的方法。我的目光转向了
systemd
,这是现代Linux系统的核心服务管理器,负责在后台启动和管理各种程序。果然,在服务列表中,我找到了一个名为
nvmon.service
的可疑服务。nvc
和 nvmon
,这显然是“挖矿程序”和它的“监护人”。然而,在调查过程中,我顺手检查了
/etc/passwd
用户列表文件,却看到了让我脊背发凉的一幕:xdp:x:0:1005::/home/xdp:/bin/sh
如果你对Linux不熟悉,请允许我解释一下:在
x:0
这里的数字 0
,代表了这个用户的ID。而ID为0的用户,就是 root
——系统的超级管理员!这相当于,一个窃贼不仅溜进了我们实验室,还给自己配了一把可以打开所有房间、修改所有实验记录的万能钥匙。这个名为
xdp
的后门账户,意味着攻击者可以随时回来,删除我们的数据、窃取我们的代码,甚至利用我们的服务器去攻击其他地方。问题的严重性,已经远远超出了“偷算力”这么简单。清除行动:一场层层递进的“拆弹”操作
现在情况很明朗了:我们必须清除挖矿程序、移除它的守护服务,并彻底删除那个危险的后门账户。
第一步:切断生命线,禁用守护服务
首先,必须让挖矿程序无法“复活”。
这一步很顺利,我们成功地切断了病毒的重启机制。
第二步:攻坚克难,解锁被“焊死”的恶意文件
我本以为接下来就是简单的删除文件,但现实给了我沉重一击。当我试图删除
/usr/bin/nvc
(程序本体)和 /etc/systemd/system/nvmon.service
(服务配置文件)时,系统提示 Operation not permitted
。这太奇怪了,我已经是
root
权限了!我立刻想到了Linux的一个高级特性:文件属性。通过 lsattr
命令检查,真相大白:---ia--------e------- /etc/systemd/system/nvmon.service
文件被设置了
i
(immutable) 和 a
(append-only) 属性。这就像黑客用一把特殊的锁把文件“焊死”在了硬盘上,即使是管理员也无法直接删除。我们必须先用对应的“钥匙”——chattr
命令来解锁。这一次,两个顽固的文件被彻底清除。
第三步:外科手术,手动根除后门用户
最后是对付
xdp
这个后门。标准的 userdel
命令也失败了,因为它被绑定到了系统核心进程上。我们只能采取最终手段:直接编辑系统的“户口本”——用户数据库文件。这是一个高风险操作,我小心翼翼地备份了原文件,然后用
sed
命令精确地将包含 xdp
的那几行从 /etc/passwd
、/etc/shadow
和 /etc/group
文件中删除。至此,挖矿病毒、守护服务、后门账户,被我们逐一清除。
htop
里的CPU占用率终于恢复了正常。此后也再未出现过CPU、GPU的异常占用。真正的教训:清理不是结束,而是警示的开始
我成功地手动清除了这次入侵,感觉就像完成了一次复杂的实验。但是,冷静下来后,我意识到一个更严肃的问题:这台服务器的系统已经不再可信。
黑客能做到如此深度的渗透,说明他们利用的漏洞可能依然存在,我们无法保证他们没有留下其他更隐蔽的后门(也就是所谓的 Rootkit)。
这次“服务器保卫战”虽然占用了宝贵的科研时间,但它给我们上了一堂生动的网络安全课。它告诉我们,在数字时代,保护好我们的数据和算力,与做好实验、写好论文同等重要。