随着公司成长,需要的工具越来越多,而随工具的增加,警报和流程中断也就越来越多。很快,每套系统和工具发出的警报,听起来就像是一场喧嚣的酒会,大家都在谈论各自不同的话题。因此,安全和运维团队正在逐渐丧失对警报的敏感度,甚至系统标出真正异常的活动,也有可能因警报疲劳而被无视掉。
你需要的,是唱诗班一样和谐悦耳的警报,一切协调运作,只有真正的事件出现才会发出高音。那么,要怎么达到这种境界呢?Threat Stack 工程副总裁克里斯·杰维斯,以及VictorOps,提供了避免警报疲劳的七种方法。
1. 让所有警报都具备上下文环境和可操作性
筛选无上下文无意义的警报来确定行动进程是十分疲惫的。有效警报需要具备两个关键特性:
- 上下文:来自匹配整个系统的数据点以描绘出完整视图,包括运行手册、图表、日志、注释,以及解决问题有关的任何其他细节。
- 源细节:指向问题源头和系统内受影响的任何其他区域,以便能从根源解决问题。
2. 减少冗余警报
很明显,不停接到同一个问题的警报无疑是毫无效率的,尤其是在问题甚至都不称之为问题的时候。这是导致警报疲劳的最大因素之一。无论是常规工程工作出发的警报,还是第三方App引起的不必要警报,都无关紧要:这些实例全都会导致警报疲劳。精确调整每个工具的报警协议,可以减少和合并警报。甚至更好的是,将所有安全功能整合到单一平台,可以统一警报配置和产生。
3. 为警报指定单一源或时间线
每个工具都发送自己的警报(多半直接发送到你的邮箱),让连点成线发现真正的问题变得十分困难——即便真的在邮件堆中对这些警报投以关注。不能依赖邮件警报作为单一的真相来源。采用Slack之类开放式通信频道无缝衔接警报,提供团队范围的可见性,允许开放讨论以解决问题的做法,要好得多。
无缝衔接安全功能(威胁情报、漏洞管理、亚马逊云追踪服务CloudTrail等等)到单一平台,同样可以统一整合安全警报。
4. 调整异常检测阈值
受日常忙碌所累,很多团队都忘了定期精调基准线。这导致了更多的无用警报,让警报疲劳进一步恶化。解决掉最大的噪音警报是个不错的开始,但更好的解决方案,是使用能随时间从系统基线中学习的工具,可随公司扩张自行调整,让安全团队无需手动调整。
5. 确保警报发给正确的人/团队
随着团队成长突然出现的另一个问题,是确保团队每一个人都能收到相应的警报以做出动作。作为持续改进过程的一部分,应让每个团队成员来决定自己收到警报的方式、频率和主题。
6. 定制个人通知/寻呼
工程师和运维人员被深夜呼叫来处理根本不严重的警报已经司空见惯。这不仅仅会让团队疲惫,甚至会让他们不再相信日间警报!所以,应确保只有高严重性警报会触发“深夜呼叫”。其他所有警报可以等第二天一早来处理。
7. 定期审查和调整
上述6条建议不应只是一次性的工作;你得定期重审以确保系统正常运行。下面几个问题,是在事后分析和定期团队会议上应该向团队提出的:
- 警报信噪比调整全队皆知了吗?
- 警报精调是持续改进过程中的一部分吗?
- 团队被授权自行安排工作优先级和处理警报疲劳相关因素了吗?
- 上报流程是明智有效的吗?
- 能集成更多的数据到警报中以提供合适的上下文来决策吗?