早晨上班像往常一样对服务器进行例行巡检,发现一台阿里云服务器的CPU的资源占用很高,到底是怎么回事呢,赶紧用top命令查看了一下,发现是一个名为minerd的进程占用了很高的CPU资源,minerd之前听说过,是一种挖矿病毒,没有想到我负责的服务器会中这种病毒啊,赶紧的寻找解决的方法。下面是我把minerd给杀掉的过程,希望对大家有帮助。
步骤如下:
1、关闭访问挖矿服务器的访问
[[email protected]~]# iptables -A INPUT -s xmr.crypto-pool.fr -j DROP [[email protected]~]# iptables -A OUTPUT -d xmr.crypto-pool.fr -j DROP
2、查看定时任务
[[email protected] ~]# cd /var/spool/cron/ [[email protected] cron]# ll -rw------- 1 root root 263 Nov 2 23:24 root [[email protected] cron]# cat root
[[email protected] ~]# cd /var/spool/cron/crontabs [[email protected] crontabs]# ll -rw------- 1 root root 263 Nov 2 23:24 root [[email protected] cron]# cat root
注意:
(1)如果/var/spool/cron/root和/var/spool/cron/crontabs/root定时任务中有上面如图所示的定时内容,就把上面的定时任务给删除。再次提醒,只删除上图中的定时任务就可以了,其他的定时任务不要乱删,误删后果自负。
(2)并不是所有中minerd病毒的服务器都会有定时任务,我遇到的就没有定时任务,上面所述是出现定时任务的解决方法。
3、找到挖矿程序minerd
[[email protected] cron]# find / -name minerd* /tmp/minerd
4、取消挖矿程序minerd的执行权限
[[email protected] cron]# cd /tmp [[email protected] tmp]# chmod -x minerd
注意:在没有找到根源前,千万不要删除 minerd,因为删除了,过一回会自动有生成一个。
5、杀掉minerd进程
[[email protected] tmp]# pkill minerd [[email protected] tmp]# rm minerd //删除minerd程序
使用top命令查看,发现minerd进程消失,过几分钟之后进程没有再起来,挖矿程序minerd被消灭了,好开心啊!
6、总结:由于服务器上安装了redis,黑客利用redis的漏洞获得了服务器的访问权限。
7、建议如下:
(1)修复 redis 的配置
a、配置bind选项, 限定可以连接Redis服务器的IP, 并修改redis的默认端口6379。
b、配置AUTH, 设置密码, 密码会以明文方式保存在redis配置文件中。
c、配置rename-command CONFIG “RENAME_CONFIG”, 这样即使存在未授权访问, 也能够给攻击者使用config指令加大难度
(2)打开 /root/.ssh/authorized_keys, 删除你不认识的账号。
(3)查看你的用户列表,是不是有你不认识的用户添加进来。 如果有就删除掉。
原文地址:http://blog.51cto.com/bantu/2055465