设想一次网络防御演练。红队发起攻击,蓝队发现异常、处置故障,业务恢复。复盘会上,大屏亮起:本次演练取得圆满成功。

先别鼓掌。先问一个没人提的问题:这场演练,有可能失败吗?

科目是提前通报的,攻击强度是商量好的,时间窗口是双方心照不宣的。一场从设计上就排除了失败的活动,“圆满成功”四个字包含多少信息?零。注定发生的事发生了,什么都没有证明——这不是刻薄,是信息论的基本常识:只有出乎意料的结局才携带信息。

一、一张成绩单的信息量

把演练做得再认真一点。比较新旧两套检测系统,让它们处理同一段已标注的测试流量:攻击开始后,旧系统三十秒告警,新系统十秒。单看这项,新系统快。再看同一段流量里的正常业务:旧系统误报两次,新系统误报四十次。值班人员要从告警堆里找出真正的攻击——快出来的二十秒,很可能又赔进了分拣四十条误报的时间里。

这份记录能说的只有一句:在这组条件下,新系统更早告警,误报更多。注意支撑这句话的是什么——是两组分歧的数据,是系统在一个可能出丑的场合露出的真实差异。如果测试条件被修剪到新系统必然占优,这两组数字就一文不值。

测量的价值,取决于它杀死错误判断的能力,不取决于它通过了多少科目。1901 年莱特兄弟在风洞里测了两百多个翼型,绝大多数被数据当场枪毙——那两百多次“失败”摊下来一次才几美元,换来的是人类第一张可信的翼型表。风洞的伟大不在于让飞机成功,在于让错误方案死得便宜。

靶场的存在理由一模一样:让系统在里面的每一次失败,省下一次在外面的失败。

二、失败恐惧症的制度根源

道理这么浅,为什么现实中的靶场活动普遍零失败?

因为失败有成本,成本落在具体的人头上。项目要验收,验收要成功;演习要总结,总结要报喜;厂商要案例,案例要“圆满完成”。每个环节的当事人都需要这次活动成功,于是科目从“最可能发现问题的”悄悄换成“最可能通过的”。没有人作弊,没有人说谎,只是每个人都做了对自己最合理的选择——加在一起,测量的信息量归零。

美国人给这种病起过名字。国家网络靶场(NCR)团队 2016 年公开发布的十大经验教训里有一条讲“技术债”:国防部历来的做法是把安全需求的定义往后拖,把控制措施的验证拖到临近作战试验才做——拖到那时候,发现缺陷已经改不起了,于是鉴定环节也开始配合通过。债越欠越多,利息越滚越大。他们的药方叫“左移”:把测试往研制早期挪,挪到失败还便宜的阶段去失败。另一条教训说得更直白:试验不是验收手续,是设计工具——产出是缺陷清单,不是庆功新闻。

这两句话值得钉在每间靶场机房的墙上,因为它们承认了一件反直觉的事:测量机构的天职,是报喜的反面。

三、验收之前,先问四个问题

下次评审一个靶场项目——立项、验收或采购——先别翻指标页,问四个问题。

第一问:这次活动允许失败吗?科目书敢不敢写"可能通不过",判定规则是事先写死的还是打完再定的,报告里有没有缺陷清单?这一问不过,后面都白问。

第二问:它要证明什么——关于系统的、关于人的,还是关于协同的?三套问题的记录要求完全不同,用练人的成绩单去证明系统,是张冠李戴。

第三问:拿什么证明?基线、过程记录、控制条件,写没写进方案?事后复盘补不出没记录的东西。

第四问:结论管到哪?什么条件下成立,什么条件下作废?没有边界的结论等于没有结论。

四问答得出,节点数和大屏才有意义。答不出,建得再大,也只是一间很贵的机房。

四、总结

“允许失败”解决的是态度问题,下一篇是个更硬的物理问题——说"物理"不是比喻。测量的前提是对象稳定:秤砣今天一斤,明天还是一斤。可网络安全的被测对象有个独一无二的脾气:它的“物理定律”自己会变,每周二准时变一次。对着一个不断改规则的世界,仪器凭什么说自己的读数可信?

声明:本文来自时间之外沉浮事,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。