CentOS 被入侵的全面分析
入侵现象
1、服务器资源异常:
服务器 CPU 资源长期占用 100%,负载较高,服务无法正常提供。
2、日志异常:
ps
和top
命令被替换或篡改。
系统日志(如/var/log/secure
)显示多次非授权登录尝试。
3、用户账户异常:
出现未知用户账户或现有用户账户被修改。
4、网络连接异常:
与恶意 IP 进行频繁通信,端口异常开放。
入侵排查和处理
1、检查系统资源和进程:
使用ps ef
或top
查看当前占用系统资源最高的进程,如果这些命令被替换,可以尝试从其他相同版本的系统中复制过来。
2、检查日志文件:
查看/var/log/secure
以发现非授权登录尝试。
如果日志被删除,可以使用lsof
命令恢复被删除的日志文件内容。
3、检查用户和账户:
查看/etc/passwd
和/etc/shadow
文件,确认是否有未知用户或现有用户被修改。
使用last
命令查看最近的登录记录。
4、检查网络连接:
使用netstat anpt
查看当前的网络连接,尤其是与可疑 IP 的连接。
5、检查后门和定时任务:
检查Crontab
和/etc/crontab
中是否有恶意定时任务。
使用rpm Vf
检查系统二进制文件是否被替换。
6、恢复和清理:
删除所有发现的后门文件。
更改所有用户的密码,特别是 root 用户。
更新安全策略,例如限制 SSH 登录 IP,禁用 root 远程登录。
预防措施
1、强化密码策略:
设置复杂且不易猜测的密码。
定期更换密码。
2、限制访问:
使用防火墙限制不必要的端口和服务。
配置 SSH 仅允许特定 IP 地址登录。
3、定期更新和补丁管理:
定期更新操作系统和应用程序到最新版本。
及时应用安全补丁。
4、监控和审计:
实施入侵检测系统(IDS)和入侵防御系统(IPS)。
定期审计系统日志和安全事件。
相关问答FAQs
1、如何快速发现CentOS系统是否被入侵?
可以通过检查系统资源使用情况(如CPU、内存)、查看系统日志(如/var/log/secure
)、检查网络连接和开放的端口来快速发现系统是否被入侵,使用工具如tcpdump
抓取网络包也能帮助识别异常流量。
2、如何处理CentOS系统被入侵后的日志清理问题?
如果入侵者已经删除了日志,可以尝试使用lsof
命令从/proc
目录中恢复被删除的日志文件内容,具体步骤包括找到打开日志文件的进程,然后通过该进程的文件描述符读取数据并重定向到文件中。