一次完美彻底的挖矿病毒清理记录,快学起来

一、问题产生

1.服务器内存异常
Top面板查看服务器内存情况时,发现有不知去向的内存。一部分内存空间观测不到程序的占用。

二、问题发现

1.Top面板上展示异常
Top面板展示刚才输入的top命令异常:
在这里插入图片描述

2.Top命令被篡改
进入目录/usr/bin中查找top可执行文件:

ll /usr/bin/top*

展示:
在这里插入图片描述
通过文件大小判断,top命令被篡改,看看里面内容:
在这里插入图片描述
由内容可知,top命令被篡改桥接,原top文件已被命名为:top.lanigiro。并且,在top面板上隐藏了名为ddns、httpd的程序

三、病毒排查

1.恢复top面板

1.1.思路
恢复top面板的步骤是将原top文件恢复。现在,原top文件名为top.lanigiro,只要将现在的top文件删除,再将top.lanigiro文件重命名为top即可。
1.2.操作
1)在此之前,先做好文件的备份:

cp top top.bak
cp top.lanigiro.bak

2)将top命名为top.rm

mv top top.rm

3)系统提示:
在这里插入图片描述
推测文件被加修改锁,lsattr命令查看:
在这里插入图片描述
证实了猜测,接下来解锁:

chattr -i top

系统提示:chattr命令不存在。
这是由于病毒入侵时,将文件加锁后,删除了解锁文件的命令,也就是在文件目录/usr/bin下将chattr可执行文件删除了,以达阻止运维人员恢复top面板的目的。
4)恢复chattr命令。好在有同型号的阿里云ECS服务器,从这台上面拷贝进去,再赋予执行权限。输入chattr后提示:
在这里插入图片描述

chattr命令恢复成功!紧接着恢复top面板。
5)恢复top面板。将这两个被篡改的文件解锁:
在这里插入图片描述

Top面板成功恢复!可以删除刚才的备份文件

mv top top.rm
mv top.lanigiro top

2.排查病毒入侵目录及文件

上述步骤将top面板恢复,接下来可以查看病毒想在top面板上隐藏的内容:
在这里插入图片描述

top进入面板输入C(展示运行命令)、输入P(展示按CPU排序),可得到上图。
发现在/var/tmp/.crypto/…目录下运行着名为ddns的隐藏可执行程序,占用100%的CPU空间,并且启动用户居然为root!
接下来进入到上述目录:

cd /var/tmp/.crypto/...

考虑到该病毒隐藏文件惯用手法,使用ll -a命令查看,发现:
在这里插入图片描述

这就是挖矿程序的运行目录!此目录下,ddns的用户为lsb,先记着稍后再处理。同时有ddns.log文件,看一下日志内容:
在这里插入图片描述

通过上图可以很清楚看到它的操作。
回到刚才发现ddns的用户为lsb这个问题点,将此用户标记为可以用户,推测为病毒创建的用户角色,前往验证。
cd /etc时间倒序查看最近修改的文件发现这些文件均被加锁,使用chattr:
在这里插入图片描述

前几个均为近期统一时间进行的修改,注意查看sudoers发现有为此用户分配权限痕迹:为这个可以用户分配了所有权限
在这里插入图片描述

为此用户创建的影子:
在这里插入图片描述

为此用户分配的密码:
在这里插入图片描述

定时任务获取升级脚本:
在这里插入图片描述

四、病毒清理

注意:以下操作涉及修改、删除文件记得备份!备份方式 cp重命名.bak
1.切断免认证后门
1.1删除可疑用户lsb的登录key,目录:/home/lsb/.ssh解锁后删除。
在这里插入图片描述

1.2删除root用户ssh登录key,目录:/root/.ssh
在这里插入图片描述

注意/root/.ssh/目录下保留authorized_keys空文件
2.删除入侵文件
2.1删除用户lsb在home中的目录:rm -rf /home/lsb
2.2删除crypto执行目录:rm -rf /var/tmp/.crypto
2.3清理/etc/cron.d/zzh文件
2.4清理/etc/crontab里面内容,可以从其他服务器上参照原始数据
3.杀进程
杀进程
在这里插入图片描述

  1. 清理入侵用户及用户组
    清理入侵用户及用户组,将/etc下入侵时篡改的用户组、用户及相关影子文件恢复(以-结尾的几个文件)。

五、后续处理

该病毒入侵可由Redis端口扫描入侵,因此Redis密码切记设置复杂些,禁止应用无密码‘裸奔’。
内存无法释放时,使用reboot进行服务器重启。


版权声明:本文为qq_42483521原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。