news 2026/10/1 15:26:20

挖矿木马排查实战:特征识别、查杀与溯源思路

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
挖矿木马排查实战:特征识别、查杀与溯源思路

挖矿木马排查实战:特征识别、查杀与溯源思路

免责声明:本文内容仅用于企业授权应急响应、安全学习、主机自查演练。严禁在未授权服务器、终端执行排查、取证、清理操作,未经授权操作计算机系统属于违法行为。排查前建议先做好快照备份,优先保留证据,再执行处置操作。

前言

挖矿木马(Cryptojacking)是企业服务器、云主机、内网工作站最常见的恶意程序之一,绝大多数以 XMRig 门罗币挖矿程序为核心。攻击者通过弱口令、漏洞、上传后门、Webshell 等方式植入主机,占用大量 CPU/GPU 算力,持续外联矿池提交算力。

很多运维遇到挖矿问题,直接 kill 进程、删除 exe,结果几分钟后挖矿进程自动复活。核心原因:挖矿木马一般由挖矿主程序 + 守护进程 + 多重持久化机制组成,只清理主进程,不清除守护进程、计划任务、服务,一定会反复复活。

本文从特征识别、Windows 排查命令、Linux 排查命令、完整查杀流程、溯源思路、常见坑与加固方案完整讲解,适合应急现场直接落地。

挖矿木马攻击链路:入侵入口(漏洞 / 弱口令)→ 下载挖矿主程序 xmrig → 部署守护看门狗进程 → 创建计划任务 / 系统服务实现持久化 → 持续连接矿池,同时横向扫描爆破其他主机。

一、挖矿木马核心特征识别(先判断是否中招)

1. 资源特征(最直观)

  1. CPU 长期占用 80%~100%,业务负载很低,但 CPU 持续满载;Linux 多核服务器经常看到 CPU 负载超过核数(例如 4 核服务器 load>4)。
  2. GPU 挖矿场景:显卡占用 100%,显存占用异常,多见于办公终端、网吧主机。
  3. 服务器响应缓慢,SSH/RDP 登录卡顿,业务接口超时。

2. 进程特征

  • Windows:随机字母命名 exe、伪装系统进程svchost.exe、rundll32,进程内注入 xmrig 挖矿代码;进程路径常见于%temp%、C:\ProgramData、C:\Windows\Temp。
  • Linux:经典恶意进程名xmrig、kdevtmpfsi、kinsing、kworkerds、diicot,伪装成内核进程kworker;常放置在/tmp、/var/tmp、/usr/bin隐藏目录,文件名带点隐藏文件。

3. 网络特征(矿池通信)

挖矿程序使用 Stratum 协议连接矿池,常见外联端口:3333、4444、5555、7777、8333、14433,持续对外建立 TCP 长连接。

关键词特征:连接流量中存在stratum、pool、xmr、wallet钱包地址字符串,是挖矿流量的强特征。

4. 持久化特征(木马复活关键)

  1. Windows:计划任务(5 分钟循环检测重启挖矿进程,任务名伪装成系统更新)、注册表 Run 键、恶意服务、WMI 事件订阅。
  2. Linux:crontab 定时任务(每分钟执行)、systemd 恶意服务、ld.so.preload 进程隐藏劫持、写入 ssh 公钥后门,同时自带横向 SSH 爆破脚本,感染同网段其他服务器国家互联网…。

5. 其他辅助特征

  • 云平台告警:异常高 CPU、异常对外外联、恶意样本告警;
  • 日志:大量 SSH 登录失败记录,存在陌生 IP 暴力破解痕迹;
  • 恶意文件:临时目录出现无数字签名、随机命名可执行文件。

二、Windows 主机挖矿排查命令(现场直接复制)

2.1 资源与进程排查

:: 查看CPU占用最高进程 tasklist /v :: 获取进程PID、程序路径、完整命令行(重点!看是否包含xmrig参数) wmic process get name,processid,parentprocessid,commandline,executablepath :: 根据PID结束挖矿进程(取证完成后执行) taskkill /F /PID 1234

PowerShell 版本:

# 列出所有进程,按CPU排序,查看命令行与文件路径 Get-Process | Sort-Object CPU -Descending | Select Name,Id,ParentId,Path,CommandLine,CPU # 检索进程命令行包含xmrig、stratum的进程 Get-WmiObject Win32_Process | Where-Object {$_.CommandLine -match "xmrig|stratum|pool"} | Select Name,ProcessId,CommandLine,ExecutablePath

2.2 网络连接,定位矿池外联 IP

netstat -ano | findstr ESTABLISHED netstat -ano | findstr LISTENING

PowerShell:

# 筛选外联TCP连接,排查矿池IP Get-NetTCPConnection | Where-Object {$_.State -eq "Established"} | Select LocalAddress,LocalPort,RemoteAddress,RemotePort,OwningProcess

