网络安全应急响应

半夜接到监控告警,服务器CPU飙到100%,或者HIDS狂报Webshell,甚至直接收到了勒索信。确认服务器沦陷了。

很多新手遇到这种事,一慌就直接SSH上去 kill -9 杀进程,或者 rm -rf 删文件,甚至反手就是一个 reboot 重启。

兄弟,听我一句劝,这一套连招下去,内存里的攻击痕迹全没了,日志可能被覆盖,取证直接报废,后面溯源只能靠猜。

今天不扯那些虚头巴脑的理论,就从一个一线安全运维的视角,聊聊服务器真被入侵了,现场到底该按什么顺序操作,用什么命令,怎么保全证据,怎么把业务救回来。


一、 第一阶段:抑制隔离(先控风险,保护证据)

发现被入侵,第一原则是止损,第二原则是保护现场

🚫 现场绝对禁忌(踩坑血泪教训)
  1. 绝对不要直接重启服务器:内存里的网络连接、未落盘的恶意代码、攻击者的Session全没了。有些勒索病毒甚至设定了重启就加密或删除文件的逻辑。
  2. 不要随意删除可疑文件:删了就没法做沙箱分析和特征提取了。
  3. 不要直接清空或修改日志:攻击者可能会清理日志,但你作为防守方,必须保证原始日志的完整性。
隔离实操(带着顾虑做隔离)

业务方通常死活不让断网,怕影响收入。这时候别硬刚,采取折中方案:

  • 网络层隔离:在交换机ACL或云安全组上,只封禁异常外联IP和攻击源IP,断开非必要的公网端口映射,但保留你的管理口IP
  • 账号冻结:如果发现可疑账号,先在系统里禁用(Disable),别直接删,留着溯源。

二、 第二阶段:现场取证+溯源回溯(核心实操)

隔离完之后,开始抓内鬼。这部分是硬骨头,命令直接抄。

1. Linux 主机排查命令
# 1. 查异常进程与网络连接(找挖矿或反弹Shell)
ps -ef | grep -v "\[" | awk '{print $2, $8, $11}' | sort -k2 -nr | head -n 20
netstat -antp | grep ESTABLISHED
lsof -p <可疑PID>  # 查看该进程打开了哪些文件

# 2. 查登录痕迹与历史命令
last         # 查成功登录
lastb        # 查失败登录(爆破痕迹)
history      # 查当前用户历史命令
cat ~/.bash_history  # 查隐藏的历史命令

# 3. 查持久化后门(定时任务与启动项)
crontab -l
cat /etc/crontab
ls -al /etc/cron.*
systemctl list-unit-files --state=enabled

# 4. 查关键日志(重点看安全与定时任务日志)
tail -n 500 /var/log/secure   # 看SSH登录和提权
tail -n 500 /var/log/cron     # 看定时任务执行情况
tail -n 500 /var/log/messages # 看系统常规报错
2. Windows 主机排查与事件ID

Windows主要看安全日志,记住这几个关键事件ID:

  • 4624:登录成功
  • 4625:登录失败(大量出现就是爆破)
  • 4720:新建用户(攻击者建后门账号)
  • 1102:日志被清除(看到1102直接定性为恶意入侵
# 1. 导出安全日志(先备份,别直接在事件查看器里看)
wevtutil epl Security C:\sec_backup.evtx

# 2. 查最近的成功登录
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4624} -MaxEvents 20 | Select-Object TimeCreated, Message

# 3. 查新建用户
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4720}

# 4. 查网络连接和进程
netstat -ano
tasklist /svc
3. 溯源回溯:还原攻击链

拿到日志后,怎么串起来?

  • 找入口:看Web访问日志(找SQL注入、文件上传);看安全日志(找RDP 3389爆破)。
  • 找时间:确定第一波异常登录的时间点。
  • 找源IP:提取攻击者IP,丢到威胁情报平台查一下,看是不是已知矿池或C2节点。
  • 找横向:看内网连接日志,攻击者有没有用这台机器做跳板扫描内网其他机器。

找不到日志怎么办?
如果攻击者把本地日志清了,别死磕。去查边界设备(WAF、IPS、NDR)的流量日志,或者查数据库的审计日志,甚至看同网段其他机器的日志,从侧面拼凑攻击链。


三、 第三阶段:根除威胁,清除后门

这里面临一个最现实的取舍。

方案A:业务允许,直接重装(强烈推荐)

只要条件允许,备份数据后直接重装系统。这是唯一能保证100%干净的方法。你永远不知道攻击者有没有留Rootkit或者内核级后门。

方案B:业务不能停机,就地清理(带着风险操作)

如果业务绝对不能断,只能就地清理,但你要清楚风险极高,大概率清不干净

  1. 杀进程与删文件:先杀进程,再删文件(顺序反了文件可能被进程重新拉起)。
  2. 清定时任务与启动项:把恶意的 crontab 和注册表启动项删掉。
  3. 删隐藏账号
    • Linux:查 /etc/passwd 里 UID 为 0 的非 root 账号。
    • Windows:查注册表 SAM 键值,找带 $ 的隐藏账号。
  4. 改密码:把所有相关账号密码全改了。

四、 第四阶段:业务恢复上线的正确流程

清理完千万别直接接回生产网络,否则秒被二次打穿。

  1. 隔离区修复:在隔离状态下,把导致入侵的漏洞补上(比如修补Web代码、打系统补丁、修复弱口令)。
  2. 全面杀毒与校验:跑一遍最新的杀毒软件,确认没有异常外联和残留后门。
  3. 分步上线:先放开内网访问,观察半天;没问题再放开外网访问。期间盯紧流量监控,确认没有再次触发告警。

五、 第五阶段:复盘闭环

事情平息后,别以为就完事了,还得输出复盘报告,不然下次背锅的还是你。报告必须包含:

  1. 时间线:从入侵发生、发现、处置到恢复的精确时间。
  2. 入侵路径:攻击者是怎么进来的,利用了哪个漏洞。
  3. 损失评估:数据有没有泄露,业务停了多久。
  4. 整改建议:这是重点。针对这次暴露的问题,提出具体的加固措施(比如收敛端口、上WAF、改架构),并明确责任人和完成时间。

六、 个人实战总结:应急响应最容易犯的错

干了这么多年应急,发现大家最容易犯的错误就这几个:

  1. 没抓包/没留内存镜像就断网:断网后很多内存里的加密流量和通信特征就抓不到了。
  2. 只杀进程没删文件:你刚 kill 掉,定时任务一触发,恶意文件又把自己拉起来了。
  3. 没改密码/没踢Session:文件清了,但攻击者手里的 Valid Session 还没失效,或者密码没改,人家换个IP又登进来了。
  4. 不敢跟业务方硬刚:该断网的时候心软,导致攻击者在内网横向移动,最后把核心数据库也感染了。

做安全运维,平时多流汗,战时才能少流血。希望这篇实战总结能帮大家在遇到事儿的时候不慌。


博主互动时间:
各位兄弟,你们在处理服务器入侵时,遇到过最奇葩的后门隐藏方式是什么?或者在跟业务方沟通断网时有什么话术技巧?欢迎在评论区交流,互相避坑!觉得有用,点个赞收藏一下,关键时刻能保命~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Neighbor_OldY

您的喜欢和鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值