最近公司申请了华为云的资源做测试。在丢了一个小项目上去测试之后,发现系统CPU异常繁忙,系统重启之后情况依旧,连接服务器异常缓慢。这时也接到华为云的客服电话说测试服务器同黑客服务器之间有通信,让我们确认是不是正常的情况。由于是测试环境,所以没有加入到系统监控中,在问题时刻通过ssh远程操作很卡,估计网络带宽已跑满。通过网页console登陆服务器之后,看到很多奇怪的进程,基本可以判断系统被非法入侵了。
于是当机立断,马上关闭服务进程并断网,所有操作通过console界面
通过分析发现在/etc/init.d目录下有许多这种莫名其妙的文件,从文件内容上看这些都是进程的启动脚本,文件名和进程号一一对应,应该是随机生成的。Kill掉这些进程后又会生成一批随机的。
同时在/usr/bin 目录下能看到这些进程的二进制脚本
通过校对系统文件,比较奇怪的是发现/etc/crontab文件已经被修改
通过查看/etc/crontab文件,发现了木马文件gcc.sh
于是开始清理木马:
1、删除/etc/crontab文件里面的任务计划,同时对此文件进行写入保护
2、删除gcc.sh脚本
3、删除/etc/init.d及/usr/bin目录下对应的文件(包括cc和gcc.sh文件)
4、启动ssh和网络,排查木马入口
通过在上传目录下查找是否木马通过网站程序上传,发现两个可疑的jsp文件,而且还是二进制的
通过查询网页的访问日志,发现并没有这两个jsp文件的访问记录,同时在原项目服务器上也找到这两个文件,说明原项目服务器可能已经被埋了地雷,于是通知项目组同事跟进排查。
继续在测试服务器上查找入侵痕迹,在/var/log/secure文件当中发现了异常IP的成功登陆日志。基本可以判断操作系统的密码已经被暴力破解,病毒木马的入口为操作系统弱密码。(看来即使是测试服务器,密码设置也不能掉以轻心,危险无处不在。)
于是下线此测试服务器并进行操作系统重装与系统初始化部署,加固操作系统安全:
1、修改默认的ssh端口
2、设置防火墙,只允许公司固定IP进行ssh登陆,也可以通过tcp wrapper方式实现
3、防火墙默认规则设置成DROP,仅对公网开放80端口
4、修改测试服务器密码,采用强密码策略
后记:
此问题处理结束后,通过搜索引擎收搜发现也不少的运维同学遇到过相同的情况,此病毒木马名为“Linux 10字符病毒”,大家的处理办法都类似,但绝大多数文章没有提到入口排查这个环节,所谓“病从口入”,不处理入口问题是无法从根本解决问题的。
扩展阅读:
http://blog.csdn.net/cleanfield/article/details/51316178
http://xinsir.blog.51cto.com/5038915/1794529/
本文转自斩月博客51CTO博客,原文链接http://blog.51cto.com/ylw6006/1972808如需转载请自行联系原作者
ylw6006