测试博客测试博客测试博客

服务器被挖矿处置方式

服务器被挖矿处置方式

23 人赞同了该文章

一. 前言

前几天,正在吃黄焖鸡米饭,被导师告知学校网络管理中心检测到我使用的服务器存在疑似挖矿行为,急需定位并解决问题。报文详情如下:

图1. 威胁报文donate.v2.xmrig.com
图2. 威胁报文donate.ssl.xmrig.com
图3. 网络管理中心预警

为了帮助自己在此后遇到该问题有正确的处置方式,写此篇文稿记录之,亦,希望此文能为遇到该问题的同学提供一定的思路。

二. 问题溯源

  1. 使用`nvidia-smi`命令,查看GPU有无异常占用,结论为:无。
图4. GPU无异常占用

2. 使用`top`命令,查看CPU等有无异常占用,结论为:无。

图5. CPU无明显异常

3. 使用`crontab -e`,查看时钟任务,其结果如下:

图6. 定时任务

3.1 此定时任务并非管理员所创建,怀疑其为病毒,进该时钟任务所在目录/var/tmp/.ICE-Unix/,该目录下详情如下:

图7. 具体时钟任务所在目录详情

3.2 发现管理员账户于4月20日早上05点53分创建了目录-bash及其下的命令,正常情况下,该时间管理员(我)还在睡觉,因此,怀疑此时创建的文件(夹)为病毒,其可能作为跳板机,攻击其他机器。使用命令`find / -type f -newerct "2024-04-20" ! -newerct "2024-04-20 +1 day" > /tmp/scan_0420.txt`,查看04.20当天所创建所有文件,扫描情况如下:

图8. 20240420所创建全部文件

3.3 对3.2图8中扫描的文件分析:/var/spool/cron/crontabs/user为定时启动命令,其执行/var/tmp/.ICE-Unix/-bash/目录下的命令,以实现控制本机的目的。至此,确认病毒所在地及运行方式。

4. 在CPU,GPU占用正常情况下,怀疑病毒也可能运行在隐藏进程中。

4.1 通过`sudo apt-get install unhide`下载隐藏进程扫描工具unhide

图9. 安装unhide

4.2 通过命令`sudo unhide checkbrute`扫描隐藏进程

图10. 扫描隐藏进程

4.2 扫描结果如下所示:

图11. 扫描的隐藏进程

4.3 通过`systemctl status pid`查看这些隐藏进程的详细信息

图12. 隐藏进程详细信息

4.4 从4.3中图12分析得到,这些进程都运行了/usr/bin/698c62bee9aabed2命令,同时怀疑其和IP10.122.74.142进行通信,此时怀疑/usr/bin/698c62bee9aabed2为病毒程序,10.122.74.142为恶意攻击的IP地址

4.5 沿着/usr/bin/698c62bee9aabed2的脉络分析

4.5.1 查看该程序所在目录,如下所示:

图13. 病毒文件所在目录详情

4.5.2 从图13可知,2023年11月17日,root用户创建了/usr/bin/698c62bee9aabed2,通过`find / -type f -newerct "2023-11-17" ! -newerct "2023-11-17 +1 day" > /tmp/scan_1117.txt`查找当日所创建全部文件,扫描结果未见异常

4.6 沿着IP10.122.74.142脉络分析

4.6.1 怀疑该IP地址被写入代理,进/etc目录,通过`grep -Hrin 10.122.74.142 .`查找该IP,查找结果如下:

图14. 在/etc目录下扫描恶意IP地址结果

4.6.2 此机器被恶意设置了代理,企图将10.122.74.142伪装为本地环回地址(localhost->localhost00),根查看hosts文件和代理设置的文件修改日期为2024.02.20。通过`find / -type f -newerct "2024-02-20" ! -newerct "2024-02-20 +1 day" > /tmp/scan_0220.txt`,查找当日所有文件,怀疑如下异常:

图14. 2024.02.20可能的异常文件

4.6.3 通过`cat /usr/lib/systemd/system/698c62be.service,查看其文件内容,如下:

图15. 查看 /usr/lib/systemd/system/698c62be.service内容

4.6.4 图15中执行程序与图12中一致,其为病毒无疑。

4.6.5 分析/etc/hosts文件,其内容如下,被恶意注入了10.122.74.142 localhost00

图16. hosts文件内容

4.6.5 分析etc/698c62be/iptable_reject文件,如下,其内容几乎无法查看(图17)。仔细查看其内容,发现了疑似与localhost00通信的脚本(图18), 此文件创建日期为2024.02.12(图19)

图17. etc/698c62be/iptable_reject文件内容几乎无法查看
图18. etc/698c62be/iptable_reject中疑似与恶意IP通信片段
图19. etc/698c62be/iptable_reject创建日期为2024.02.20

4.6.6 分析/etc/apt/apt.conf.d/12proxy文件内容,里面为被篡改的代理设置,如下所示:

图20. 代理设置中内容

三. 病毒汇总

1. /var/spool/cron/crontabs/**

2. /var/tmp/.ICE-Unix/

3. /usr/bin/698c62bee9aabed2

4. /usr/lib/systemd/system/698c62be.service

5. /usr/hosts

6. /etc/698c62be/iptable_reject

7. /etc/apt/apt.conf.d/12proxy

四. 几个重要的时间节点

1. 2023.11.17完毕

2. 2024.02.12完毕

3. 2024.02.20完毕

4. 2024.04.20完毕

五. 病毒处理

  1. /var/spool/cron/crontabs/**,删除该文件
  2. /var/tmp/.ICE-Unix/,删除该文件夹
  3. /usr/bin/698c62bee9aabed2,删除该文件
  4. /usr/lib/systemd/system/698c62be.service,删除该文件
  5. /usr/hosts,去掉10.122.74.142 localhost00
  6. /etc/698c62be/iptable_reject,删除该文件
  7. /etc/apt/apt.conf.d/12proxy,删除该文件

六. 后续处理

  1. 使用`sudo passwd user`修改所有用户的密码
  2. 修改SSH的默认端口号


未经允许不得转载:测试博客 » 服务器被挖矿处置方式