✍ 道路千万条,可咋办安全第一条。服务操作不规范,器又运维两行泪
。被黑 正在为公司呕心沥血之际
,可咋办收到好友消息 :说服务器是服务不是中招了? 随即叫他看看能不能找到CPU使用率高的进程,但他使用top命令
,器又未发现异常进程 。被黑 使用htop
,可咋办也一样未发现任何异常进程。服务 并且所有节点的器又CPU都处于高负荷状态。 根据我的被黑经验
,模板下载被黑无疑了
。可咋办 怎么办呢?服务 作为资深老油条(Server Reinstall Enginner)
,对于这种安全问题,器又第一反应就是重装(没有什么是重装解决不了的,如果有,那就再装一次)
,因为病毒大概率是找不全
,杀不干净,很容易对外留尾巴。 不过,咱还是要稍微专业一点,免费模板拿出病毒排查秘笈宝典,至少要找到一点蛛丝马迹才行 ,那我们就开始吧。 上面不论是通过top还是htop命令都没有发现具体占用CPU较高的进程,那么进程肯定是隐藏了
。 对于隐藏进程
,第一个想到的就是/etc/ld.so.preload文件,该文件是作用是让程序在运行之前
,高防服务器优先加载某些动态的链接库,部分木马正是利用此文件的功能,修改了该文件
,在里面添加恶意so文件
,从而达到了隐藏挖矿进程的目的。这也是为什么服务器CPU使用率很高,但是看不到占用CPU高的进程的原因。建站模板 默认情况下,该文件应该是空的 ,如果里面有内容
,那大概率是木马植入的 ,我们需要先找到文件里的so文件并将其删除掉 ,然后再清空该文件
。 通过排查
,发现/etc/ld.so.preload文件确实有内容(这里忘记截图了),就按照上面的步骤操作一遍
。 讲道理,亿华云上面操作后再使用top或者htop命令就能看到CPU占用高的进程了 。 除此之外,还可以使用unhide命令来查看隐藏进程
。使用yum install unhide安装命令,然后使用unhide proc即可发现隐藏进程。 秉着头痛医脚的理念 ,发现问题,就要解决问题
,虽然心里知道使用kill -9 PID大概率解决不了问题,但是忍不住想尝试一下。果不其然,杀了进程又起来另外的进程了。云计算 很明显,这是有其他守护进程的。所以使用systemctl status PID查看一下具体的进程服务 。 通过图中的箭头所指来看,就不是正常的服务
。查看启动的二进制文件 ,发现也是才安装不久。 心中窃喜,果然皇天不负有心人
。然后准备尝试一番
,看看CPU会不会降下来
。 处理之后CPU果然下来了
,而且隐藏进行也没有再起来。 看起来是解决了该台服务器的问题了。 不过,事情还没完,我们需要把服务器再检查一遍,尽可能的找到一些尾巴。 另外 ,还可以借助一些工具,比如clamav,来检查是否篡改或者植入了二进制命令。 集群中的其他服务器也按上面的流程检查了一遍 ,发现都是一样的服务、一样的二进制
、一样的计划任务。处理过后
,服务器节点的CPU都降下来了。 不过
,这些服务器都是纯内网服务器 ,木马是怎么植入进来的呢? 通过朋友的描述
,为了便于办公,有一台VPN服务器
,是自建的openvpn ,对外暴露了公网 ,且把SSH也暴露了出去,而且万万没想到的是密码非常简单 :Aa@123456 。这种密码跟给情人留门没什么两样。而且中招的那些服务器的密码和这台服务器是一样的
,这不仅留了大门 ,还把其他房间的钥匙放在桌上
。 登录到那台vpn服务器一看
,果然中招了
。 而且服务和进程都不一样 。 并且bash都被修改了
。 所有定时任务文件中,都有对应的定时任务
。 而且 ,还有另外一个高权限的账户
。 这台服务器,不准备修了,直接重装吧 。 这其实是一件入侵成本很低的安全事件: 正常情况下 ,对外暴露的除了提供服务能力的端口都应该限制白名单
,并且服务器本身的密码不应该简单随意。发生
图片
图片
图片
图片排查
图片
图片
图片
图片
图片
图片
图片
图片
图片
图片复盘