拿到 PID 后,反向查询进程名称,确认是挖矿程序。

2.3 持久化项排查(重中之重,防止反复复活)

:: 注册表自启动Run reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run :: 查询全部计划任务 schtasks /query /fo table /nh schtasks /query /v /fo list

PowerShell 查看计划任务:

# 查看所有计划任务,重点看每隔几分钟重复执行的任务 Get-ScheduledTask | Where State -ne Disabled | Select TaskName,TaskPath,State,@{Name="Action";Expression={$_.Actions}}

2.4 检索恶意文件

# 查询最近7天新增exe/dll,临时目录 Get-ChildItem -Path C:\Temp,C:\Windows\Temp,$env:temp -Recurse -Include *.exe,*.dll,*.ps1 -ErrorAction SilentlyContinue | Where {$_.LastWriteTime -gt (Get-Date).AddDays(-7)} | Select FullName,LastWriteTime # 计算可疑文件SHA256,威胁情报比对 Get-FileHash C:\ProgramData\random.exe -Algorithm SHA256

三、Linux 主机挖矿排查命令(服务器高频中招)

3.1 进程排查

# 查看CPU占用排序,看高负载进程 top -c # 或者htop ps aux --sort=-%cpu | head -10 # 查看进程树,看守护进程父子关系 ps auxf # 通过PID查看恶意程序真实路径 ls -al /proc/1234/exe

排查隐藏进程:检查ld.so.preload劫持,很多挖矿木马利用这个机制隐藏进程,top 看不到,但 CPU 持续满载

cat /etc/ld.so.preload

3.2 网络排查矿池连接

# 查看TCP连接,筛选矿池端口 ss -antp | grep -E ':3333|:4444|:5555|:7777|:8333' netstat -antp | grep ESTABLISHED

3.3 计划任务、服务、后门排查(Linux 挖矿复活核心)

# 查看当前用户定时任务 crontab -l # 全局系统定时任务 ls -l /var/spool/cron/ cat /etc/crontab ls /etc/cron.d/ # 查看systemd恶意服务 ls /lib/systemd/system/ | grep -E "\.service$" systemctl list-unit-files | grep enabled # 检查ssh是否新增未知公钥(攻击者留后门) cat ~/.ssh/authorized_keys

四、完整查杀处置流程(标准应急步骤,顺序不能乱)

❌ 错误操作:上来直接杀进程、删除文件、重启服务器,证据丢失,木马几分钟自动下载复活。
✅ 标准流程:保护现场 → 网络隔离 → 定位持久化(守护进程 / 计划任务) → 停止持久化项 → 结束挖矿进程 → 删除恶意文件 → 日志溯源 → 漏洞修复

  1. 保护现场取证
    导出进程列表、网络连接、计划任务、登录日志,保存文件哈希,保留样本用于威胁情报分析。
  2. 网络层面隔离止损
    云主机修改安全组,仅放行运维管理 IP;内网主机限制出站,阻断矿池通信,不要直接断业务网卡。
  3. 优先清除持久化和守护进程(最关键)
    Windows:删除异常计划任务、注册表 Run 键、恶意服务;
    Linux:清空 crontab、删除 systemd 恶意单元、清除 ld.so.preload 劫持文件。

原理:守护进程会监控挖矿主进程,一旦主进程被杀,立刻重新下载拉起,必须先干掉看门狗。

  1. 终止挖矿主进程
    清理完持久化后,kill 挖矿主程序。
  2. 删除恶意文件
    删除临时目录、隐藏目录下 xmrig、kdevtmpfsi 等恶意二进制,清理下载脚本。
  3. 日志溯源,查找入侵入口
    查看登录日志、Web 访问日志,定位是 SSH 弱口令、Webshell、未修复漏洞哪一种方式进来。
  4. 漏洞修复、账号加固
    修改弱密码,修复漏洞,删除后门账号 /ssh 公钥;同网段其他主机批量巡检,防止横向扩散。
  5. 复测验证
    持续观察 CPU 负载,确认不再出现高占用,确认没有新增外联矿池连接。

Linux 清理示例

# 清理crontab crontab -r # 删除恶意服务 rm -rf /lib/systemd/system/bad.service systemctl daemon-reload # 结束挖矿PID kill -9 1234 # 删除恶意程序 rm -rf /tmp/kdevtmpfsi

五、溯源思路:找到攻击者的入侵入口

挖矿木马不是凭空出现,溯源核心目标:找到入侵入口、攻击时间、是否横向感染内网其他主机。

1. 登录入口排查(Linux 服务器最常见)

  1. 检查/var/log/secure、/var/log/auth.log,查看 SSH 登录记录,陌生 IP 爆破、成功登录时间;
  2. 检查是否新增系统账号,查看/etc/passwd;
  3. 检查 ssh 公钥后门authorized_keys,攻击者植入免密登录,用于后续横向传播。

