服务器突然变慢、账单莫名上涨,很多时候问题未必出在业务上,机器可能已经被别人拿去挖矿了。对用阿里云的团队来说,先搞清楚这类攻击常从哪里进来、留下什么痕迹,通常比事后补救省事得多。

挖矿程序为什么盯上云服务器
挖矿靠的是算力,算力越强,能换来的加密货币越多。高配云主机对攻击者来说就是现成的算力池,他们不用花钱买设备,只要在别人的机器上跑起程序,电费和机器损耗都由受害者承担。
云上的麻烦在于弹性。实例可以随时扩容,一台被控机器在几天里就能烧掉不少预算,而且很多团队只盯业务,不盯资源曲线,异常就藏得更深。
一个常见的情形
下面是一个根据多起公开事件整理的示意情境,并不对应某家企业的真实记录。
某电商团队在阿里云上部署了促销活动用的应用,远程管理端口对外开放,管理密码半年没改。一次例行检查时,运维发现 CPU 长期在 90% 以上,但业务流量并没有增长。再往下看,进程列表里多了一个名字陌生的程序,定时任务里还有一条定期下载脚本的命令。
复盘下来,路径并不复杂:攻击者用弱口令暴力破解登录,拿到权限后下载挖矿程序,再用定时任务保证重启后它会自己拉起来。团队没有配置资源告警,异常持续了好几周,额外费用和业务响应变慢都是后来才发现的。
值得留意的几类信号
挖矿程序藏得再好,也会在资源和网络上露出痕迹。日常巡检时可以重点看这几处:
- CPU 或内存长期偏高,但和业务高峰对不上。比如凌晨三四点负载还居高不下,就值得查一下。
- 进程名字很像系统服务,但路径不对。正常系统进程一般在固定目录下,放在临时目录或用户目录里的同名程序要优先怀疑。
- 定时任务里有不认识的脚本,特别是每隔几分钟就下载一次远程文件的条目。
- 服务器持续连接陌生的域名或 IP,出站流量没有对应的业务来源。
- 没有新增业务,账单却明显上涨。这一条往往是最后才被发现的,所以更适合用来设置提醒,而不是等它出现再去看。
几项基础防护
多数挖矿攻击走的是自动化扫描,利用的是弱口令、未修补的漏洞和多余的公网端口。把下面几件事做扎实,大部分这类入侵就进不来。
- 安全组里关闭不必要的公网端口,SSH、远程桌面这类管理端口只对固定办公 IP 开放。别图省事直接放行 0.0.0.0/0。
- 优先用密钥登录并禁用密码登录。如果暂时做不到,至少把管理密码换成足够长的随机串,并定期更换。
- 及时修补系统和中间件的漏洞,尤其是已经公开披露、有利用代码流传的高危漏洞。补丁越晚打,窗口期越长。
- 开启云平台的安全中心和基线检测,把告警接到团队在用的通知渠道上,否则告警只会躺在控制台里。
- 给 CPU、带宽和费用设置监控阈值。阈值不必很精细,能在异常第一时间响起来就够用。
- 每隔一段时间检查定时任务、启动项和运行中的进程,把无人认领的条目清掉。这件事看似琐碎,但挖矿木马最依赖的就是没人看的那几个角落。
服务器已经中招怎么办
如果确认服务器已被植入挖矿程序,别急着直接删除或重装。先把机器从网络上隔离,避免它继续对外连接或横向扩散;同时保留日志和可疑样本,方便后续追查入侵来源。确认入口后,再清除定时任务、启动项等持久化项,修补对应漏洞,修改所有相关凭据。如果服务器上存有用户数据或订单信息,还需要评估是否存在泄露,必要时按合规要求通知相关方。