背景操作系统:Ubuntu12.04_x64 运行业务:公司业务系统,爬虫程序,数据队列。 服务器托管在外地机房。 突然,频繁收到一组服务器 ping 监控不可达邮件,赶紧登陆 zabbix 监控系统查看流量状况。 可见流量已经达到了 800M 左右,肯定不正常,马上尝试 SSH 登陆系统,不幸的事,这种情况是很难登录系统操作的。 该怎么办? 1. 排查问题第一反应是想马上切断外部网络,通过内网连接查看。可是这样一来流量就会消失,但也很难查找攻击源了。 于是联系机房协助解决,授权机房技术登录到系统,先通过 w 命令查看是否有异常用户在登录,再看看登录日志 /var/log/auth.log,预料之中,日志已经清空;最后使用工具找出那个连接占用流量大,我使用了 iftop 工具。 机房技术给我拍了照,看到本地一直通过 http 方式向 104.31.225.6 这个 ip 发送数据包,而且持续不断。 那好,先把这个 ip 给屏蔽了试试:
哇塞!奇迹出现了,流量下去了,能正常连接了,面部逐渐露出笑容。 过一会儿,不幸的事情发生了,流量又上来了,擦!什么情况!心情顿时紧张起来。 又赶紧联系机房技术,执行上次的操作。 傻眼了,目的 ip 变了,这可咋搞,不可能一个个封吧! 静下心来,仔细想了下,本地向外发包,那本地肯定会有程序来发!这可咋找啊? 2. 查找攻击源先通过netstat工具过滤端口,查看运行的进程ID:
什么都没有啊,再换个端口试试,同样的效果! 让机房技术观察了下连接状态,原来是短连接,会很快的释放端口,所以才看不到端口的连接状态。 正常长连接来说,可以使用 lsof –i :15773 这样方式找到 PID,再 lsof –p PID 找到打开的相关文件。 我想静静~ 好吧!决定先切断外部网络,内网 SSH 进入系统,先找到这个发包的程序,走起! 先通过 netstat –antup 查看有无开放可疑的端口或者连接。 再通过 ps –ef 查看有无可疑的进程。 仔细看了看,都没有发现可疑的。 难道是植入了 rootkit 木马程序,说不好,试试看吧! 想要判断系统有没有植入了 rootkit 可以使用 md5sum 校验执行文件判断,先找个同版本操作系统,获取到这个工具执行文件的 md5 值,再获取可疑的工具执行文件 md5 值,比较两个值是否相同,如果相同说明这个工具是可信任的,如果不相同很有可能是被替换的。 另外,一般工具可执行文件大小都在几十K到几百K。 其实我没有用md5方式来判断工具是否可信任,因为完全相同版本操作系统不好找,稍微有点差别,工具就有可能已被更新,md5 值不同。我直接使用 du –sh /bin/lsof 查看,发现大小 1.2M,明显有问题。 所以直接下载正常系统里的 netstat、ps 等工具上传到被黑的系统里使用,再将不可用的替换掉。 3. 清理木马程序果然,奇迹出现了,执行 ps –ef 后,发下最下面有几行可疑程序。在这里,本想截图的,可惜 SSH 客户端给关了,没留下截图。 记忆中,大概是这样的:
看到这几个,感觉很奇怪,怎么会有个 java.log 的执行文件在运行呢,经过找同事核实有没有运行这样的,他们说没有,那好先杀掉并删除再说。
还有一个怎么叫 getty 呢,再正常系统里面对比进程,发现没有这个。估计又是黑客留下的,劳资怒了,宁可错杀一百,也不放过一个!
.sshd 进程?明显很可疑,难道是 ssh 后门,先杀掉删除再说!
好了,可以开启外网了,观察了一会网络流量不再飙升了,心情有如看到美女一样的愉快! 事件总结
木马代码程序下载地址: 小心,直接执行 java.log 可能会导致 Linux 瞬间基本上无法连接~! 如果还有其他木马程序怎么办? 针对这些问题,从我们公司角度来说,尽量不重装系统,业务太复杂。找出入侵点,跑的程序多,攻击面多,很棘手。先这样吧!兵来将挡,水来土掩。 让黑客趁机入侵的原因:
等等… 针对这次攻击,总结了下防护思路:
还是那句话,没有绝对的安全,只有尽可能减少攻击面,提供系统防护能力。 网络安全,从我做起! GOPS,运维的新时代 GOPS2017·深圳站 GOPS在2016年从深圳出发,当时门票提前几周收盘,一年之后承载着运维人的期望,GOPS再次来到了深圳。
|
|
来自: 昵称30922566 > 《Work》