凌晨三点读一条告警:好的分诊究竟是什么样
一个成熟的 SOC 和一个昂贵的告警转发器,区别就体现在事件发生后的头四分钟。以下是这套顺序。
SOC console, live detection view
Real console screenshot with a genuine timeline and alert queue, identifiers removed. Do not fabricate alert volumes.
2400×1350 · PNG · @2x
凌晨 03:12,一条告警触发。不可能的位移:同一个账号在十一分钟内,分别从里士满和另一个国家的一家托管商处完成了认证。工具能告诉你这些。接下来发生什么,则完全取决于人和流程。
第一分钟——这是真的吗?
"不可能的位移"是现存最吵的检测之一。一条 VPN、一个企业代理、一家把流量绕经其他地区的移动运营商、一台云虚拟机上用服务账号跑的计划任务,都会触发它。在做任何事之前,分析师要先判断第二个位置能否被解释。如果那条"不可能"的支路来自你自己的出口网段,这条告警就是调校问题,不是安全事件。
第二分钟——这个会话做了什么?
大多数告警转发服务到此为止,而真正的调查从这里开始。一次登录不是事件。一次登录之后紧跟着一条把所有邮件转发到外部地址、并删除已发送副本的收件箱规则,才是事件——而这两个动作记录在不同的日志里。
- 新建的收件箱规则或邮件流规则,尤其是转发或自动删除
- 从新位置添加、修改或注册的多因素认证方式
- 授予某个 OAuth 应用的同意
- 针对文档存储的批量访问或批量下载
- 该账号或其他账号上的任何权限变更
一次登录不是事件。一次登录加上一条新的转发规则,是一场已经领先你十五分钟的入侵。
第三分钟——先定范围,再动手
本能反应是立刻停用账号。有时这么做是对的。但一个突然失去访问权的攻击者会知道自己被发现了,如果他已经建立了第二个立足点,你等于刚刚提醒他去用它。花两分钟确认这个账号是不是唯一受影响的,通常是花得值的两分钟——而这是一个需要分析师判断的问题,不是一条剧本分支。
第四分钟——先遏制,再叫醒人
撤销会话和刷新令牌,而不只是重置密码——只改密码,已签发的令牌在过期前依然有效。先记录下恶意规则,再删除它们。然后打那通电话。凌晨三点,为一次确凿的账号失陷叫醒该叫醒的人,是正确的做法;一个为了不惹人烦而不肯打这通电话的 SOC,提供的并不是你买的那份服务。
第二天早上会发生什么
把"服务"和"订阅"区分开来的,正是这一环:检测规则会被调校。如果那条告警是噪音,规则就要调整,让同样的误报不再触发。如果是真的,那么让它得以发生的缺口——那个账号没有条件访问、没有令牌保护、OAuth 同意没有告警——就会变成一条有责任人的书面建议。一次你没有从中学到东西的事件,是一次你已经默许它再次发生的事件。