2. Web 入口(Windows 服务器、Web 服务器)

  1. 查找 Web 目录 webshell,检查网站日志,查找上传、执行命令请求;
  2. 排查漏洞:未打补丁的远程代码执行、文件上传漏洞,攻击者通过漏洞上传挖矿载荷。

3. 横向扩散排查

很多挖矿木马自带 SSH 扫描爆破脚本,拿下一台服务器后,扫描同网段 22 端口,批量植入挖矿木马。

  • 查看内网流量日志,查看受害主机是否对内网大量 22 端口扫描;
  • 对同网段服务器批量巡检,防止批量感染。

4. 恶意样本溯源

提取挖矿二进制,获取 SHA256 哈希,到威胁情报平台查询样本信息:矿池钱包地址、攻击家族、传播方式。查看 xmrig 配置文件 config.json,里面包含矿池地址、钱包地址。

5. 时间线还原

整理时间线:首次异常 CPU 告警时间 → 恶意文件创建时间 → 攻击者登录时间 → 计划任务创建时间,完整还原入侵全过程。

六、挖矿木马常见踩坑总结

  1. 只杀挖矿主进程,忘记清理守护进程和计划任务,反复复活;
  2. Linux 挖矿木马使用ld.so.preload隐藏进程,top 看不到进程,CPU 持续高负载;
  3. 挖矿程序同时植入 SSH 后门,就算本次清理干净,攻击者还能再次登录植入;
  4. 忽略横向扩散,一台中招,同网段几十台服务器陆续被植入挖矿木马;
  5. 直接重启服务器,内存中的进程树、网络连接证据全部丢失,无法溯源入侵入口;
  6. 部分挖矿木马会关闭系统安全防护、杀毒软件,关闭 Sysmon 日志,销毁日志痕迹。

七、企业加固与常态化巡检方案

  1. 账号安全:服务器禁止弱口令,SSH 优先密钥登录,关闭密码认证;禁止 root 直接远程登录;
  2. 最小权限:业务进程禁止 root 权限运行,Web 服务使用低权限账号;
  3. 安全组 / 防火墙:服务器出站限制,仅放行必要业务外联,阻断陌生矿池端口;
  4. 漏洞管理:定期修复高危漏洞,Web 服务器做好上传文件检测;
  5. 常态化巡检:监控服务器 CPU 负载、异常外联、定时任务新增;部署主机安全监控,告警异常进程、stratum 挖矿流量;
  6. 日志留存:集中采集安全日志,保留至少 6 个月,用于入侵溯源。

八、应急排查清单

  1. 确认主机 CPU/GPU 资源异常,判断疑似挖矿;
  2. 导出进程、网络、计划任务、登录日志,保存取证;
  3. 网络隔离,阻断矿池通信;
  4. 定位挖矿主进程、守护看门狗进程;
  5. 清理持久化:计划任务、注册表、systemd 服务、ld.so.preload;
  6. 终止恶意进程,删除恶意二进制、脚本;
  7. 溯源入侵入口:SSH 爆破 /webshell/ 漏洞;
  8. 检查后门账号、ssh 公钥;
  9. 扫描同网段服务器,排查横向感染;
  10. 修复漏洞、加固账号,持续监控复测。

最后

关于网络安全技术储备

网络安全是当今信息时代中非常重要的一环。无论是找工作还是感兴趣(黑客),都是未来职业选择中上上之选,为了保护自己的网络安全,学习网络安全知识是必不可少的。

如果你是准备学习网络安全(黑客)或者正在学习,下面这些你应该能用得上:

①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

一、网络安全(黑客)学习路线

网络安全(黑客)学习路线,形成网络安全领域所有的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、网络安全教程视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

三、网络安全CTF实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这里带来的是CTF&SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~

四、网络安全面试题

最后,我们所有的作为都是为就业服务的,所以关键的临门一脚就是咱们的面试题内容,所以面试题板块是咱们不可或缺的部分,这里我给大家准备的就是我在面试期间准备的资料。

网安其实不难,难的是坚持和相信自己,我的经验是既然已经选定网安你就要相信它,相信它能成为你日后进阶的高效渠道,这样自己才会更有信念去学习,才能在碰到困难的时候坚持下去。

机会属于有准备的人,这是一个实力的时代。人和人之间的差距不在于智商,而在于如何利用业余时间,只要你想学习,什么时候开始都不晚,不要担心这担心那,你只需努力,剩下的交给时间!

这份完整版的网络安全学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/1 15:23:33

不同专业用汇写写论文 —— 文科、理科、工科各有侧重

汇写是个通用工具,但不同专业的学生用法确实不一样。同样是写毕业论文,文科、理科、工科关注的重点完全不同。汇写(https://www.huixielunwen.com/tool/graduationThesis)在设计上做了通用化处理,但你要根据自己的专业…

作者头像 李华