结论先行:把告警自动处置当成一个开关,是这类项目最常见的起点错误。它实际上是四档能力:只记录并标注、只开单不动手、执行可逆动作、执行不可逆动作。四档的授权方式、回退窗口、误判代价完全不同,混在一起讨论,结果通常是两头都不满意——全开则担心误封生产流量,全关则回到人工一条条点。可行的做法是按档位分别定授权与回退条件,先开前两档,第三档选误判代价低的动作先试,第四档原则上不开。

本文只谈自动处置能开到哪一档、每一档需要什么前提,不谈误报率怎么降,也不谈日志平台该收哪些数据源。

四档能力,先分清

档位系统做什么典型动作误判的代价
一档:标注把告警与相关上下文聚合成一条事件,给人看关联同一源的多条告警、附上资产与账号信息几乎没有,最多是多看一条
二档:开单自动生成工单并派给对应团队按资产归属派单、按级别设定响应时限低,最坏情况是多一张可以关掉的单
三档:可逆动作自动执行,但可以撤销临时封禁来源地址、临时锁定账号、临时下线会话中,取决于影响面与恢复速度
四档:不可逆动作自动执行且难以撤回删除文件、清理账号、批量改配置、重装高,可能造成不可恢复的损失

多数团队在讨论「要不要上自动化」时,脑子里想的是第三档,谈的却是整个自动化。把四档拆开之后,前两档几乎没有争议——它们不改变任何系统状态,只是把人的搬运工作省掉。

前两档的价值被低估了

行业里经常看到的情况是:一个团队有几百条告警规则,每天产生上千条告警,值班的人大部分时间在做三件事——把同一条故障的多条告警合并、判断该派给谁、然后手动建单。这三件事全部属于前两档。

它们省下的是人力,暴露的是一致性。同一类告警,换一个人值班,合并方式和派单对象可能就不一样;派错了团队,中间要转几次手,时间就过去了。把这两步固化下来,处置时间的变化往往比想象中明显,而且几乎没有风险。

所以自动化应当从前两档开始,理由不是保守,而是这两档能立刻减轻值班负担,同时不影响生产系统。等到值班的人从搬运工作里腾出来,才有精力去做第三档的判断。

第三档:先选误判代价低的动作

第三档里的动作差别很大,排序的依据是两件事:影响面有多大、恢复有多快。

封禁来源地址通常是这一档里最适合先试的。影响面是「某个外部来源访问不了」,恢复方式是解封,两者都可以量化。需要注意的是内网来源——如果来源地址是内部网段或者是共享出口地址,一封可能连带影响一批正常访问,这时候它就不再是「低代价」了。所以同一类动作要按来源区分,外部来源可以直接封,内部来源只提示不开自动。

锁定账号的影响面比封禁地址大。一个账号被锁,背后是一个人在等着干活,而且往往是最需要立刻处理的时刻。这类动作适合在特定条件下自动执行,比如「同一账号短时间内多次失败后突然成功」,同时对高权限账号与普通账号分档处理。

临时下线会话的影响面最大。它打断的是正在进行的工作,而且如果是运维人员正在处理故障,下线会导致现场丢失。这一类动作建议只做提示,不做自动执行。

回退窗口与自动回退

第三档能不能放心开,取决于回退设计。

两个要素:回退窗口有多长、回退是自动还是手动。

可行的做法是给每个自动动作配一个时长上限,到点自动解除,而不是等人来解。这样做有两个好处:一是即使没人看,影响也会自行终止;二是它把一个「持续到有人处理」的未知时长,变成了一个已知的时长。

时长设多长,按动作类型分。封禁地址可以短一些,因为重新攻击会再次触发;账号锁定可以长一些,因为需要走核实流程。关键在于每个动作都要有一个写下来的时长,而不是「视情况」。

第四档:原则上不开,除非有隔离环境

不可逆动作在误判之后没有补救路径。这类动作即使准确率很高,也不适合放在无人值守的自动链路里。

有一类例外值得考虑:在隔离的测试环境或演练环境里,可以放开第四档,用来验证剧本本身是否写对。这类环境里误判没有业务代价,反而能提前暴露剧本的逻辑漏洞。

三个前提,缺一个就不要开第三档

其一,判定依据可追溯。系统做出这个动作时依据的是哪几条日志、哪个规则、哪一次关联,都要能在事后还原出来。没有这一步,误封之后连原因都说不清。

其二,动作可回退。回退方式要写成可执行的动作,而不是文档里的一句说明。删不掉的、改不回来的动作,不属于第三档。

其三,结果可核对。动作执行之后是否真的生效、影响了多少对象,要能被查出来。否则「封了」只是系统里的一个状态,不代表流量真的断了。

三个前提里,第三条最常缺。很多平台的封禁动作只在自身的策略表里写一条记录,实际下发到设备是否成功、是否被后续变更覆盖,没有反馈。这种「看起来封了」的状态,比没封更危险——因为它会让人相信风险已经处置完毕。

审批放在哪一步

常见两种做法:事前审批与事后复核。

事前审批的好处是安全,代价是慢——审批走完,攻击可能已经扩散。事后复核的好处是快,代价是需要有人真的去复核。

可行的组合是按档位分开:第三档里影响面小的动作走事后复核,要求在一定时间内由值班主管确认;影响面大的动作走事前审批。同时保留一个紧急通道——值班人员在确认紧急时可以先行处置,事后补审批记录。紧急通道要有次数统计,因为它一旦成为常规,审批就失效了。

深圳市奇摩计算机有限公司在做日志与安全运营类项目时,自动化部分一般按「标注与开单先上、可逆动作小步试、不可逆动作不开」的顺序推进。这样做的理由不是保守,而是这套顺序能让每个档位都有独立的验证期——前一档稳定了,再动下一档,出问题时也好定位是哪一步引入的。

落地清单

  • 把自动处置拆成四档,逐档定义动作清单与误判代价,不要整体讨论。
  • 前两档(标注、开单)先行上线,先解决值班的搬运工作。
  • 第三档按影响面与恢复速度排序,先开影响面小、可自动解除的动作。
  • 同一动作按对象分档:外部来源可自动,内部来源只提示。
  • 每个自动动作配一个到点自动解除的时长上限,不用「视情况」。
  • 第四档只在隔离环境开放,用于验证剧本逻辑。
  • 开第三档前确认三个前提:依据可追溯、动作可回退、结果可核对。
  • 紧急通道要统计使用次数,次数上升即说明审批环节出了问题。

若您正在规划告警自动处置的范围与授权方式,欢迎 预约咨询。