知识卡片
防御系统故障时选择停滞而非开或关
内容
DoS防护系统的中央控制逻辑一旦故障,”故障时关闭”会让防护直接拦下所有流量、变成攻击者的帮凶;”故障时打开”则会放过所有攻击流量、让防护形同虚设。第三种选择是保持最后一次已知正常状态,既不额外拦截也不额外放行——这让控制系统短暂故障也不会让整体服务立即崩溃,也不需要把其可用性堆到和前端一样高。[[安全关键流量需要绕开可靠性降级策略]]中”打开还是关闭”的二选一框架其实还有第三个选项:原地不动。
参考来源
- 位置:《Google系统架构解密:构建安全可靠的系统》第10章《缓解拒绝服务攻击》10.3.3节DoS防护系统(源文件:`../OREILY动物书合辑 图灵新版/_epub-src/text/part0014_split_087.html`)
- 结论依据:原文明确说明防御系统中央控制逻辑故障时既不希望"故障时关闭"(阻断所有流量)也不希望"故障时打开"(放过所有攻击流量),而是选择"故障时会保持停滞,也就是策略不变",并因此不需要将其可用性要求提到与前端基础设施一样高。
- 原始内容:如果防御系统的中央控制逻辑出现故障,我们不希望它故障时关闭……也不希望它故障时打开……因此,它在故障时会保持停滞,也就是策略不变……由于选择故障时保持停滞,对DoS防护引擎的高可用性要求也不需要像前端基础设施那样高。