刚跑的程序又被kill?服务器挖矿病毒解析与修复
字数 1294 2025-08-07 08:22:25

服务器挖矿病毒分析与修复指南

0x00 问题描述

近期服务器出现异常现象:

  • 新提交的程序运行几分钟后会被自动kill
  • CPU和内存资源被大量占用
  • GPU运行着名为"htop"的可疑CUDA程序
  • 手动kill进程后3分钟内会自动恢复
  • 病毒隐蔽性强,不占用过多GPU显存(避免被发现)
  • 对研究机构造成严重影响:测试性能波动、实验数据不可靠

0x01 问题查找

系统日志分析

通过检查系统日志发现:

sudo vim /var/log/syslog
  • 大量root命令记录
  • 在pytorch目录下运行nano.backup文件
  • 恶意代码隐藏在/.cache隐藏目录中

定时任务检查

使用命令检查root用户的定时任务:

crontab -u root -e

发现病毒利用crontab设置定时任务,这是进程被kill后能自动恢复的原因。

病毒文件定位

追踪发现:

  • /home/pytorch/.cache/htop目录下创建了大量新文件
  • 文件所有者包含其他用户(非pytorch用户)

0x02 恶意攻击脚本解析

1. nano.backup脚本分析

主要功能:

  1. 检查doos.pid文件是否存在
  2. 读取pid并尝试终止对应进程
  3. 进入htop目录并在后台运行run文件

2. doos.pid文件

内容为单个整数,对应GPU中htop任务的进程号

3. run文件分析

功能:

  • 后台运行Xorg.log文件并传入htop参数
  • 将当前进程ID写入doos.pid

4. Xorg.cfg文件分析

关键操作:

  1. 第4行:写入crontab的命令
  2. 第8-17行:将内容写入nano.backup
  3. 攻击流程:上传文件夹和run文件、Xorg.log后,执行Xorg.cfg即可完成攻击部署

5. logs文件夹内容

发现:

  • 黑客的钱包地址
  • 矿池IP地址
  • 设备信息
  • 明确显示为乌鸦币挖矿程序

6. config.ini文件

包含攻击者的钱包等配置信息

病毒工作机制

  1. Xorg.log读取配置文件
  2. 调用htop二进制文件执行挖矿CUDA函数
  3. 通过crontab定时任务保持持久性

0x03 修复方案

1. 修改用户密码

立即更改所有可能被入侵的用户密码,特别是root和pytorch用户

2. 删除恶意文件

使用root权限删除病毒文件:

sudo rm -rf /home/pytorch/.cache/htop

3. 清除定时任务

编辑root用户的定时任务:

crontab -u root -e

删除或注释所有可疑的命令

4. 监控系统日志

实时监控系统日志,确认病毒是否被彻底清除:

sudo tail -f /var/log/syslog

0x04 预防措施

  1. 定期检查:定期检查系统日志和异常进程
  2. 权限控制:限制root权限使用,避免不必要的sudo授权
  3. 密码策略:使用强密码并定期更换
  4. 目录监控:监控重要目录如/.cache的异常文件
  5. 定时任务审计:定期检查crontab内容
  6. 资源监控:设置CPU/GPU使用率告警阈值

0x05 总结

该挖矿病毒通过以下方式实现持久化攻击:

  1. 利用系统定时任务机制(crontab)保持存活
  2. 将恶意文件隐藏在用户缓存目录(/.cache)中
  3. 使用伪装名称(htop)降低被发现概率
  4. 控制资源占用避免引起注意

彻底清除需要同时处理病毒文件和定时任务,并加强系统安全防护措施。

服务器挖矿病毒分析与修复指南 0x00 问题描述 近期服务器出现异常现象: 新提交的程序运行几分钟后会被自动kill CPU和内存资源被大量占用 GPU运行着名为"htop"的可疑CUDA程序 手动kill进程后3分钟内会自动恢复 病毒隐蔽性强,不占用过多GPU显存(避免被发现) 对研究机构造成严重影响:测试性能波动、实验数据不可靠 0x01 问题查找 系统日志分析 通过检查系统日志发现: 大量root命令记录 在pytorch目录下运行 nano.backup 文件 恶意代码隐藏在 /.cache 隐藏目录中 定时任务检查 使用命令检查root用户的定时任务: 发现病毒利用crontab设置定时任务,这是进程被kill后能自动恢复的原因。 病毒文件定位 追踪发现: 在 /home/pytorch/.cache/htop 目录下创建了大量新文件 文件所有者包含其他用户(非pytorch用户) 0x02 恶意攻击脚本解析 1. nano.backup脚本分析 主要功能: 检查 doos.pid 文件是否存在 读取pid并尝试终止对应进程 进入htop目录并在后台运行run文件 2. doos.pid文件 内容为单个整数,对应GPU中htop任务的进程号 3. run文件分析 功能: 后台运行 Xorg.log 文件并传入htop参数 将当前进程ID写入 doos.pid 4. Xorg.cfg文件分析 关键操作: 第4行:写入crontab的命令 第8-17行:将内容写入 nano.backup 攻击流程:上传文件夹和run文件、Xorg.log后,执行Xorg.cfg即可完成攻击部署 5. logs文件夹内容 发现: 黑客的钱包地址 矿池IP地址 设备信息 明确显示为乌鸦币挖矿程序 6. config.ini文件 包含攻击者的钱包等配置信息 病毒工作机制 Xorg.log 读取配置文件 调用 htop 二进制文件执行挖矿CUDA函数 通过crontab定时任务保持持久性 0x03 修复方案 1. 修改用户密码 立即更改所有可能被入侵的用户密码,特别是root和pytorch用户 2. 删除恶意文件 使用root权限删除病毒文件: 3. 清除定时任务 编辑root用户的定时任务: 删除或注释所有可疑的命令 4. 监控系统日志 实时监控系统日志,确认病毒是否被彻底清除: 0x04 预防措施 定期检查 :定期检查系统日志和异常进程 权限控制 :限制root权限使用,避免不必要的sudo授权 密码策略 :使用强密码并定期更换 目录监控 :监控重要目录如 /.cache 的异常文件 定时任务审计 :定期检查crontab内容 资源监控 :设置CPU/GPU使用率告警阈值 0x05 总结 该挖矿病毒通过以下方式实现持久化攻击: 利用系统定时任务机制(crontab)保持存活 将恶意文件隐藏在用户缓存目录(/.cache)中 使用伪装名称(htop)降低被发现概率 控制资源占用避免引起注意 彻底清除需要同时处理病毒文件和定时任务,并加强系统安全防护措施。