一次服务器沦陷为肉鸡后的排查过程

一、问题现象
事情起因是突然发现一台oracle服务器外网流量跑的很高,明显和平常不一样,最高达到了200M左右,这明显是不可能的,因为oracle根本不与外界交互,第一感觉是服务器被入 侵了 。被人当做肉鸡了,在大量发包 。
这是台centos7.5 64位的系统,已经在线上运行了70多天了 。
二、排查问题
排查问题的第一步是查看此服务器的网络带宽情况,通过监控系统显示,此台服务器占满了200M的带宽,已经持续了半个多小时,接着第二步登录服务器查看情况,通过ssh登录服务器非常慢,这应该就是带宽被占满的缘故,不过最后还是登录上了服务器,下面是一个top的结果;

一次服务器沦陷为肉鸡后的排查过程

文章插图
 
可以看到,有一个异常的进程占用资源比较高,名字不仔细看还真以为是一个Web服务进程 。但是这个Nginx1确实不是正常的进程 。
接着,通过pe -ef命令又发现了一些异常:
一次服务器沦陷为肉鸡后的排查过程

文章插图
 
发现有个/etc/nginx1进程,然后查看了这个文件,是个二进制程序,基本断定这就是木 马文件 。
同时又发现,/usr/bin/dpkgd/ps -ef这个进程非常异常,因为正常情况下ps命令应该在/bin目录下才对 。于是进入/usr/bin/dpkgd目录查看了一下情况,又发现了一些命令,如下图所示:
一次服务器沦陷为肉鸡后的排查过程

文章插图
 
由于无法判断,用了最笨的办法,找了一台正常的机器,查看了一下ps命令这个文件的大小,发现只有80K左右,又检查了/usr/bin/dpkgd/ps,发现文件大小不对,接着又检查了两个文件的md5,发现也不一样 。
初步判断,这些文件都伪装的外壳命令,其实都是有后门的木 马.
继续查看系统可疑目录,首先查看定时任务文件crontab,并没有发现异常,然后查看系统启动文件rc.local,也没有什么异常,接着进入/etc/init.d目录查看,又发现了比较奇怪的脚本文件DbSecuritySpt、selinux,如下图所示:
一次服务器沦陷为肉鸡后的排查过程

文章插图
 
这两个文件在正常的系统下是没有的,所以也初步断定是异常文件 。
接着继续查看系统进程,通过ps -ef命令,又发现了几个异常进程,一个是/usr/bin/bsd-port,另一个是/usr/sbin/.sshd,这两个进程时隐时现,在出现的瞬间被我抓到了 。
查看发现/usr/bin/bsd-port是个目录,进入目录,发行了几个文件,如下图:
一次服务器沦陷为肉鸡后的排查过程

文章插图
 
有getty字眼,这不是终端管理程序吗,它用来开启终端,进行终端的初始化,设置终端,这里出现了终端,马上联想到是否跟登录相关,于是紧接着,又发现了/usr/sbin/.sshd,很明显,这个隐藏的二进制文件.sshd就是个后 门文件,表面像sshd进程,其实完全不是 。
最后,又查看了木 马最喜欢出现的目录/tmp,也发现了异常文件,从名字上感觉好像是监控木 马程序的,如下图所示:
一次服务器沦陷为肉鸡后的排查过程

文章插图
 
检查到这里,基本查明了系统中可能出现的异常文件,当然,不排除还有更多的,下面的排查就是查找更多可疑文件,然后删除即可 。
三、查杀病毒文件
要清楚系统中的牧马病毒,第一步要做的是先清除这些可疑的文件,这里总结了下此类植入牧马各种可疑的文件,供大家参考:
检查是否有下面路径文件
cat /etc/rc.d/init.d/selinux cat /etc/rc.d/init.d/DbSecuritySpt ls /usr/bin/bsd-port ls /usr/bin/dpkgd
检查下面文件大小是否正常,可以和正常机器中的文件做比对:
ls -lh /bin.NETstat ls -lh /bin/ps ls -lh /usr/sbin/lsof ls -lh /usr/sbin/ss


推荐阅读