服务器被挖矿了怎么办?如何快速清除挖矿程序并恢复安全?

立即隔离受感染系统,遏制扩散风险

发现服务器被挖矿后,首要任务是立即切断其与内网及其他服务器的连接,避免攻击者利用服务器作为跳板横向渗透,扩大感染范围,具体操作包括:在防火墙或安全组中禁用服务器的入站/出站连接(保留管理端口,后续通过跳机维护),断开网络物理连接(若条件允许),并暂停服务器上运行的非核心业务服务,对同一网络下的其他服务器进行全面排查,确认是否存在类似感染迹象,确保威胁不会蔓延。

服务器被挖矿了怎么办?如何快速清除挖矿程序并恢复安全?

全面取证分析,追溯攻击路径

在隔离系统后,需尽快收集证据,分析攻击者的入侵方式、恶意程序特征及潜伏范围,为后续清理和加固提供依据,重点关注以下内容:

  1. 进程分析:使用topps aux等命令查看异常进程,重点关注CPU占用率异常高、进程名与系统进程相似(如kthreaddsystemd等被替换)或存在随机字符串命名的进程;通过/proc/[pid]/exe检查进程实际路径,排查是否为恶意软链接。
  2. 文件系统扫描:使用chkrootkitrkhunter等工具检测rootkit,重点检查/tmp/var/tmp/dev/shm等临时目录,以及隐藏文件(以开头的文件、无属主文件),分析最近修改的配置文件(如/etc/crontab、用户.bashrcsystemd服务单元文件),排查是否被植入恶意任务或服务。
  3. 网络连接排查:通过netstat -anpss -tulpn检查异常外联连接,观察是否与未知IP(尤其是境外IP)建立高频连接,或通过非常用端口(如3333、4444)进行通信。
  4. 日志审计:查看系统日志(/var/log/messages/var/log/secure)、Web访问日志(如Nginx的access.log、Apache的error_log),定位异常登录记录、可疑执行命令及攻击时间线。

彻底清理恶意程序,恢复系统安全

完成取证后,需对服务器进行全面清理,彻底清除挖矿程序及其残留组件,避免复发,具体步骤如下:

服务器被挖矿了怎么办?如何快速清除挖矿程序并恢复安全?

  1. 终止恶意进程:通过kill -9 [pid]强制终止异常进程,若进程反复重启,需先删除其执行文件或关联服务。
  2. 删除恶意文件及任务:根据取证结果,删除恶意程序文件、脚本(如.sh.py文件)及下载的挖矿软件(如Xmrig、Monero等),清除crontab计划任务、systemd服务单元文件中的恶意条目,并检查用户定时任务(crontab -l)及开机自启项(chkconfig --listsystemctl list-unit-files)。
  3. 清理后门与权限维持:检查是否有隐藏账户、异常用户权限(如sudoers文件配置),重置所有用户密码(尤其是root和SSH登录用户),禁用或删除无用账户,若发现内核级rootkit,建议重装系统,避免残留风险。
  4. 安全软件查杀:使用ClamAV、Malwarebytes等安全工具进行全盘扫描,确保无恶意程序遗漏。

强化安全防护,构建长效防御机制

为防止服务器再次被挖矿攻击,需从系统、应用、管理三个层面加固安全防护:

  1. 系统与账户安全
    • 及时更新操作系统、内核及软件补丁,修复已知漏洞(如Struts2、Log4j等高危漏洞);
    • 限制root远程登录,禁止密码登录(改用SSH密钥认证),设置复杂密码并定期更换;
    • 关闭非必要端口(如135、139、445等),启用防火墙(如iptables、firewalld)或云服务商安全组,限制访问IP。
  2. 应用与中间件安全
    • 对Web服务(Nginx/Apache)、数据库(MySQL/Redis)等进行权限最小化配置,移除默认测试账户和弱口令;
    • 定期检查Web目录权限(如/var/www/html),禁止写入执行权限,防止Webshell植入;
    • 使用WAF(Web应用防火墙)拦截恶意请求,如SQL注入、命令执行等攻击行为。
  3. 监控与应急响应
    • 部署主机入侵检测系统(如OSSEC、Wazuh),实时监控进程、文件、网络连接及系统日志,异常时触发告警;
    • 使用Zabbix、Prometheus等工具监控服务器资源(CPU、内存、磁盘IO),设置阈值告警,及时发现挖矿异常;
    • 制定应急响应预案,定期备份数据(采用“3-2-1”备份原则:3份副本、2种介质、1份异地存储),确保故障快速恢复。

总结与建议

服务器被挖矿攻击的本质是安全防护失效,攻击者通常利用系统漏洞、弱口令、恶意软件下载等途径入侵,企业需树立“预防为主”的安全理念:定期开展安全审计,及时修复漏洞;加强员工安全意识培训,避免点击钓鱼链接或下载不明文件;对核心服务器实施访问控制与行为审计,降低入侵风险,一旦发生攻击,快速响应、彻底清理、加固防护是减少损失的关键,必要时可寻求专业安全团队协助,确保系统长期稳定运行。

服务器被挖矿了怎么办?如何快速清除挖矿程序并恢复安全?