查看高 CPU 占用进程

admin 2026-10-25 04-05-07 6 0

《潜伏在服务器深处的“隐形矿工”:Linux 比特币挖矿木马攻击解析与防御指南》

查看高 CPU 占用进程


近年来,随着加密货币价格的持续波动和挖矿利润的驱动,一种隐蔽性极强的网络威胁正在全球范围内蔓延,Linux 挖矿木马,与勒索软件的“高调破坏”不同,挖矿木马更像一个“悄无声息的小偷”,它不窃取数据、不加密文件,而是偷偷侵占服务器的 CPU 和电力资源,为攻击者挖掘比特币、门罗币等加密货币,对于企业而言,这种威胁不仅带来高昂的电费和性能损耗,还可能是更深层次入侵的前奏。

什么是 Linux 挖矿木马?

挖矿木马(Cryptominer)是一种恶意程序,它在受害者不知情的情况下,利用受害主机的计算资源执行哈希运算,为攻击者的加密货币钱包“打工”。

Linux 系统因其稳定性高、广泛应用于服务器和云计算环境,成为挖矿木马的重点攻击目标,一台配置较高的云服务器如果被植入挖矿程序,其 CPU 占用率会长期维持在 90% 以上,导致:

  • 业务性能严重下降:正常服务响应缓慢甚至超时
  • 资源成本激增:云服务器按量计费模式下,账单可能翻倍
  • 硬件寿命缩短:长期满负荷运转加速硬件老化
  • 安全隐患:木马常常携带后门,为后续攻击铺路

挖矿木马的常见传播途径

利用未修补的漏洞

这是最主要的入侵方式,常见漏洞包括:

  • Web 服务漏洞:Apache Struts2、WebLogic、ThinkPHP 等框架的远程代码执行(RCE)漏洞
  • 中间件弱口令:Redis 未授权访问、Hadoop Yarn 未授权、Docker API 暴露
  • 数据库漏洞:MySQL、PostgreSQL 的弱口令爆破

Redis 未授权访问堪称挖矿木马的“经典入口”——攻击者无需密码即可连接 Redis,通过写入计划任务或 SSH 公钥实现持久化控制。

暴力破解

攻击者使用字典攻击爆破 SSH、FTP、数据库等服务的弱口令,一旦成功,即可直接部署挖矿程序,统计显示,大量被入侵的服务器都使用了 root/123456、admin/admin 之类的弱密码。

恶意软件供应链

  • 被篡改的开源软件安装包
  • 伪装成破解软件或工具的恶意程序
  • 被植入恶意代码的 Docker 镜像
  • 感染的 npm、PyPI 软件包

蠕虫式传播

部分高级挖矿木马(如 Kinsing、TeamTNT 系列)具备横向移动能力,入侵一台主机后会自动扫描内网,利用窃取的凭据或漏洞攻击其他机器,形成“链式感染”。

知名 Linux 挖矿木马家族概览

家族名称 特点
Kinsing 针对 Redis 和 Docker 环境,具备蠕虫传播能力,常配合 Rootkit 隐藏进程
WatchBog 利用大量 Web 漏洞传播,模块化设计,持续更新攻击组件
Rocke 曾大规模攻击云服务器,主要挖掘门罗币
Outlaw 利用 SSH 爆破传播,通过 Shell 脚本部署,携带僵尸网络功能
8220 Gang 云环境“惯犯”,同时利用多种漏洞武器化传播

值得说明的是,虽然公众常统称为“比特币挖矿木马”,但由于比特币挖矿依赖专用 ASIC 矿机,普通服务器挖比特币效率极低,大多数木马实际挖掘的是门罗币(XMR),因其采用 Cryptonight 算法,对 CPU 更友好,且隐私性强、难以追踪。

如何判断服务器中了挖矿木马?

典型症状

  1. CPU 异常飙升:top 或 htop 命令显示某个未知进程持续占用大量 CPU
  2. 系统卡顿:服务响应变慢、远程连接延迟
  3. 陌生进程:出现类似 kdevtmpfsi、kinsing、xmrig、ld-linux 等可疑进程名(有些会伪装成系统进程)
  4. 异常网络连接:与陌生 IP 的矿池端口(如 3333、4444、5555、7777、14444)建立连接
  5. 计划任务异常:crontab 中出现指向陌生 URL 的定时下载任务

检查命令示例

# 查看进程完整路径和启动命令
ls -l /proc/<PID>/exe
cat /proc/<PID>/cmdline
# 检查异常网络连接
netstat -antp | grep -E "3333|4444|5555|7777|14444"
ss -tnp
# 检查计划任务
crontab -l
ls -la /etc/cron.d/ /var/spool/cron/
# 检查 SSH 授权密钥是否被篡改
cat ~/.ssh/authorized_keys

应急处置流程

发现感染后,建议按以下步骤处置:

  1. 隔离主机:断开网络或通过安全组限制出入流量,防止横向扩散
  2. 终止恶意进程:注意先锁定进程文件路径再 kill,防止其“死而复生”
  3. 清除持久化机制:
    • 删除恶意计划任务
    • 检查并清除 /etc/rc.local、systemd 服务单元中的可疑启动项
    • 检查 ~/.ssh/authorized_keys 是否被植入攻击者公钥
  4. 删除恶意文件:包括挖矿程序本体、释放脚本、下载器等
  5. 排查入侵入口:确认被利用的漏洞或弱口令,否则极可能“复发”
  6. 修改所有凭据:包括系统密码、数据库密码、API 密钥等
  7. 重装系统:如果木马使用了 Rootkit 或无法彻底确认清除,建议备份数据后重装系统

长效防御策略

加固入口

  • 禁用密码登录,仅使用 SSH 密钥认证,并修改默认端口
  • 避免服务暴露公网:Redis、MySQL、Docker API 等只监听内网或通过 VPN 访问
  • 及时安装安全补丁:重点关注 Web 框架、中间件的 RCE 漏洞

最小权限原则

  • 应用服务使用非 root 用户运行
  • 容器环境开启只读文件系统、限制特权模式
  • 云服务器配置合理的 IAM 权限

监控告警

  • 部署主机安全软件(如 ClamAV、Wazuh、各云厂商的主机安全产品)
  • 配置 CPU 异常告警和异常外连检测
  • 定期审计系统日志(/var/log/secure、auth.log)

备份与演练

  • 定期备份关键数据,遵循 3-2-1 备份原则
  • 制定应急响应预案并定期演练

Linux 挖矿木马看似“温和”,实则是网络安全态势的重要风向标,能被植入挖矿木马的服务器,意味着攻击者已拥有相当程度的控制权,