温馨提示×

centos exploit怎么应急

小樊
39
2026-09-30 08:53:27
栏目: 智能运维

在 CentOS 系统上发生 exploit(漏洞利用/入侵) 后的应急处置,核心目标是:止损 → 排查 → 清除 → 加固 → 溯源。下面给你一套可操作的应急流程(偏实战,适合服务器被攻破或怀疑被利用的场景)。


一、立即止损(优先做)

1. 隔离系统

  • 如果有条件:断网或拔线
  • 云服务器:
    • 安全组 拒绝所有入站
    • 或临时吊销公网 IP
  • 不要立即重启(会丢失内存中的入侵证据)

2. 保护现场

# 记录当前时间
date

# 锁定关键日志(只读)
chattr +a /var/log/messages
chattr +a /var/log/secure

二、快速判断是否被 exploit

1. 看异常进程

top -c
ps -ef
ps aux --sort=-%cpu

重点看:

  • 不明 bash / sh / python / perl
  • 矿池进程(xmr、stratum)
  • 父进程是 httpd / nginx / redis

2. 看网络连接

netstat -antup
ss -antup

异常:

  • 连境外 IP
  • 大量 ESTABLISHED
  • 监听奇怪端口

3. 看登录情况

who
w
last
lastlog
cat /var/log/secure | grep Failed

看是否有:

  • 暴力破解成功
  • 陌生 IP 登录

三、排查入侵入口(常见 CentOS exploit 点)

1. 弱口令 / SSH

  • /etc/passwd
  • /etc/shadow
  • 是否新增用户
awk -F: '$3==0 {print}' /etc/passwd

2. 漏洞服务

常见被 exploit 的服务:

  • Redis(未授权)
  • Nginx / Apache(CVE)
  • OpenSSL
  • Sudo(CVE-2021-3156)
  • Polkit(CVE-2021-4034)

查看版本:

rpm -qa | grep -E "redis|nginx|httpd|openssl|sudo|polkit"

3. Web 后门

find /var/www -type f -name "*.php" -mtime -3
grep -R "eval(" /var/www
grep -R "base64_decode" /var/www

4. 定时任务

crontab -l
ls -la /etc/cron*
cat /etc/crontab

5. 系统服务

systemctl list-unit-files --type=service | grep enabled
ls -la /etc/systemd/system/

6. 隐藏文件 & rootkit

ls -la /
ls -la /tmp /dev/shm
rpm -Va   # 检查系统文件被篡改

四、清除入侵痕迹(谨慎)

⚠️ 先备份证据再清理

1. 杀进程

kill -9 PID

2. 删后门

  • 删除异常用户
userdel -r xxx
  • 删除异常 cron
  • 删除异常 service
  • 删除 webshell

3. 取消隐藏属性

chattr -i /etc/passwd
chattr -i /etc/shadow

五、系统加固(必须做)

1. 升级系统

yum update -y

2. SSH 加固

# 禁止 root 登录
PermitRootLogin no

# 改端口
Port 22222

# 仅密钥登录
PasswordAuthentication no

3. 防火墙

firewall-cmd --permanent --add-port=22222/tcp
firewall-cmd --reload

4. 服务最小化

  • 关闭不必要的服务
systemctl disable redis

六、事后建议

  • 重装系统(最安全)
  • 修改所有密码
  • 导出日志做溯源
  • 上 HIDS / 云安全中心
  • 定期漏洞扫描

如果你愿意,可以告诉我:

  • CentOS 版本(6 / 7 / 8 / Stream)
  • 是被哪种 exploit(SSH / Redis / Web / 未知)
  • 是否有告警或日志片段

我可以直接帮你 定位入口 + 给精准清除命令。

0 踩