今天大早上收到阿里云邮件通知,提示有挖矿程序。一个激灵爬起来,折腾了一早上,终于解决问题了。
其实前两天就一直收到阿里云的通知,检测到对外攻击,阻断了对其他服务器6379、 6380和22端口的访问,当时没怎么当一回儿事,反正是我用来自己学习用的,就放着不管了,结果今天事态就大了。那就来解决吧。
首先xshell连接服务器,这时候输入命令时明显感觉巨卡。
肯定是cpu被占满了,输入 top -c 命令查看有个进程叫 kworkerds。占用了将近100%的CPU。
这 kworkerds 是个啥??作为小白的我一脸懵逼。没关系,有问题找百度。
然后就知道了,kworkerds是个挖矿程序,一般是通过redis的漏洞被植入的。网上也搜到了很多解决办法,结合着这些方法,我开始了自己的操作:
1、首先 kill 掉这个进程,先让CPU降下来再说。输入个命令都得卡半天,不能忍。
2、cd到 /tmp/ 和 /var/tmp/ 目录下,把带有kworkerds的文件删除。
一边删除着发现输入命令的时候又开始变卡了。查看进程,果不其然又有个kworkerds进程,果断kill掉。
解决问题过程中这个进程总会反复重启,我就又开了一个shell,时刻监视着进程,一旦感觉输入变卡了,就先去kill掉这个进程
回到 /tmp/ 和 /var/tmp/ 目录下,发现删掉的文件又自动生成了。嗯……接着折腾
3、网上搜到会和crontab有关。好嘞,咱看看crontab有啥,删掉不就好了。然后:
嗯………………………………一定是我打开的方式不对。
4、找了半天原因,最后回到进程里查看,啊,原来是这样
是www-data这个网站用户被黑了。好吧,放下手上的活,重置个密码先。
5、输入 crontab -l -u www-data ,如下:
木马时时刻刻都在请求这个服务器下的一个mr.sh 脚本。脚本下载下来,打开看了下。
作为一个小白,虽然不大明白其中意思。但跟网上搜到的差不多,就是这个脚本不断地在生成 kworkerds文件。
6、把crontab关掉,我的www-data用户没有其他的定时任务,所以我直接执行了 crontab -r -u www-data
重复1、 2 步骤,该删的一个不留。
需要注意的是,/tmp/ 和 /var/tmp/ 目录下,所有者是 www-data 的文件都可能有问题。
除了自己能确定没问题的,其他都删掉。不要只删除 kworkerds 文件。
然后就惊喜的发现—— 删掉的文件又回来了,kill掉的进程又重启了。WTF!!
7、重新理一遍头绪。回想起了,这个病毒很可能是通过redis来攻击的。
好,那就先把redis关掉吧。然后再重复 6、 1、 2 步骤。
然后…… 问题终于解决了!
到我写这篇文章时,没有再出现这个问题。
我想之后我应该会重新装一遍redis,然后好好学一学管理redis的知识,让服务器更安全,防止再次被攻击吧。
原文地址:https://www.cnblogs.com/pickle-gao/p/10123199.html