一、背景

最近公司有上 Hadoop 平台的计划,所以我们买了四台测试的服务器,安装 CentOS 7.4 的系统,放在了办公场所,通过公司的路由器映射出外网,方便我回家的时候对 hadoop 集群进行操作,因为是映射的不常见的端口,所以我就对密码设定的就比较简单,设置成了123456

差不多运行了一个多月,也没有太在意去查看它,毕竟是测试环境嘛!所以没有看的太重要,果不其然,今天查看的时候,发现了被黑了,汗颜!

1、发现异常

其中最为严重的是namenode节点,负载直接到 50 左右了。

Linux服务器被黑,我们该如何处理?

ps -ef可以查看到超多的异常进程。
netstat -antup可以看到超多的连接进程,我这里没有截图

Linux服务器被黑,我们该如何处理?

2、处理

相信这些异常的进程,我们是使用kill无法彻底杀死的,那正确的处理步骤应该是怎么样的呢。

二、处理步骤

1、查找进程id

相信这么多进程,基本是一个程序文件执行的结果,那我们就找一个占用 CPU 最高的处理。

Linux服务器被黑,我们该如何处理?

2、查看进程文件

  • 这里我们就用到了最厉害的命令工具lsof
    lsof -p 1203

Linux服务器被黑,我们该如何处理?

  • 我们看到了他藏在了/tmp/.v2c目录下,我们切到目录下面查看。

Linux服务器被黑,我们该如何处理?

Linux服务器被黑,我们该如何处理?

  • 我们可以看到b是一个二进制的执行文件,应该就是这个文件所为,另外一个文件夹.iokb21也是一些二进制文件。

3、处理这些文件

首先这些文件我先打包下载,说不定可以通过其中找到是如何被黑的,然后就毫不客气的清理。

rm -rf .v2c
rm -rf .iokb21

4、处理异常进程

现在我们就可以通过命令杀掉那些异常的进程了。

killall -9 ps
killall -9 b

5、另外一台服务器处理

  • 另外一台服务器的处理过程也和这个类似,先去寻找异常执行文件的位置。

Linux服务器被黑,我们该如何处理?

  • 通过lsof查看位置。
    Linux服务器被黑,我们该如何处理?

  • 查看一下,然后删除。

Linux服务器被黑,我们该如何处理?

到此位置,异常的程序算是删掉了,异常的进程也结束掉了。

三、其他检查

1、赶紧修改密码,复杂度强大一些。
2、查看一下系统是不是增加了其他的账号,异常的账号,账号是否有密码登录权限。
3、查找一些其他目录,是否也有这样的隐藏目录。
4、哦,还没有想到!!!

四、异常可执行文件

不要做有危害的事情,仅供研究查看,以方便后面如何应对
链接: https://pan.baidu.com/s/1HjCDxB3QFhbZv7VLaaInXw 提取码: arj6
链接: https://pan.baidu.com/s/1JUZ7sL0zxSfSGTMek7tBUA 提取码: yv83

五、后续

目前我还不确定是否完全删除,我会查看一段时间,如果发现异常会在此追踪,尽量在不重装系统的基础上撤掉解决被黑的。