本文目录导读:

挖矿病毒(通常指利用计算机资源挖掘加密货币的恶意软件,如门罗币挖矿木马)会严重占用 CPU/GPU,导致系统变慢、功耗飙升,以下是一套标准的排查与清理流程。
⚠️ 重要提示:在进行操作前,建议先断网或备份重要数据,如果服务器无法正常登录或已中毒极深,最彻底的方法是重装操作系统。
第一阶段:快速症状诊断
- 检查资源占用:
- Windows:打开任务管理器(
Ctrl + Shift + Esc),查看 CPU 或 GPU 是否长期占用 100%,注意名为svchost.exe、lsass.exe、wmiprvse.exe、powershell.exe或随机字符串的进程。 - Linux:运行
top或htop命令,按P键按 CPU 排序,异常进程可能高居榜首,CPU 使用率远超正常范围。
- Windows:打开任务管理器(
- 感受机器温度:如果风扇狂转且机箱/笔记本出风口烫手,大概率是挖矿进程在满负荷运行。
- 检查网络行为:挖矿病毒需与矿池通信,可用
netstat -anob(Windows)或netstat -antp(Linux)查看是否有大量对外连接至非常规端口(如 3333、4444、5555、7733、14444 等,或境外 IP)。
第二阶段:静态排查(查找病毒本体)
检查启动项与计划任务(最隐蔽的藏身地)
- Windows:
- 运行
msconfig或taskmgr查看启动项。 - 运行
taskschd.msc查看任务计划程序库,看是否有每隔几分钟执行一次powershell -windowstyle hidden或从远程下载脚本的任务。
- 运行
- Linux:
- 查看
/etc/crontab、/var/spool/cron/以及用户的crontab -l。 - 检查
/etc/rc.local、/etc/init.d/或systemctl list-unit-files中的自启动服务。
- 查看
检查系统关键目录
- Windows:
%temp%、%appdata%、%localappdata%下是否有大量随机名.exe或.dll文件。 - Linux:
/tmp、/var/tmp、/dev/shm(内存文件系统,重启后消失)是挖矿脚本常驻之地,使用ls -la检查有无可执行权限且名称奇怪的脚本(如.bash、httpd、cron等)。
检查系统文件与驱动
- Windows:运行
sfc /scannow修复被篡改的系统文件。 - Linux:使用
rkhunter或chkrootkit扫描 Rootkit 模块。
检查 SSH 公钥(Linux)
~/.ssh/authorized_keys是否被写入恶意公钥。
检查 Docker 容器
- 如果使用 Docker,运行
docker stats查看容器资源占用,挂掉的容器也可能在后台起进程。
第三阶段:实时清理(操作需谨慎)
强力查杀工具(推荐先试)
- Windows:
- Process Explorer(Sysinternals 工具):可以查看进程树、线程以及进程对应的 DLL。
- Malwarebytes 或 卡巴斯基扫描器:免费版可扫描并清除挖矿病毒。
- 火绒安全软件:对国内变种挖矿病毒有较好查杀率。
- Linux:
- ClamAV:开源查毒。
- Lynis:安全审计,辅助发现异常。
手动终止与删除(适合有一定基础的用户)
核心思路:找到并结束父进程 -> 删除文件 -> 删除启动项 -> 重启。
示例步骤(Linux):
- 找到进程:
top或ps aux | grep -i 'mine\|stratum\|xmr\|crypto' - 定位文件:
ls -l /proc/[PID]/exe找到可执行文件路径。 - 结束进程:
kill -9 [PID] - 删除文件:
rm -rf /path/to/malware - 清理计划任务:
crontab -e删除恶意行,或直接清空crontab -r。 - 删除 SSH 后门:
sed -i '/malicious_key/d' ~/.ssh/authorized_keys
示例步骤(Windows):
- 结束进程:在任务管理器或 Process Explorer 中找到进程,右键结束任务,如果无法结束,使用
taskkill /F /PID [PID]。 - 禁用网络:如果进程为服务(如
svchost父进程),在服务管理器(services.msc)中找到并禁用该服务。 - 删除文件:打开文件位置,删除文件,如果提示“正在使用”,使用 Unlocker 工具或进入安全模式删除。
- 清理启动:在
regedit中检查HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run。
第四阶段:根源阻断(防止再次中毒)
挖矿病毒通常通过漏洞进入,清理病毒后必须修复入口:
- 修补漏洞:
- 系统漏洞:更新操作系统安全补丁。
- 中间件漏洞:升级 Tomcat、WebLogic、Nginx、Redis 等至最新版。
- 数据库:关闭不需要的远程访问权限,修改默认端口和弱口令。
- 加固密码:修改所有用户密码(包括 SSH、数据库、FTP),使用复杂密码。
- 配置防火墙:
- 关闭不需要的端口(如 22、3306、6379、27017 等对外)。
- 使用
fail2ban(Linux)或 Windows 防火墙防爆破。 - 矿池域名列表(blockchain-dns.info)可考虑加入阻止列表。
- 限制权限:应用运行使用最小权限原则,不要使用 root/administrator 运行 Web 服务。
- 日志审计:检查
/var/log/auth.log(Linux)或 Windows 事件查看器中的登录失败记录,找出攻击源 IP。
第五阶段:最终方案(如果无解)
如果病毒复杂、Rootkit 深度嵌入系统,或您不确定是否清理干净:
- 备份数据:仅备份文档、数据库文件、配置文件。
- 重装系统。
- 恢复数据前:使用杀毒软件扫描备份数据,确保不带病毒。
物理隔离 -> 查杀 -> 修补漏洞 -> 换密码 -> 重装系统 是最稳妥的路径,不要在不了解进程特征的情况下盲目相信某个工具能一键清干净。