更新:
(2024-10-14)最近发现这个挖矿的又增加新功能了,所以处理方法简述一下:
1.先删掉或修改掉程序目录(/var/tmp 下的 .ICE-unix / .apachee / .k,用户家目录下的.pki);
2.然后杀掉挖矿进程(一个占用内存最大的进程,看着像是系统进程 / 还有一个./apachelogs -c);
3.最后才能删掉计划任务中的信息;
否则这个程序会自动修复计划任务中的信息;而且程序比之前处理的多了一个.apachee,计划任务中信息变成了三行,注意辨别;
先吐槽:再次发现了一个挖矿病毒,被蹭了资源,本文也就是为了记录一下发现及解决的方法,以备后用。
系统:Debian 12 最小安装
发现:在日常监测运行状态时发现 CPU 占用超 50%,内存占用超 80%,而且长时间不降
分析:
1.先查进程中占用较大的进程,我安装了 btop 工具,用这个在 TUI 下看着比较直观,也挺好看的;看到占用较大的进程程序名是 x86_64,命令是 -bash,怎么会是系统的程序?不对系统的应该不会占用这么大的资源,而且关掉了也会马上就再次运行,所以指定是不正常。
2.安装 net-tools 工具包,使用 netstat-antlp | grep -e bash -e rsync 可以看到 -bash 有网络通讯,查了一下对面地址是外国的,XXX 的。
3.看 -bash 命令是以我正常运行的普通用户权限运行的,就进去看了看计划任务 crontab -l ,发现果然有一个计划任务,并且也把程序的实际位置给找出来了:
* * * * * /var/tmp/.ICE-Unix/-bash/upd >/dev/null 2>&1
清理:既然发现问题了,就开始清理吧,最后应该修改密码了,要不然以后可能还得中;
1.先干掉计划任务中的计划任务,要不然还会再重新运行;
crontab -e ,然后删掉计划任务(或者前面加 # 号注释掉也行,等程序删掉后再删掉这行,以免忘记实际程序所在位置)
2.再查都有哪些进程 ps aux | grep bash
user 988811 0.0 0.1 8572 4052 pts/0 Ss 21:00 0:00 -bash
user 988925 0.0 0.1 10088 5672 pts/1 Ss 21:00 0:00 -bash
user 989151 202 61.5 2440852 2400252 ? Ssl 21:02 28:45 -bash
user 989454 0.0 0.0 6560 2064 pts/1 S+ 21:16 0:00 grep bash
3.干掉 -bash 的进程,注意:要干掉的是 989151 这个,因为另外两个带有 pts/0 和 pts/1 说明这两个是我正常连接的 ssh 端的正常 -bash ,这两个要是干掉,那连接也就断了
4.清理完成,此时再观察一会儿发现挖矿的 -bash 再没有重新启动,CPU 和 内存 占用恢复正常,此时就可以删掉挖矿程序与计划任务了。