为什么门罗币成为挖矿木马的“首选”
在企业安全运营和应急响应中,挖矿类事件长期占据服务器安全事件的前列,而其中绝大多数挖矿木马的目标都是门罗币(Monero,XMR),原因主要有三点:
- 抗ASIC算法:门罗币采用 RandomX 算法,专为CPU优化,普通服务器即可高效挖矿,攻击者无需专业矿机;
- 隐私匿名特性:门罗币交易不可追踪、不可关联,便于攻击者隐藏收益流向;
- 匿名网络支持:矿池可通过Tor代理访问,增加了溯源难度。
服务器一旦被植入挖矿程序,最直接的表现是CPU持续飙高、业务响应变慢,同时可能伴随横向移动、信息窃取等二次危害,本文将系统梳理门罗币挖矿的排查思路与处置方法。
挖矿入侵的典型现象
在正式排查前,可先确认是否存在以下异常信号:
- 服务器CPU使用率持续高位(如长期90%以上),且无对应业务负载;
- 系统卡顿、SSH登录缓慢、Web服务响应超时;
- 流量监控中发现大量对外连接的异常流量;
- 云平台告警提示可疑外联行为;
- 存在陌生进程、陌生的定时任务或系统服务。
需要注意的是,成熟的挖矿木马会伪装进程名(如模仿 kdevtmpfsi、systemd-private 等系统进程),或在上层监控进程查看时降频“隐身”,因此不能仅凭进程名判断。
排查步骤详解
CPU与进程排查
Linux下定位高CPU进程:
top -c # 查看进程完整命令行 ps aux --sort=-%cpu | head -20
重点关注:
- 进程名类似
xmrig、kdevtmpfsi、kinsing、watchdogs、sysupdate、networkservice等已知挖矿家族; - 路径异常的进程,如位于
/tmp、/var/tmp、/dev/shm、/root/.等隐藏目录; - 命令行中出现
-o pool、stratum+tcp、--donate-level等挖矿参数特征; - 已删除但仍运行的进程(
ls /proc/PID/exe显示(deleted))。
获取进程详细信息:
ls -l /proc/<PID>/exe # 查看进程对应二进制文件路径 cat /proc/<PID>/cmdline # 查看完整启动命令 cat /proc/<PID>/environ # 查看进程环境变量(可能藏有矿池配置) ls -l /proc/<PID>/cwd # 查看进程工作目录
网络连接排查
挖矿程序必须连接矿池才能上报算力、接收任务,网络层排查是最有效的手段之一。
ss -antlp netstat -antp lsof -i -P -n | grep <PID>
重点关注的矿池常用端口:
3333、4444、5555、7777、8080、14444、14433(常见Stratum协议端口)
关注可疑外联目标:
- 常见矿池域名特征:
supportxmr、minexmr、xmrpool、nanopool、c3pool、moneroocean、hashvault等; - 连接纯IP形式的“自建矿池”;
- 通过Tor代理(常见
9050端口)中转的连接。
排查时建议结合防火墙日志、NetFlow或全流量分析设备,检索包含 mining pool、stratum、mining.subscribe、mining.authorize 等JSON-RPC特征字段的流量。
持久化机制排查
挖矿木马为保障重启后仍能运行,会布置多种持久化手段,需逐一排查:
(1)定时任务
crontab -l cat /etc/crontab ls -la /etc/cron.d/ /etc/cron.daily/ /etc/cron.hourly/ cat /var/spool/cron/*
关注指向外部下载地址(如 curl http://xxx | bash、wget -q -O- xxx)或Base64编码的可疑任务。
(2)系统服务
systemctl list-units --type=service --state=running ls -la /etc/systemd/system/ find /etc/systemd/system -mtime -7 -type f
(3)启动项与加载项
cat /etc/rc.local ls -la /etc/init.d/ cat ~/.bashrc ~/.bash_profile /etc/profile echo $LD_PRELOAD # 检查是否存在恶意动态链接库劫持 cat /etc/ld.so.preload
特别注意 LD_PRELOAD 劫持,部分木马通过它隐藏进程和网络连接,导致 ps、top、netstat 结果被过滤,排查时可使用静态编译的工具或 busybox 进行交叉验证。
可疑文件排查
find /tmp /var/tmp /dev/shm -type f -executable find / -name "*xmrig*" -o -name "*miner*" 2>/dev/null find / -ctime -3 -type f -size +1M 2>/dev/null | head
常见矿机配置文件特征:搜索包含 pool、wallet、