最近发现自己的博客反应特别慢, 感觉不应该啊。 无意中在腾讯云的控制台界面发现,CPU已经满负荷运载了

注: 后面CPU下降下来, 是因为自己已经成功的干掉了这个病毒。
搜了一下, Linux系统也没有什么太好的安全软件或者专杀工具。 于是只能自己手动删除。
第一步: 尝试登录服务器
很悲催, 因为之前一直是账号密码登录, 不是秘钥登录。 结果尝试登录的时候, 发现已经登录失败。
幸好还能使用控制台上面的强制重置密码功能。
第二步: 查找罪魁祸首
这个简单, 一个htop
命令就够了。 发现是一个叫做 xmr-stak-cpu
的进程。
直接使用kill
命令, 发现之后迅速启动。 直接删除文件也不行。
Google了一下, 有以下发现:
- 这个是一个挖矿程序。 本身不是病毒
- 是另外别有用心的人, 把这个当成病毒在肉鸡上运行。
- 根据一篇帖子的提示, 这个可能是使用
crontab
来运行的。
- 根据一篇帖子的提示, 这个可能是使用
在当前用户底下运行crontab -l
果然没有发现。 我相信黑客也不会这么傻乎乎的。
那么, 接下来就是两个事情:
- 如何列出系统之中的所有用户
- 如何在Linux下面查看其它用户的
crontab
任务呢
在linux下面都有现成的命令:
cut -d: -f1 /etc/passwd
这个命令可以列出所有的用户名称。 但是发现列表太长了。
-
sudo crontab -u newuser -l
可以看到其他用户的crontab任务
为了方便, 我采用了另外一种方案: 看看Crontab相关文件。 直接进去看
相关文件列表:
/etc/crontab
/etc/cron.d/*
进入/etc/cron.d
目录之后, 看到下面的东西:
1 2 3 4 5 6 |
ubuntu@VM-123-24-ubuntu /etc/cron.d [20:42:41] $ ll total 8.0K -rw-r--r-- 1 root root 589 Jul 16 2014 mdadm -rw-r--r-- 1 root root 190 Oct 26 2016 popularity-contest |
这里面的mdadm
一看就不是什么正常的东西。 看看里面有啥:
1 2 |
57 0 * * 0 root if [ -x /usr/share/mdadm/checkarray ] && [ $(date +\%d) -le 7 ]; then /usr/share/mdadm/checkarray --cron --all --idle --quiet; fi |
好长, 不过大概可以看到还有这么一个东西 /usr/share/mdadm/checkarray
并且还是被crontab自动叫起来。
进入目录/usr/share/mdadm
果然看到:
1 2 3 4 5 6 |
ubuntu@VM-123-24-ubuntu /usr/share/mdadm [20:45:02] $ ll total 12K -rwxr-xr-x 1 root root 6.4K Nov 8 2017 checkarray* -rwxr-xr-x 1 root root 2.8K Nov 8 2017 mkconf* |
第三步: 删除病毒并做好防护
找到根源之后, 接下来的事情就简单了:
- 删除目录
/usr/share/mdadm
- 删除
crontab
任务:/etc/cron.d/mdadm
- 删除正在运行的挖矿任务 (使用htop就可以获得其pid)
注意:
可以使用whereis "xmr-stack-cpu"
查看一下病毒文件具体所在的地方
至此, 这次感染算是彻底清除了。 只不过, 为了安全起见, 还是要把账号密码登录的功能禁止, 启用秘钥登录功能。
结语
第一次手动处理病毒, 还是有一些小小的成就感, 同时也告诫自己, 网络安全,不要心存侥幸!
本文原创, 原文链接: https://www.flyml.net/2018/05/11/how-to-delete-xmr-stak-cpu-virus

文章评论