3.5 KiB
3.5 KiB
现象
服务器CPU内存暴涨,在服务器上操作卡顿
查看服务器负载及异常进程PID
top
结果如下(结果较多,已去掉无关项)
top - 15:52:08 up 13 days, 6:21, 3 users, load average: 3.52, 3.23, 3.04
Tasks: 226 total, 1 running, 225 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.5 us, 0.5 sy, 98.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8173400 total, 50392 free, 7783940 used, 339068 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 146592 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
25586 root 20 0 2439064 2.289g 4 S 190.1 29.4 120:20.64 server
键盘输入“c”,显示进程完整的COMMAND列,如下
top - 15:52:23 up 13 days, 6:22, 3 users, load average: 3.72, 3.28, 3.06
Tasks: 227 total, 1 running, 226 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3.0 us, 1.3 sy, 95.7 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8173400 total, 47780 free, 7787388 used, 338232 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 142808 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
25586 root 20 0 2439064 2.289g 4 S 186.1 29.4 120:47.58 /opt/server
由以上信息可知,进程执行文件为/opt/server,pid为25586
查看进程执行文件
发现/opt/server文件不存在,/proc/25586/目录下也显示exe文件不存在
查看定时任务是否异常
cat /etc/passwd | awk -F: '{print $1}' | xargs -I {} crontab -l -u {}
发现系统无定时任务
查看/tmp目录下是否存在异常目录或文件
发现/tmp目录正常
查看进程父进程
ps -ef | grep server
结果为
root 25586 1793 99 14:45 ? 02:08:41 /opt/server
父进程为1793
查看父进程
ll /proc/1793/
其中exe为
lrwxrwxrwx 1 root root 0 Jan 11 15:56 exe -> /bin/busybox*
考虑服务器并没有使用busybox,但是docker常用
查看docker进程
docker ps -a
结果如下
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
169486212d4b zqbxacdsx "#(nop)" 3 days ago Up 3 days (healthy) harbor-jobservice
果然发现存在奇怪的容器,镜像名称为zqbxacdsx
查看docker镜像id
docker images
结果为aa05538acecf
查看镜像构建过程
## aa05538acecf 镜像ID
docker history aa05538acecf --no-trunc
发现该镜像只是增加了一个脚本main.sh
查看main.sh内容
进入容器中
## 169486212d4b 容器ID
docker exec -it 169486212d4b /bin/sh
查看main.sh
cat main.sh
果然,main.sh是一个自动下载挖矿程序的脚本
停止挖矿容器
docker stop 169486212d4b
删除挖矿容器
docker rm 169486212d4b
删除挖矿镜像
docker rmi aa05538acecf
观察一段时间,发现异常进程未重新启动,服务器运行平稳 至此,挖矿病毒处理完成。接下来防火墙关闭必要端口,docker配置加固