Centos7 系统安全事故处理案例

简介:

最近公司申请了华为云的资源做测试。在丢了一个小项目上去测试之后,发现系统CPU异常繁忙,系统重启之后情况依旧,连接服务器异常缓慢。这时也接到华为云的客服电话说测试服务器同黑客服务器之间有通信,让我们确认是不是正常的情况。由于是测试环境,所以没有加入到系统监控中,在问题时刻通过ssh远程操作很卡,估计网络带宽已跑满。通过网页console登陆服务器之后,看到很多奇怪的进程,基本可以判断系统被非法入侵了。

wKioL1nkUHjDZKj_AAA3-04yrME198.png-wh_50

wKiom1nkUy6yl29kAAAKmBxjTJE086.png-wh_50

于是当机立断,马上关闭服务进程并断网,所有操作通过console界面

wKioL1nkUJ7SdTLZAABJ1Wf3u3Q300.png-wh_50

通过分析发现在/etc/init.d目录下有许多这种莫名其妙的文件,从文件内容上看这些都是进程的启动脚本,文件名和进程号一一对应,应该是随机生成的。Kill掉这些进程后又会生成一批随机的。

wKioL1nkUMyRfFOrAAApFo9Tpqk904.png-wh_50

wKiom1nkU5uRGwYYAAA7JB6TwQ8173.png-wh_50

同时在/usr/bin 目录下能看到这些进程的二进制脚本

wKioL1nkUQnx_pm7AAAcRewtTAA012.png-wh_50

通过校对系统文件,比较奇怪的是发现/etc/crontab文件已经被修改

wKiom1nkVB3yp39FAAAsqMW0yL4937.png-wh_50

通过查看/etc/crontab文件,发现了木马文件gcc.sh

wKioL1nkUSbyTwhyAAAsqMW0yL4023.png-wh_50

于是开始清理木马:

 

1、删除/etc/crontab文件里面的任务计划,同时对此文件进行写入保护

2、删除gcc.sh脚本

3、删除/etc/init.d/usr/bin目录下对应的文件(包括cc和gcc.sh文件)

4、启动ssh和网络,排查木马入口

 

通过在上传目录下查找是否木马通过网站程序上传,发现两个可疑的jsp文件,而且还是二进制的

wKiom1nkVF6T7DCGAAERPYj_1Sw480.png-wh_50

通过查询网页的访问日志,发现并没有这两个jsp文件的访问记录,同时在原项目服务器上也找到这两个文件,说明原项目服务器可能已经被埋了地雷,于是通知项目组同事跟进排查。

 

继续在测试服务器上查找入侵痕迹,在/var/log/secure文件当中发现了异常IP的成功登陆日志。基本可以判断操作系统的密码已经被暴力破解,病毒木马的入口为操作系统弱密码。(看来即使是测试服务器,密码设置也不能掉以轻心,危险无处不在。)

wKiom1nkVIODiQ7xAADP0WjnP5M195.png-wh_50

wKioL1nkUeezxrSsAABYQimElsU037.png-wh_50

于是下线此测试服务器并进行操作系统重装与系统初始化部署,加固操作系统安全:

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

相关文章
|
7月前
|
安全 Linux
CentOS7下快速升级至OpenSSH9.4p1安全版本
CentOS7下快速升级至OpenSSH9.4p1安全版本
548 1
|
7月前
|
安全 Linux Shell
CentOS7下快速升级至OpenSSH9.3p2安全版本
CentOS7下快速升级至OpenSSH9.3p2安全版本
487 0
|
7月前
|
Linux 开发工具 Docker
Docker dockerfile 案例:centos 支持 vim
Docker dockerfile 案例:centos 支持 vim
110 0
|
3月前
|
Oracle Java 关系型数据库
CentOS 7.6操作系统部署JDK实战案例
这篇文章介绍了在CentOS 7.6操作系统上通过多种方式部署JDK的详细步骤,包括使用yum安装openjdk、基于rpm包和二进制包安装Oracle JDK,并提供了配置环境变量的方法。
295 80
|
1月前
|
存储 监控 Linux
在 CentOS 7 中如何对未分配的大容量硬盘进行分区和挂载。通过具体案例,详细说明了使用 `fdisk` 创建分区、格式化分区、创建挂载点以及临时和永久挂载分区的步骤
本文介绍了在 CentOS 7 中如何对未分配的大容量硬盘进行分区和挂载。通过具体案例,详细说明了使用 `fdisk` 创建分区、格式化分区、创建挂载点以及临时和永久挂载分区的步骤。此外,还分享了一些实践经验,帮助读者更好地管理和优化磁盘空间。
87 8
|
3月前
|
存储 Linux Docker
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
关于如何在CentOS 7.6上安装Docker、介绍Docker存储引擎以及服务进程关系的实战案例。
183 3
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
|
4月前
|
安全 Linux Anolis
不容错过的 CentOS 迁移替换专场!围绕安全保障、最佳案例等分享 | 龙蜥大讲堂
如何借助龙蜥社区成熟的迁移案例,一站式解决CentOS迁移替换的问题?
|
安全 算法 中间件
CentOS7下rpm包方式升级openssl到安全版本1.1.1n
CentOS7下rpm包方式升级openssl到安全版本1.1.1n
4227 0
CentOS7下rpm包方式升级openssl到安全版本1.1.1n
|
7月前
|
存储 数据挖掘 Linux
服务器数据恢复—CentOS7操作系统服务器数据恢复案例
服务器数据恢复环境: 某品牌PowerEdge R730服务器+PowerVault MD3200存储,划分若干lun,操作系统版本是centos7,EXT4文件系统。 服务器故障&分析: 服务器在运行过程中自动关机且无法启动,服务器管理员对服务器进行修复后成功启动服务器,但服务器上原来的某个分区无法挂载。管理员将无法挂载的分区进行fsck修复&挂载,查看这个分区的数据发现部分文件丢失。