《紫金山实验室:2023基于系统架构评估的网络弹性度量技术白皮书(94页).pdf》由会员分享,可在线阅读,更多相关《紫金山实验室:2023基于系统架构评估的网络弹性度量技术白皮书(94页).pdf(94页珍藏版)》请在三个皮匠报告上搜索。
1、I前 言前 言认为总体大于各部分之和,各部分虽较劣但总体可以优化。-钱学森一个系统的高级别属性不能直接从低级别运动中推导出来。系统的“整体”属性,不被构成系统的任何单独部分所拥有。-从系统的复杂性到涌现性网络弹性应该作为一种非功能特性被设计到系统中去。-美国 DARPA在如何汇总、累积系统各元素或子系统的属性和行为度量值从而推测系统整体属性的度量结果时,总是会面临巨大挑战。-美国 MITRE结构决定安全,内生安全系统构造可全生命周期赋能网络弹性。-邬江兴今天,人类社会的运转越来越依赖于复杂且相互关联的网络系统和数字基础设施,网络安全威胁的种类越来越多,规模越来越大,危害越来越深。由于潜在安全威
2、胁的不可预测性、极度不确定性和快速演变性,人们逐渐认识到保障网络绝对安全是不现实的。因此,一方面要努力阻止安全失陷的发生,另一方面也应尽力限制、缓解失陷危害并从中快速恢复。在此背景下,网络弹性(CyberResiliency)的概念应运而生。网络弹性聚焦业务视角,基于网络攻击、尤其是高级持续性威胁(Advanced Persistent Threat,APT)攻击防不胜防的前提,II强调防护重点应从阻止攻击向保障关键业务的持续性和可用性转变。网络弹性工程的目标是构建“可信赖”的网络系统,这样的系统具备对各类有害条件、压力、攻击及失陷的预防、抵御、恢复和适应能力。然而,现有的网络弹性实践通常是在
3、系统构建之后,通过渗透测试等手段,对系统进行反馈修改而实现。如何在系统设计之初,像其他非功能特性一样,对系统进行网络弹性的设计,已成为学术界和工业界关注的前沿问题。同时,现有的网络弹性工程框架缺少感知并抵御“未知的未知”网络攻击的能力,也难以保障关键业务的持续可信运行。此外,现有从系统部件和子系统等低级别活动出发由底向上的评估合成机制明显缺乏整体性视角,“只见树木,不见森林”,难以获得准确的评价结果。本白皮书突出了系统架构设计和评估在赋能系统网络弹性中的核心作用。提出了面向系统架构的网络弹性关键能力和设计原则,探讨了基于系统架构评估网络弹性能力的指标体系和由顶向下的网络弹性评估方法及其适用场景
4、。面向系统架构的网络弹性设计与评估,可有效弥补现有网络弹性工程框架和评价体系方面的重大缺陷,为赋能具备网络弹性的新一代关键基础设施提供借鉴和参考。III版权声明本白皮书版权属于主编和联合编写发布单位,并受法律保护。转载、摘编或通过其它方式使用本白皮书字或者观点应注明“来源:季新生等,基于系统架构评估的网络弹性度量,网络通信与安全紫金山实验室,2023 年 1 月.”。违反上述声明者,版权方将追究其相关法律责任。本白皮书主要贡献者季新生,邬江兴,伊鹏,马海龙,江逸茗,张进,李鹏坤,张思绮,卜佑军,蒋兵兵,贺磊,曹玖新,周鼎,曹植纲目 录1 网络弹性概述.11.1 网络弹性发展历程.11.2 网络
5、弹性工程框架.31.3 网络弹性广受重视.151.4 当前发展网络弹性存在的问题.171.5 小结.222 基于系统架构的网络弹性工程.232.1 系统架构是网络弹性的基石.232.2 网络弹性系统架构的关键能力.262.2.1 对“未知的未知”网络攻击的感知与抵御能力.272.2.2“1+12”的攻击面收缩能力.312.3 网络弹性系统架构的关键设计原则.332.3.1 技术结构化协同应用原则.342.3.2 反馈控制原则.362.3.3 标准化组件库原则.372.3.4 最少状态或无状态原则.382.5 小结.393 网络弹性评估框架.403.1 网络弹性系统架构评估.413.1.1 网络
6、弹性系统架构评估框架.413.1.2 网络弹性系统架构评价指标.433.1.3 网络弹性系统架构评分.483.2 网络弹性其他方面的评估.513.3 小结.554 网络弹性评估方法.564.1 概述.564.2 静态评估.594.2.1 系统整体定性分析.594.2.2 具体指标定量评分.654.3 对抗评估.664.4 破坏性评估.684.4.1 混沌工程评估方法.694.4.2 广义功能安全白盒测试.724.5 各类评估方法重点关注的架构指标.744.6 小结.765 总结.77参考献.7911 网络弹性概述1.1 网络弹性发展历程网络弹性1-1是指包含网络资源的实体所具备的对各种不利条件
7、、压力、攻击或损害的预防、抵御、恢复和适应能力。网络弹性具有五个主要特征:1)聚焦于任务或业务功能;2)聚焦 APT 攻击的影响;3)假设环境不断变化;4)假设对手必将攻破系统;5)假设对手长期存在于系统或组织中。网络弹性同时针对来自网络和非网络的对抗和非对抗威胁。2010 年,美国 MITRE 研究所发表构建安全的、弹性的架构以实现网络使命保障1-2一,明确指出应该更注意保护任务关键功能的连续性,且必须考虑在防护失效的情况下采取补偿措施以确保在遭受攻击的情况下仍然能够达成任务关键功能。此外,章还认为应该结合弹性架构和弹性运营来应对所有的“未知的未知”(unknown unknown)。图 1
8、-1 网络弹性工程框架主要内涵来源示意图弹性工程弹性工程网络安全网络安全任务保障工程任务保障工程网络弹性工程网络弹性工程实现预期、承受、恢复和进化目标实现预期、承受、恢复和进化目标把任务保障作为重点把任务保障作为重点强调解决威胁,包括高级、持续和自适应的威胁强调解决威胁,包括高级、持续和自适应的威胁22011 年,网络弹性工程框架1-3中正式提出了网络弹性工程和网络弹性工程框架(Cyber Resiliency Engineering Framework)的概念。其中,网络弹性工程是弹性工程、网络(空间)安全和使命保障工程三个学科交叉融合的结果,如图 1-1 所示。2017 年,MITRE 在
9、网络弹性设计原则1-4(Cyber Resiliency DesignPrinciples)中提出一组具有代表性的网络弹性设计原则。这些设计原则可以在整个系统生命周期中以不同的方式和程度使用。网络弹性与弹性工程、任务保证、网络安全防护、业务连续性、备份恢复等学科密切相关,它不仅仅关注应对外部的网络攻击,也关注自身的健壮性与可靠性。网络弹性并不局限于防御或消除网络攻击,也考虑到与网络攻击共存,在遭受网络攻击时保持网络可用性以及网络恢复的能力。网络弹性与网络安全的概念关系如图 1-2 所示,网络安全在预防和保护的考虑中包含了传统安全,网络弹性在恢复方面与传统的可靠性和弹性重叠。图 1-2 网络弹性
10、、网络安全概念关系图32018 年,MITRE 发布网络弹性评估指标(Cyber Resiliency Metrics)系列件1-5,1-6,1-7,描述了近 500 个具有代表性的网络弹性指标,用以评估系统方案、技术、产品或流程的弹性能力,以便提高系统的网络弹性和任务保障。2021 年,美国国家标准与技术研究院(National Institute of Standardsand Technology,NIST)正式发布了开发网络弹性系统一种系统安全工程方法(NIST SP 800-160V2R1)1-1,标志着网络弹性第一个权威技术件正式出台。1.2 网络弹性工程框架为开发网络弹性系统,N
11、IST 提出了一个理解和应用网络弹性的系统工程框架,包括网络弹性工程概念、网络弹性构成要素、工程实践和解决方案等。网络弹性工程框架(表 1-1)包括 4 个网络弹性顶层目的、8 个网络弹性需求目标(对应分解为若干子目标及需求能力)、14 项网络弹性支撑技术(对应分解为 50 项典型的网络弹性支撑方法)、5 项网络弹性策略原则和 14 项网络弹性设计原则等。网络弹性顶层目的和需求目标确定了网络弹性系统需包含哪些属性和特性,网络弹性支撑技术和构建原则描述了实现网络弹性的路径和方式。网络弹性工程实践是用于辨识、提出解决方案的方法、流程、建模和分析技术。这些实践在系统生命周期过程中可提供足够水平的网络
12、弹性,以满足风险相关者的需求,并在存在各种威胁源(包括 APT)时降低组织任务或业务能力风险。4表 1-1 网络弹性工程框架构成要素表构 成构 成系统级的定义、目的和应用系统级的定义、目的和应用目的目的定义:支持(或聚焦)网络弹性属性中的一个方面(预测、承受、恢复、适应)。说明:将网络弹性的定义与其他类型弹性的定义保持一致。应用:可用于表达高层风险相关者的关注、目的或优先级。目标目标定义:目标比目的更具体,与威胁更相关,主要说明系统在其操作环境和整个生命周期中要达到的要求,用以满足风险相关者对任务保证和弹性安全性的需求。说明:使风险相关者和系统工程师能够就网络弹性问题和优先事项达成共识;便于定
13、义衡量指标或措施有效性。应用:用于评分方法或分析摘要(例如,网络弹性状态评估)。子目标子目标定义:网络弹性目标的附属声明,强调该目标的不同方面或确定实现该目标的方法。说明:作为将目标分层细化为可以定义绩效度量的活动或能力的一个步骤。应用:用于评分方法或分析;可能体现在系统功能需求上。活动或能力活动或能力定义:支持实现子目标并因此实现目标的能力或行动的声明。说明:便于定义衡量指标或措施有效性。应用:用于评分方法或分析;体现在系统功能需求上。策略原则策略原则定义:反映风险管理策略一个方面要求,为组织、任务或系统安全工程实践提供信息说明:指导和告知整个系统生命周期内的工程分析和风险分析,指导使用不同
14、的网络弹性设计原则、网络弹性技术和实施方法。应用:在系统非功能性需求中包含、引用或重述。设计原则设计原则定义:捕捉定义系统架构和设计的经验的声明。说明:指导和告知整个系统生命周期中的设计和实施决策。重点介绍不同的网络弹性技术和实施方法。应用:在系统非功能性需求中包含、引用或重述,在系统工程中用于指导技术、实现方法、技术和实践的使用。5构 成构 成系统级的定义、目的和应用系统级的定义、目的和应用技术技术定义:一组或一类技术、流程或实践,提供实现一个或多个网络弹性目标的能力。说明:表征技术、实践、产品、控制或要求,以便了解它们对网络弹性的贡献。应用:用于工程分析,筛选技术、实践、产品、控制、解决方
15、案或要求;通过实施或集成技术、实践、产品或解决方案在系统中使用。实施方法实施方法定义:网络弹性技术的技术和流程的子集,由功能的实现方式定义。说明:表征技术、实践、产品、控制或要求,以便了解它们对网络弹性的贡献及对威胁事件的潜在影响。应用:用于工程分析,筛选技术、实践、产品、控制、解决方案或要求;通过实施或集成技术、实践、产品或解决方案在系统中使用。解决方案解决方案定义:网络弹性领域技术、架构决策、系统工程流程和操作流程、程序或实践组合。说明:提供足够水平的网络弹性以满足风险相关者的需求,并在存在高级持续威胁的情况下降低任务或业务能力的风险。应用:集成到系统或其操作环境中。缓解缓解定义:使用一种
16、或一组技术、控制、解决方案来降低与威胁事件或威胁情景相关的风险级别的行动或实践。说明:根据对威胁事件、威胁情景或风险的潜在影响来表征行动、实践、方法、控制、解决方案或这些的组合。应用:在使用时集成到系统中。61)网络弹性目的与目标网络弹性工程框架中包含四个网络弹性顶层目的(表 1-2),提供系统、任务和业务流程及组织级别的风险管理决策之间的联系。对于网络弹性工程分析,网络弹性目的是起点,也是理解网络弹性概念不可分割的基本内涵,缺一不可。表 1-2 网络弹性的 4 个目的描述表目 的目 的描 述描 述预 防定义:保持对逆境的知情准备状态逆境是指网络资源上的不利条件、压力、攻击或妥协。不利条件可能
17、包括自然灾害和结构故障(如停电)。压力可能包括意外的高性能负载。逆境可以被 APT 行为者引起或利用。知情的准备工作包括应急计划,包括减轻和调查威胁事件以及对发现的脆弱性或供应链妥协作出反应的计划。网络威胁情报为知情的准备提供了重要的信息。实现策略包括预防潜在威胁的威慑、避免和阻止策略,以及计划(即,确定可用资源并制定在威胁发生时使用这些资源的计划)、准备(即,改变可用资源和训练计划的集合)和变形(即,持续更改系统以更改攻击面)等其它策略。抵 御定义:在逆境中继续执行重要任务或业务职能该目标的意义和实现并不需要依赖检测。APT 参与者的活动可能未被检测到,或者它们可能被检测到,但被错误地归因于
18、用户错误或其他压力。为了实现这一目标,确定基本的组织任务或业务职能是必要的。此外,还必须确定支持性的流程、系统、服务、网络和基础设施。资源的临界性和基本功能的能力可以随时间而变化。实现策略包括抵御潜在威胁实现的策略,即使这些威胁没有被检测到,具体包括吸收(接受对给定系统元素集的某种程度的损坏,采取措施减少对其他系统元素或整个系统的影响,并自动修复损坏)、偏转(将威胁事件或其影响转移到不同的系统元素或转移到目标或最初受影响的系统以外的系统)和丢弃(根据损坏迹象移除系统元素甚至整个系统,并替换这些元素或使系统或任务或业务流程在没有它们的情况下运行)等策略。7目 的目 的描 述描 述恢 复定义:在逆
19、境期间和之后恢复任务或业务功能功能和数据的恢复可以是增量化的。一个关键的挑战是确定随着恢复的进展,对恢复的功能和数据有多少信任。操作或技术环境中的其他威胁事件或条件可能会干扰恢复,而 APT 行动者可能会寻求利用关于恢复过程的混乱,在组织的系统中建立一个新的立足点。实现策略包括还原(复制已知可接受的先前状态)、重建(将关键和支持功能复制到可接受的水平或使用现有系统资源)和替换(用新的系统元素替换损坏的、可疑的或选定的系统元素,或重新利用现有系统元素服务不同的功能,以执行关键支持功能)等策略。适 应定义:修改任务、业务功能和/或支持能力,以响应技术、业务或威胁环境中的预测变化变化可能在不同的规模
20、和不同的时间框架内发生,因此可能需要战术和战略适应。修改可应用于工艺和程序以及技术。技术环境的变化可能包括新兴技术(如人工智能、5G、物联网)和过时产品的退役。组织的操作环境中的变化可能源于法规或策略的变化,以及新的业务流程或工作流的引入。对这些变化和变化之间的相互作用的分析可以揭示这些变化如何修改攻击面或引入脆弱性。实现策略包括修正(移除或应用新的控制以弥补已识别漏洞或弱点)、强化(减少或控制攻击面)和更新(主动将控制、实践和能力定向到预期的、新出现的或潜在的威胁)等策略。这些策略可能会导致重新定义(改变系统需求、架构、设计、配置、获取过程或操作过程)。8 个网络弹性需求目标(表 1-3)是
21、对系统在操作环境和生命周期中实现上述 4 个网络弹性目的的具体说明,以保证利益相关者对任务保证和弹性安全的需求。目标还可以进一步细分成若干子目标,子目标又可以细分成若干代表性活动或能力。8表 1-3 网络弹性 8 个目标描述表目 标描 述阻止/避免阻止攻击的成功执行或不利情景的出现。该目标与一个组织对不同风险应对方法的偏好有关。在一些具备限制能力的情况下,风险规避或威胁规避是一种可能的风险应对方法,防止威胁事件发生是另一种可能的风险应对措施。准 备制定一套切合实际的应急预案,以应对预测或预期的逆境。该目标是由对所发生攻击的认知驱动的,涉及到组织的应急计划,运营连续性计划,培训,演习以及关键系统
22、和基础设施的事件响应和恢复计划等。持 续在逆境中最大限度地延长重要任务或业务职能的持续时间和生存能力。该目标具体涉及到基本功能。其评估与性能参数的定义、功能依赖关系的分析和关键资产的识别相一致。请注意,共享服务和公共基础设施虽然本身没有被确定为必要的,但可能对基本功能是必要的,因此与这一目标相关。扼 制限制逆境造成的伤害。该目标特别适用于关键或高价值的资产,包含或处理敏感信息的网络资产要么是关键性任务的,要么是给关键任务提供基础设施服务的。理 解在可能的逆境下维持对任务和业务依赖关系以及资源状态的有效表示。该目标支持所有其他目标的实现,最显著的是准备、重建、转变和重构。一个组织的持续诊断和缓解
23、、基础设施服务和其他服务的计划支持这一目标。检测异常情况,特别是可疑的或意外的事件或条件,也支持实现这一目标。然而,这个目标包括理解资源依赖性和独立于检测的状态。这一目标还涉及到一个组织使用取证和网络威胁情报信息共享。重 建在逆境后尽可能多地恢复任务或业务功能。该目标涉及到了基本功能,关键资产以及它们所依赖的服务和基础设施。实现目标的一个关键就是确保恢复或重建工作生成可信赖的资源。该目标不是基于对逆境来源(例如归因)的分析,即使没有探测到逆境,也可通过持续努力地监控资源的及时性和正确可用性来触发实现。转 变修改任务或业务功能和支持流程,以更有效地处理逆境和应对环境变化。该目标特别适用于关键功能
24、的工作流程、支持流程以及关键资产和基本功能的事件响应和恢复计划。战术修改通常是程序性或配置相关的;较长期的修改可能涉及重组操作流程或治理职责,同时保持底层技术架构不变。重 构修改体系结构,以更有效地处理逆境和应对环境变化。该目标特别适用于系统架构和任务架构,其中包括支持任务或业务功能的系统之系统的技术架构。此外,这一目标适用于关键基础设施和服务的体系结构,它们经常支持多种基本功能。92)网络弹性设计原则网络弹性工程框架包括 5 项网络弹性策略原则(表 1-4)和 14 项网络弹性设计原则(表 1-5)。其中,网络弹性策略原则应用于整个系统工程过程中,指导网络弹性系统工程分析的方向;网络弹性设计
25、原则直接指导网络弹性系统的架构和设计。对于一个确定的系统,可以只考虑采用部分原则。网络弹性策略原则需与项目、系统或者任务所有者的风险管理战略一致,即需根据相关的风险管理战略对网络弹性系统所需采用的网络弹性策略原则进行取舍和优先级排序。表 1-4 网络弹性策略准则策略设计原则核 心 理 念关注公共关键资产需要将有限的组织和计划资源应用到可以提供最大收益的地方。需要将有限的组织和计划资源应用到可以提供最大收益的地方。首先关注既重要又常见的资产,其次是关键或常见的资产。需了解哪些任务或业务功能、任务、能力和资产是关键的。需了解哪些资源、资产或服务对于成功执行关键功能和任务或保护关键资产至关重要。首先
26、关注那些在多个功能中通用的基本资源的安全性和网络弹性。支持敏捷性和架构适应性不仅威胁格局会随对手的发展而变化,技术以及个人和组织使用它们的方式也会发生变化。不仅威胁格局会随对手的发展而变化,技术以及个人和组织使用它们的方式也会发生变化。敏捷性和适应性都是风险管理策略不可或缺的一部分,以响应风险框架假设,即在系统的整个生命周期中威胁、技术和操作环境将发生不可预见的变化。为技术、操作和威胁环境的变化做好准备。利用现有和新兴标准来支持互操作性。认识到组织可以投资于能力或创建用于不同目的和不同时间框架的程序,管理由于程序或计划之间的依赖关系或其他交互而导致的风险。10策略设计原则核 心 理 念减小攻击
27、面大型攻击面难以防御,需要持续努力监控、分析和响应异常。大型攻击面难以防御,需要持续努力监控、分析和响应异常。减少攻击面可降低持续保护范围的成本,可迫使攻击者集中在可更有效地监控和防御的一小组位置、资源或环境上。需了解组织的攻击面不仅是系统的暴露元素,还有人员和流程。考虑攻击者如何攻击开发、运营和维护环境。考虑网络供应链中的攻击面。考虑社交媒体曝光和内部威胁。假设资源会受损从组件到系统,从芯片到软件模块再到正在运行的服务,可能会长时间受到攻击而不会被发现。从组件到系统,从芯片到软件模块再到正在运行的服务,可能会长时间受到攻击而不会被发现。事实上,某些损坏可能永远不会被检测到。尽管如此,系统仍必
28、须能够满足性能和质量要求。系统和任务或业务流程需最大限度地减少因特定产品或技术类型受到损坏而可能造成的危害。需考虑攻击横向移动可能性及级联故障。需分析并准备管理关键组件、服务或技术被破坏或受攻击的潜在后果。预计对手会进化预计高级网络攻击者将投入时间、精力和情报收集来改进其现有的能力并开发新的能力。预计高级网络攻击者将投入时间、精力和情报收集来改进其现有的能力并开发新的能力。攻击会随着新技术或技术使用提供的机会及对防御者的了解而进化。随着时间推移,由高级攻击者开发的工具可供不太复杂的攻击使用。因此,面对意外攻击,系统和任务需具有弹性。在分析架构更改、设计修改及操作程序和治理结构更改时,结合对抗性
29、观点。使用网络威胁情报,但不受其限制。11表 1-5 网络弹性结构设计原则结构设计原则结构设计原则核 心 理 念核 心 理 念保持态势感知包括对可能的性能趋势和异常现象的感知,为有关网络行动指南的决策提供信息,以确保任务完成。充分利用运行状况和状态数据健康和状态数据可用于支持态势感知、指示潜在的可疑特性以及预测适应不断变化的操作需求。确定持续的可信度对数据、软件的完整性或正确性的定期或持续核查和/或校验会增加攻击者修改或制造数据、功能所需的工作量。同样,对个人用户、系统组件和服务的特性进行定期或持续分析会增加怀疑并触发响应,例如更密切的监控、更严格的权限或隔离。限制对信任的需求限制需要信任的系
30、统元素数量(或需要信任元素的时间长度)可以降低保证、持续保护和监控所需的工作水平。控制使用和可见性控制可以发现、观察和使用的内容会增加攻击者在包含网络资源的系统中扩大其立足点或增加其影响所需的努力。遏制和排除行为限制可以做什么以及可以在何处采取行动,可以降低危害或中断在组件或服务之间传播的可能性或程度。分层防御和分区资源纵深防御和分区结合增加了攻击者克服多重防御所需的努力。(风险)自适应管理尽管组件中断或停机,风险自适应管理支持敏捷性并在整个关键操作中提供补充风险缓解。计划和管理多样性多样性是一种成熟的弹性技术,可以消除单点攻击或故障。但是,架构和设计应考虑成本和可管理性,以避免引入新风险。保
31、持冗余冗余是许多弹性策略的关键,但随着配置的更新或连接的变化,冗余会随着时间的推移而降低。12结构设计原则结构设计原则核 心 理 念核 心 理 念资源位置多样化绑定单个位置的资源(例如,单个硬件组件上运行的服务、位于单个数据中心的数据库)易成为单点故障,变成高价值目标最大化瞬态使用瞬态系统元素可最大限度地减少暴露于攻击活动的持续时间,同时定期刷新到已知(安全)状态可以清除恶意软件或损坏的数据。改变或破坏攻击面攻击面的破坏会导致攻击者浪费资源,对系统或防御者做出错误的假设,或者过早发起攻击或泄露信息。创造对用户透明的欺骗效果和不可预测性欺骗和不可预测性可以成为对抗攻击的高效技术,导致攻击暴露其存
32、在或 TTP、浪费精力。但是,如果应用不当,这些技术也会使用户感到困惑。3)网络弹性技术与方法网路弹性技术描述了如何实现网络弹性顶层目的和需求目标的方法。这些方法是复杂多样的,具体取决于系统的类型(比如:企业信息系统、网络物理系统、武器系统)和其他因素(比如:技术的架构、管理和成熟度)。网络弹性技术反映了对威胁以及提高网络弹性应对威胁相关的技术、流程和概念的理解。表 1-6中的网络弹性技术有 12 种可应用于对抗性或非对抗性威胁(包括网络相关和非网络相关威胁),另外 2 种(欺骗性和不可预测性)是专门针对对抗性威胁的网络弹性技术。表 1-7 给出了每个网络弹性技术所对应的典型代表性方法示例。1
33、3表 1-6 网络弹性 14 种技术描述表技 术技 术意 图意 图自适应响应:自适应响应:实施敏捷行动来管理风险。及时、适当地优化以应对不利条件、压力、攻击或这些方面指标的能力,以最大限度维持任务或业务运营、限制影响并避免不稳定。分析监测:分析监测:持续化的以协调的方式监控和分析广泛的属性和特性。提供最大限度地检测潜在不利条件的能力;揭示不利条件、压力或攻击的程度;识别潜在的或实际的损害,并调查攻击者的TTP。提供态势感知所需的数据。情境感知:考虑威胁事件和行动方案下构建并维护当前任务或业务功能状态的表示支持态势感知。增强对网络和非网络资源之间依赖关系的理解。揭示攻击特性的模式或趋势。协调保护
34、:确保保护机制以协调有效方式运作。要求威胁事件需克服多重保护措施(即采用纵深防御策略)。在对抗性威胁事件情况下,通过增加攻击的成本和提高攻击者检测的可能性来增加成功攻击关键资源的难度。无论威胁事件的类型如何,确保使用任何给定的保护机制不会通过干扰其他保护机制而产生不利的、意外的后果。验证网络行动指南的现实性。欺骗:误导,混淆,向对手隐藏关键资产或将秘密污染的资产暴露给攻击者。误导、混淆或向对手隐藏关键资产,从而使对手不确定如何进行攻击;延迟攻击的效果,增加被发现的风险,导致对手误导或浪费其资源,并过早地暴露敌方的谍报技术。多样性:使用异构性来最小化共模故障,尤其是常见漏洞威胁事件。限制由于复制
35、通用关键组件的故障而丢失关键功能的可能性。在对抗性威胁事件情况下,通过开发适合多个目标的恶意软件或其他 TTP 使对手花费更多的精力;通过将 TTP 应用于它们不适合的目标,增加攻击者浪费或暴露 TTP 的可能性;最大化防御组织某些系统在攻击中幸存的可能性。14技 术技 术意 图意 图动态定位:分配和动态重新定位功能或系统资源。提高从非对抗性事件(例如火灾、洪水)和对抗性威胁事件(例如网络攻击)中快速恢复的能力。阻碍对手定位、消除或破坏任务或业务资产的能力,并导致对手花费更多时间和精力寻找组织的关键资产,从而增加攻击过早暴露其存在、行动和间谍技术手段的可能性。非持久性:根据需要或在有限的时间内
36、生成并保留资源。减少对破坏、修改或损坏的暴露。在对抗性威胁事件的情况下,提供一种减少攻击入侵和推进并能从系统中删除恶意软件或损坏资源的方法。限制攻击可以瞄准资源可用性。权限限制:根据用户和系统元素的属性,以及环境因素限制权限。限制授权个人的意外特性会危及信息或服务影响和可能性。通过要求攻击者投入更多时间精力来获取凭证以阻止他们。限制攻击者利用他们获得的凭据的能力。重新调整:构建系统和资源以满足任务或业务功能需求,减少当前和预期风险,并适应技术、操作和威胁环境的演变。尽量减少关键任务和非关键服务间的连接,从而降低非关键服务故障影响关键任务服务的可能性。通过最小化非任务或业务功能被用作攻击向量的可
37、能性来减少防御组织攻击面。适应不断变化的任务或业务功能需求。适应技术环境的变化。冗余:提供关键资源多个受保护实例。减少信息或服务丢失的风险。促进从不利的网络事件的影响中恢复。限制拒绝或限制关键服务的时间。分割:根据关键性和可信度定义和分离系统元素。遏制对他们已经建立存在的飞地、系统部分或设施的对抗性活动和非对抗性压力(例如,火灾、洪水)。限制恶意软件可以轻松传播到的可能目标集。完整性验证:确定关键系统元素是否已损坏。在不同服务或输入之间发生冲突时,有助于确定正确的结果,检测受损的数据、软件或硬件以及非法修改或制造。不可预测性:随机或不可预测地进行更改。增加攻击对其可能遇到的系统保护的不确定性,
38、从而使他们更难以确定适当的行动方案。作为其他技术的力量倍增器。15表 1-714 项网络弹性技术和 50 项实施方法自适应响应自适应响应分析监测分析监测协调保护协调保护情境感知情境感知欺骗欺骗多样性多样性动态定位动态定位动态重构动态资源分配自适应管理监测和损害评估传感器融合分析取证和特性分析校准深度防御一致性分析编排自我保护动态资源感知动态威胁感知任务依赖和状态可视化迷惑虚假信息错误引导污染架构多样性设计多样性组成多样性信息多样性路径多样性供应链多样性传感器动态搬迁网络资源迁移资产流动性碎片分布式非持久化非持久化权限限制权限限制重新调整重新调整冗余冗余分割分割完整性证明完整性证明不可预测性不可
39、预测性非持久信息非持久服务非持久连接基于信任的权限管理基于属性的使用限制动态权限允许卸载限制替代定制演化受保护的备份和还原裕度复制预定义分段动态分割和隔离完整性检查起源追踪特性验证时间不可预测性环境不可预测性1.3 网络弹性广受重视伴随数字技术的快速发展,网络弹性受到了各国政府的高度重视。2013 年,美国发布第 21 号总统政策指令 PPD21关键基础设施安全与弹性1-8,强调“弹性是准备好应对并适应变化条件,承受破坏并从中快速恢复的能力。弹性还包括经受故意攻击、意外事件或自然发生的威胁,并从中恢复的能力。”美国国土安全部(DHS)据此制定了 2013 版国家基础设施保护计划(NIPP201
40、3)合作促进关键基础设施安全和弹性1-9。2019 年,美国国土安全部和国务院共同参与发布了关键基础设施安全和弹性指南1-10,总结了采用关键基础设施安全和弹性的方法,以推动提高美国关键基础设施安全和弹性能力。美国国防部发布了数字现代化战略1-11,将发展敏捷和弹性的网络安全作为国防部数字现代化的四大目标之一。162020 年,欧盟发布关于关键实体弹性的法案草案1-12和未来数字化十年的网络安全战略1-13等,要求其所有联网设备在设计上确保安全,对网络攻击具有弹性,并在漏洞出现时能迅速发现和修补。2022 年,美国网络安全和基础设施安全局(CISA)发布了 2023 年至 2025年战略规划1
41、-14,确定了加强网络防御、减少风险和增强弹性、业务协作、统一机构 4 个网络安全目标,为未来 3 年美国网络和基础设施安全指明了方向。美国发布国家安全战略1-15和国防安全战略1-16提出为关键基础设施制定标准,以快速提高其网络弹性,并建立快速应对攻击的集体能力。2022 年,英国发布国家网络战略 20221-17、国防网络弹性战略1-18和2022-2030 政府网络安全战略-建立一个具有网络弹性的公共部门1-19,将网络弹性列为重要支柱。2022 年 9 月,欧盟发布全球第一个网络弹性法案(Cyber ResilienceAct)1-20。欧盟网络弹性法案强化了网络安全规则,以确保生产者
42、提供更加安全的软硬件产品。法案明确了两个主要目标:一个是“通过确保软硬件产品以更少的漏洞投放到市场上,要求制造商在产品的整个生命周期中认真对待安全性,为安全的数字产品研发创造条件”;另一个是“创造让用户在选择和使用数字产品时主动考虑网络安全因素的条件”。该法案标志着网络弹性即将由“可选项”升级为“必选项”,成为判断数字产品合格与否的硬性指标。2022 年,中国信息安全标准化技术委员会发布网络弹性评价准则标准编制需求,拟研究定义网络弹性指标体系,提出网络弹性评价准则,以指导网络运营者设计网络信息系统,预防和缓解网络安全风险。所有这些都表明网络弹性已得到各国政府和网络安全产业界的高度关注,将17对
43、网络安全创新乃至信息化可持续发展带来越来越重大的影响。1.4 当前发展网络弹性存在的问题1)回避未知攻击的网络弹性工程思维视角存在重大硬缺陷现有网络弹性工程框架的出发点是以保障关键任务和业务流程顺利执行为核心目的,思维视角主要是通过对任务或业务功能和性能异常的检测和感知来触发任务或业务保护和恢复机制,对未知网络攻击导致的隐性任务或业务异常关注不够,特别是对难以察觉的任务或业务异常基本放弃抵抗。由于现有的网络弹性研究缺乏应对“未知的未知”网络攻击的技术方法,因此无法保障关键业务系统承载平台的安全性,进而无法保证关键业务系统的可信性,更无法达成“使命确保”的核心目标。现有的网络弹性框架中仅第 4
44、项策略设计原则“假设资源会失陷(Assume Compromised Resources)”蕴含了面向未知威胁应采取的设计策略原则。然而令人遗憾的是,虽然该设计原则明确指出了系统中可能存在无法被检测的失陷,但其给出的建议内容仅限于被动的失陷影响分析,并未给出主动的应对方法。除此之外,在第 10 项结构设计原则“自适应的资源与风险管理”中,简单提及“通过不可预测的应用风险管理策略以应对未知危险”。除了上述 2 条设计原则,现有网络弹性框架再无提及如何应对未知的威胁。2)缺乏架构统领的网络弹性工程框架存在重大硬问题在提出网络弹性概念和工程框架的初期,探索如何构建优良的网络弹性系统架构就始终是网络安
45、全和网络弹性学术界和工业界高度关注的问题。182011 年美国国家安全局(National Security Agency,NSA)启动了一个网络安全和隐私科学倡议项目(Science of Security and Privacy Initiative,缩写为 SoS),赞助美国六所大学开展网络空间安全基础科学研究。2012 年 SoS项目发布了五大网络空间硬问题(hard problem)1-21。其中,网络弹性体系架构作为五大硬问题之一,历经 10 年研究发展,迄今为止在 SoS 项目中可检索到的研究进展(2015 年报告1-22、2022 年报告1-23)仍然有限,没有取得明显突破。S
46、oS 在发布弹性体系架构硬问题时强调,一个公认的挑战是开发能够“容忍”对系统组件成功攻击的系统体系结构,具体包括:1)抵御攻击;2)在受到攻击时继续提供基本服务(可能处于降低的级别);3)在攻击后快速恢复功能。SoS 指出,应该借鉴更成熟的可靠性和可用性分析方法,来设计和分析具有可量化服务水平的容侵系统架构。但是,新方法和现有的可靠性和可用性分析方法必将存在重大差异,一个紧迫的挑战是,无法预知的网络入侵对系统组件的影响方式与随机的具有统计特性的硬件或软件故障截然不同。美国国防高级研究项目局(Defense Advanced Research ProjectsAgency,DARPA)于 201
47、8 年发布了为期四年的“网络保障系统工程(CyberAssured Systems Engineering,CASE)”项目,旨在开发一系列的设计、分析和验证工具,使得系统工程师在设计复杂的嵌入式计算系统时,能够像设计其他非功能特性一样,进行网络弹性的设计和折衷方案的管理。CASE 技术方法将网络弹性定义为一种显式工程性质,与目前系统工程标准中的其他整体性质类似,如安全性和可靠性等。项目虽取得一定进展,但整体成果尚不明朗。由于始终缺乏占主导地位的网络弹性系统结构的统领,使得当前的网络弹性19工程进展始终差强人意。IBM 公司1-242021 年 7 月对北美、南美、欧洲、亚洲和澳大利亚等地区
48、3600 多名 IT 和安全专业人员开展了第 6 次网络弹性年度调查。在关于网络弹性没有改善的原因分析中,很多受访者认为,工具繁多是网络弹性没有提高的一个重要原因,如图 1-3 所示,只有 30%的受访者表示他们的组织拥有正确的网络弹性工具组合(图 1-4)。图 1-3 在过去三次调查中,很多组织部署了多种网络弹性工具和技术图 1-4 只有 30%的受访者表示他们的组织拥有正确的网络弹性工具组合203)欠缺核心能力度量的网络弹性评估存在重大硬挑战美国 MITRE 和 NIST 始终高度重视网络弹性评估和度量,在高层次定性评估、定性和半定量评估(例如,网络弹性覆盖图)和详细定量打分评估方面取得了
49、积极的进展,但在 2018 年的献1-5中认为现有网络弹性分析评估在验证度量系统网络弹性核心能力方面存在三大挑战,在明确证明一个系统是否具备了很好的网络弹性、不同系统如何对比网络弹性和系统网络弹性核心能力如何评估等基本问题上还存在说服力和实践力不足等重大硬伤。评估挑战之一:评估复杂性与重大核心能力指标选取的关系问题一般来说,用重大核心能力指标评估弹性或网络安全常常被认为是可行的,同样,也有研究建议将系统所需业务能力的预期可用性作为重大核心能力指标来评估网络弹性。但需注意的是,还需指定额外的度量标准来评估其他方面。一般而言,为了支持工程决策,任何单一的度量要么会掩盖问题领域的复杂性,要么需要大量
50、的输入测量值,在质量上(例如,及时性,准确性)可能变化很大,因此得到的数字是高度不确定的。为了公正地对待复杂性,产生重大核心能力指标的公式和模型应该代表大量可能的逆境和潜在的后果。复杂的公式和模型为利益相关者和工程师之间讨论的主题提供了价值,以澄清什么是重要的假设。然而,以合理的成本获取高质量(例如及时、一致)信息是重大挑战。此外,威胁模型可能无法代表实际的对手,可能基于对手 TTP 的陈旧信息,或者基于对手故意操纵的 TTP 的信息。评估挑战之二:评估度量结果的可比性评估度量结果的可比性也存在重大挑战。在具有类似任务或业务职能的、面临共同威胁和适用类似良好实践标准的组织中-如果这些指标在整个
51、组织中以一致的方式进行评估,那么组织指标的对比可以是有意义的和信息丰富的。然而,21这种一致性通常很难实现(或证明)。在一个任务中有意义和有用的度量在另一个任务的背景下可能没有意义或不可评价。对同一组织、任务或业务功能或系统进行长期跟踪和比较的度量值可能有助于识别趋势。除此之外,对比变得更具挑战性,必须放在共同的威胁和操作环境中,才能有意义。网络安全和网络弹性指标在定义威胁模型或陈述关于威胁的假设的详细程度上可能存在很大差异。类似地,指标也因对操作环境的假设以及表示操作环境的细节级别而有所不同。也就是说,度量值对度量评估环境很敏感。在不同环境中评估的度量,即使以相同的方式定义,也可能是不可比较
52、的。评估挑战之三:可塑性和涌现性如何评估Security 安全、弹性、safety 安全和网络弹性都是系统级别的涌现性属性。虽然弹性可以是设备或平台的一个属性,但当系统元素组装成越来越复杂的系统和系统之系统(体系)时,可能会涌现新的属性和行为。从系统的复杂性到涌现性专著认为:“涌现和复杂性指的是一个系统的高级属性和行为的出现,这显然来自于该系统组件的集体动力学。这些特性不能直接从该系统的低级别运动中推导出来。涌现性是“整体”的属性,不被构成整体的任何单独部分所拥有。”涌现性属性在本质上通常是定性的,在如何汇总、累积系统各元素或子系统的属性和行为度量值从而推测系统整体属性的度量结果时,总是会面临
53、巨大挑战。网络弹性度量需直面网络弹性架构整体呈现作为一种涌现属性的评估。网络弹性是系统在操作和威胁环境中的一种涌现属性系统的整体行为取决于系统用户、操作员、对手和作为其一部分的防御者的行为。因此,网络弹性度量的定义需要确定关于这些环境特征的假设,只有当环境假设一致时,单个指标的组合才有意义。221.5 小结本章首先介绍了网络弹性的基本概念和发展历程,然后,对网络弹性工程框架(目的,目标,设计原则,技术和方法)给出了概述性介绍。最后,着重分析了目前网络弹性在思维视角、工程框架以及评估方法三方面存在的重大缺陷。232 基于系统架构的网络弹性工程2.1 系统架构是网络弹性的基石众所周知,自然界存在一
54、条基本规律“结构决定性质,整体大于部分之和”。一个熟知的例子是石墨与金刚石,两者均仅由碳元素构成,但是,由于碳原子排列结构的不同,导致其性质迥异,用途也大不相同。事实上,除了石墨与金刚石,俗称“足球烯”的 C60 同样也是仅由碳元素构成,但因其碳原子排列结构和石墨、金刚石均不相同,性质、用途也与前两者大不相同。金刚石、石墨、足球烯的碳原子排列结构如图 2-1 所示。图 2-1“结构决定性质,性质决定用途”化学规律的具体实例“结构决定性质,整体大于部分之和”这一规律同样适用于系统工程领域,如建筑、计算机等工程领域。以计算机体系结构设计为例,2019 年,计算机体系结构设计领域的两位大师 Henn
55、essy 和 Patterson 指出,现有的计算机体系24结构设计缺少对安全的关注,提升计算系统安全能力必须在体系结构层面进行创新2-1。近年来,在安全计算机体系结构方面涌现出了多项创新成果2-22-3,有望极大改善计算机系统安全状况。在网络弹性工程领域,对系统架构设计同样给予了高度关注。MITRE 最初有关网络弹性的论述构建安全的、弹性的架构以实现网络使命保障1-2,目标就直指系统架构,明确指出为应对高级持续威胁,必须依靠系统架构层面的弹性能力,并对弹性系统架构的目的、目标、特点进行了定义。2021 年,美国国家标准与技术研究院(NIST)发布的开发网络弹性系统一种系统安全工程方法(NIS
56、T SP 800-160V2R1)1-1,指出网络弹性系统应将安全机制作为系统结构设计的基础要素“内嵌”到系统中,从而使系统涌现出高级的弹性特征。同时,NIST SP 800-160V2R1 给出了 14 项结构设计原则以指导网络弹性系统架构设计,详见表 1-5。NSA 发起的安全科学(Science of Security,SOS)研究项目,列出了网络空间安全领域的五个硬问题(Hard Problem)2-4,弹性架构(Resilient Architectures)便是其中之一。目前,网络弹性通常是在系统构建后通过渗透测试、反馈、系统修改而实现。美国 DARPA 于 2018 年启动网络安
57、全保证系统工程(Cyber AssuredSystems Engineering,CASE)项目,旨在开发一系列的设计、分析和验证工具,使得系统工程师在设计复杂的嵌入式计算系统时,能够像设计其他非功能特性一样,进行网络弹性的设计和折衷方案的管理。CASE 技术方法将网络弹性定义为一种显式工程性质,与目前系统工程标准中的其他整体性质类似,如安全性和可靠性。项目一旦成功,在设计阶段就将能够抵御网络攻击并可靠地完成预期功能考虑在内。25虽然现有的网络弹性工程对于系统结构设计给与了高度关注,然而,令人遗憾的是,在网络弹性系统架构层面的研究至今仍缺乏整体性和可操作性。NISTSP 800-160V2R1
58、 提供的各种网络弹性技术方法、设计原则需根据具体情况“选择性”使用,缺乏整体架构的设计考量,在实际应用中,使用者会陷入“选择困难”,导致无法识别重点(参见 1.4 节)。此外,在网络弹性评估环节,同样缺乏对系统架构能力的评估,使得评价过程难以聚焦主要矛盾,评价结果失去客观性和指导意义。NIST 给出的网络弹性工程框架如图 2-2 所示2-5,其主要方法是首先定义网络弹性的目的(Goals),再将目的逐步细化为目标(Objectives)、子目标(Sub-objectives)、行动或能力(Activities/Capabilities),以上回答了“什么是网络弹性”的问题。进一步,通过定义技术
59、方法来支撑各个行动或能力,通过行动或能力的达成,支撑网络弹性目的实现。NIST SP 800-160V2R1 给出了14 项网络弹性技术,对应分解为 50 项典型的网络弹性方法1-1。NIST 给出的网络弹性工程框架看似丰富,实则缺乏整体性。如上所述,系统架构是实现系统网络弹性的基石,然而,图 2-2 所示的网络弹性工程框架中,并没有体现系统架构的位置和作用。例如,系统中所有组件是否都实现了某项能力,则系统自动就获得了该项能力?若需要在系统层面获得某项能力,是否一定要求系统内的所有组件都必须具备该项能力?事实上,从系统工程的角度而言,系统组件和系统整体之间并非是简单的“1+1=2”的关系,系统
60、层面的网络弹性能力,必须依靠系统架构能力和系统架构设计获得,如图 2-3 所示。26图 2-2 NIST 网络弹性工程框架示意2-5图 2-3 基于系统架构的网络弹性工程示意What?How?272.2 网络弹性系统架构的关键能力本节从系统整体出发,分析了实现网络弹性所需的系统架构层面的关键能力。特别需要指出的是,现有的网络弹性工程框架1-12-5中的各项能力在系统架构层面仍然适用,本节所提出的系统架构能力,是现有网络弹性工程框架中缺失的且对于实现网络弹性至关重要的关键能力,是对当前网络弹性工程框架的重要补充。更为重要的是,本节所提出的关键能力,必须通过系统架构设计、利用系统工程的涌现效应获得
61、,有别于现有网络弹性工程框架中依靠应用一项或者多项技术方法所获得的能力。2.2.1 对“未知的未知”网络攻击的感知与抵御能力美国前国防部长拉姆斯菲尔德有一句名言:(我们知道)有已知的已知,我们也知道有已知的未知,也就是说,我们知道有些事情我们不知道。但也有未知的未知那些我们不知道的未知。在网络空间,已知威胁是指具有明显特征的攻击类型,可以被标签化,是可以检测到的。当然,已知威胁初始都是未知威胁。未知的未知包括网络空间中广泛存在的各种漏洞、后门,我们不知道其具体特点,也不知道其何时会被触发。特别是对于我国这样的信息技术后发国家,“未知的未知”网络攻击是网络空间所面临的最大威胁。现有网络弹性工程框
62、架的出发点是以保障关键任务和业务流程持续执行为核心目的,主要强调在发现任务或业务异常后能够及时克服异常并恢复正常服28务,思维视角主要是通过对任务或业务异常(尤其是中断等显性异常)的检测和感知来触发恢复,对未知网络攻击导致的隐性任务或业务异常关注不够,特别是对难以察觉的任务或业务异常基本放弃抵抗。然而,正如 1.4 节所指出的,这种回避未知攻击的网络弹性思维视角存在重大硬缺陷。一个不可信的、持续运行的关键业务系统,甚至可能比关键业务系统宕机造成的危害更大。例如,被黑客潜入并控制的银行业务系统,可能会造成关键业务数据丢失、客户数据泄露、客户资产损失的严重后果,相比于被攻击后宕机的银行业务系统而言
63、,反而可造成更大的危害。再如,被黑客控制的自动驾驶车辆,存在成为“杀人机器”的风险,相比发生故障后无法继续行驶的车辆,危险性更高。根据 NIST 网络弹性权威指南1-1,所有关于网络弹性的讨论都可以用其专注的重点和先验威胁假设来区分。现有的主流网络弹性可以概括为网络威胁环境下的弹性,主要专注于任务/业务功能、关注高级持续威胁的影响,主要的威胁假设包括假设环境不断变化、假定对手将危及或破坏系统或组织、假定对手将在系统或组织中保持存在等。笔者认为,真正有效的网络弹性不能仅仅关注高级持续威胁造成的影响,而应该直面“未知的未知”网络攻击,赋能对高级持续威胁本身的检测、发现和早期扼制能力,用除因治本保障
64、网络弹性。网络弹性工程一开始的出发点就不是针对常规网络威胁,它本身是建立在对传统网络威胁已有传统网络安全防护(通常是针对已知网络威胁的外挂式安全防护)的基础上,它面对的重点是“高级持续威胁”(APT)(非常规威胁),专指能够渗透突破周边防御、访问控制和特权管理机制以及入侵检测机制的“高级网络威胁”,这些威胁有可能在目标系统上保持长期存在,既可能渗透和破坏数据,也可能降低或破坏任务或系统性能。29但是,现有网络弹性工程的基本思维视角是高级持续威胁(APT)难以检测,只能尽量采用事先多做准备,确保功能的下降尽量平缓并有底线保障,在事后能尽快弥补恢复(冗余替换重组转移)等策略,在系统任务和业务执行过
65、程中加强对任务和业务功能性能指标异常的灵敏性、全面性监测,以及时触发异常处理和恢复进程。典型的网络弹性工程期望愿景如图 2-4 所示,系统在监测到功能性能指标下降后及时启动修复进程使得任务和业务能持续运行。图 2-4 传统网络弹性功能破坏和恢复演变示意图为刻画高级持续威胁(APT)攻击的进程,可采用网络攻击链示意图的方式给出各个攻击阶段的划分,如图 2-5 所示。现有的网络弹性工程缺乏对高级持续威胁(APT)攻击的检测能力,因此,系统无法检测出处于侦察、武器化、投递、利用、控制等早期阶段的网络攻击(对策划中的攻击无感),只能依赖系统任务和业务运行显性功能性能指标的监测结果,在发现系统降效或故障
66、的同时间接推测出处于运行和维持阶段的网络攻击,这种对网络攻击的间接检测能力大大落后于对手开展网络攻击的进程,或许能对分布式拒绝服务类等攻击有一定的防御效果,但往往对隐藏的或隐性的劫持、篡改或其它“未知的未知”攻击无能为力。图 2-5 典型的网络攻击链示意图功 能性 能指 标功 能性 能指 标时间时间发现异常发现异常完成恢复完成恢复侦察武器化投 递侦察利用控制执行维持30为更直观的展示现有网络弹性的不足,可在图 2-4 代表的典型网络弹性演变图中增加网络攻击的进展标注,使得网络弹性图既显示功能性能演变、又揭示网络攻击进程演变,如图 2-6 所示(图示方法本身就是一种创新),图中红色部分显示了网络
67、攻击进程的阶段演变。图 2-6 现有网络弹性缺乏对 APT 攻击本身的早期感知能力事实上,图 2-6 显示网络攻击是因,任务/业务功能性能异常是果,上半部分的红色虚线显示网络攻击历经侦察、武器化、投递、利用、控制等潜伏过程,到执行阶段爆发,导致相应的任务/业务功能性能异常,触发网络弹性干预和恢复机制,待任务/业务功能性能恢复后,可反映出上一波网络攻击维持阶段的终止,同时下一波网络攻击又在酝酿,可能是以更隐蔽更进化的方式。为打破这种周而复始的循环,切实落实网络弹性的宏伟愿景,必须将单纯依赖任务/业务功能性能监测的视角转变为检测“未知的未知”攻击和监测任务/业务功能性能相结合的视角,变单纯的事后亡
68、羊补牢被动弹性恢复为扼制不良苗头/早期攻击隐患的治未病内生弹性,这种赋能可以将图 2-6 中未感知到的红色攻不能检测未知的未知攻击维持执行控制利用投递武器化侦察不能检测未知的未知攻击维持执行控制利用投递武器化侦察功 能性 能指 标功 能性 能指 标时间时间发现异常发现异常完成恢复完成恢复31击线转变为图 2-7 中可感知到的绿色攻击线。图 2-7 具备对“未知的未知”攻击检测防御的网络弹性演变图由图 2-7 可直观的看到,以绿线表示的对手多次尝试的 APT 攻击被扼制在攻击的早期(也就大大威慑了对手发起后续攻击的意愿),以黑蓝色线表示的系统功能性能曲线始终维持平稳,避免大的起落,可更好的避免系
69、统任务和业务功能性能的异常。2.2.2“1+12”的攻击面收缩能力对冗余性、多样性相关技术的应用是实现网络弹性的必要手段1-1。然而,简单应用冗余性和多样性相关技术的一个明显缺陷是导致系统攻击面扩大1-1,带来更大的安全风险。因此,通过系统架构设计,调和看似冲突的相关技术,在充分利用冗余性、多样性技术实现网络弹性能力提升的同时,不显著增加甚至缩小系统的攻击面,是网络弹性系统架构的关键能力之一。同“未知的未知”网络攻击的感知与抵御能力类似,“1+12”的攻击面收缩能力难以通过简单应用一项或者多项技术获得,而是需要系统架构设计层面的可以检测未知的未知攻击维持执行控制利用投递武器化侦察可以检测未知的
70、未知攻击维持执行控制利用投递武器化侦察功 能性 能指 标功 能性 能指 标时间时间32整体考量,通过协同应用冗余性、多样性及其他相关技术方法,从时间或者空间维度,或者同时从时间-空间两个维度缩小系统攻击面。图 2-8 给出了从时间和空间维度缩小攻击面的例子。图 2-8(a)采用移动目标防御的思想,从时间维度缩小系统的攻击面。系统输入被随机分配到功能等价的冗余子系统 1 或子系统 2,任一子系统的输出均视为系统输出。这样,由于攻击面的动态变化,攻击者实施攻击的难度加大,系统的攻击面出现收缩效应。图 2-8(b)采用非相似余度构造(Dissimilar Redundancy Structure,D
71、RS)的思想,将系统输入同时复制到功能等价的冗余子系统 1 和子系统 2,两个子系统的输出经过比对,确认一致后,方作为系统的输出。此时,若不考虑复制及比对模块,则系统的攻击面收缩为子系统 1 和子系统 2 的攻击面的交集,如图 2-8(b)中红色区域所示。(a)时间维度缩小攻击面33(b)空间维度缩小攻击面图 2-8 通过架构设计缩小系统攻击面示例考虑到冗余性、多样性对于实现网络弹性的重要意义,通过系统架构设计,利用系统工程的“涌现性”能力,缩小系统攻击面,是网络弹性系统架构的关键能力之一。2.3 网络弹性系统架构的关键设计原则网络弹性系统架构的关键设计原则网络弹性系统架构的关键能力必须通过系
72、统架构设计获得。NIST 网络弹性工 程 框 架 1-1 中 给 出了 14 项 系 统结 构 设 计原 则(Structural DesignPrinciples,详见表 1-5),对如何设计具有良好网络弹性能力的系统架构给出了有价值的指导。本白皮书在现有网络弹性工程框架的基础上,进一步提出了若干系统架构层面的关键设计原则。342.3.1 技术结构化协同应用原则网络弹性工程框架中的各项技术方法并非是相互独立、彼此无关的。为实现特定的网络弹性系统架构能力,在系统架构设计中,必须对多项技术方法进行结构化的协同应用,从而获得系统工程的特性“涌现”增益。以 2.2 节描述的“对未知的未知网络攻击的感
73、知与抵御能力”这一关键系统架构能力为例,需要综合应用动态性(Dynamics)、多样性(Variety)、冗余性(Redundancy)相关的技术方法和设计原则方能达成。在网络攻击过程中,攻击链的有效性与可靠性十分依赖目标系统的静态性、确定性和相似性。图2-9 为攻击链示意图,其中任一环节的变化都可能使攻击无法达成预期的目的。换言之,攻击链其实也十分脆弱。例如,在系统探测、漏洞挖掘、系统突破环节导入随机性、动态性和多样机制就能有效的对抗隐蔽渗透;在系统控制、信息获取、系统毁损阶段导入异构冗余择多判决机制就能应对潜伏或蛰伏攻击。可见,动态性、多样性、冗余性是实施有效防御的重要机制。图 2-9 典
74、型的网络攻击链35现有的网络弹性工程框架中,多项结构设计原则及技术方法与动态性、多样性、冗余性相关,不妨将与上述三者相关的原则和技术组成的集合分别记作 D 域、V 域和 R 域。图 2-10 列出了 NIST 网络弹性权威指南1-1中给出的 14 项技术和14 个设计原则在 D、V、R 域内的映射结果。由图 2-10 可见,现有网络弹性框架中的设计原则与技术技术方法有半数落在了 D 域、V 域和 R 域的并集内。图 2-10 NIST 网络弹性设计原则和技术在 DVR 域的映射然而,为获得 2.2 节所述的“对 未知的未知 网络攻击的感知与抵御能力”,在系统架构中仅应用动态、异构、冗余中的任意
75、一项或者两项是不够的。以应用任意两项为例:只应用动态性和异构性,典型的技术实例是移动目标防御(Moving Target Defense,MTD)2-6,通过随机性地选择目标对象提供当前对外服务功能,存在的问题是多样化目标对象中只要存在一个防御者未知的后门,攻击者可通过内外配合方式至少达成窃取敏感信息的协同攻击目的;只应用动态性和冗余性,典型的技术实例是当前高可靠系统中应用的多模冗余36(Multi-modular Redundancy)2-72-8机制,虽然可以防御随机故障,但是无法抵御基于未知漏洞后门的网络攻击;只应用多样性和冗余性,典型的技术实例是非相似余度构造(Dissimilar R
76、edunancy Structure,DRS)2-9,存在的问题是由于目标系统的异构冗余体数量和部署方案是静态的、确定的和相似的,进而攻击表面也是确定的和相似的。如果多个冗余体上存在攻击者已知但防御者未知的漏洞后门时,攻击者可以采用逐个击破的方式实施攻击。由上述分析可见,简单应用动态性、多样性、冗余性机制并不能实现抵御“未知的未知”网络攻击的目的。事实上,只有通过结构化的协同方式,同时应用动态性、多样性、冗余性技术,方可实现上述目标2-10。现有的网络弹性技术方法、设计原则均没有落在 DVR 交集内,如图 4.7 所示。因此,虽然当前网络弹性框架给出了分别涉及动态性、多样性和冗余性的多项设计原
77、则和技术,但由于缺乏将动态性、多样性和冗余性三者有机融合的架构设计,并不具备“对未知的未知网络攻击的感知与抵御能力”。2.3.2 反馈控制原则实现系统对于外界环境的演化适应是网络弹性的重要目的之一。为达成这一目的,在系统架构设计必须引入反馈控制机制,如图 2-11 所示。外部攻击的动态变化通过状态分析器进行感知,状态分析器对系统内各子系统、各组件的输出及运行状态进行综合分析,发现潜在问题和风险,并通过反馈控制器对系统内各子系统、组件的运行状态以及系统内部网络的连接关系进行调整,使系统及时进37行自适应的变化调整。这一过程和智能生物体对外界环境变化的调整过程类似,反馈控制机制是网络弹性系统架构设
78、计中必须应用的原则。图 2-11 带反馈控制的系统架构示意图2.3.3 标准化组件库原则系统结构设计中应尽量将子系统、组件分解为具备低耦合、高内聚、标准接口特性的独立功能组件,各功能组件易于按需组合,实现所需的系统功能。按照标准化组件库进行系统设计的优点主要有:便于功能组件的复用。便于各组件的独立开发测试,增强了组件的可靠性和鲁棒性。便于根据少量的异构组件,生成多样化的子系统,提高系统的网络弹性能力。假设系统包含 N 个组件,每个组件有 M 个异构实现,则经过组合,可生成 MN38个系统的异构实现,对于提升系统网络弹性有着极大裨益。当前,云原生加微服务技术基座可为标准化组件库构建提供良好的技术
79、平台支撑,虚拟化运行环境也为异构系统构建提供了便利条件。2.3.4 最少状态或无状态原则网络弹性系统对“动态性”有着极高的要求,而子系统或者组件的内部状态是其动态运行的最大障碍,因此,在网络弹性系统架构设计时,应尽量减小动态运行的子系统或组件的内部状态,最好采用无状态的子系统或组件,以实现快速的动态切换。无状态组件并非指将其组件所需的内部状态完全消除,而是将状态存储模块从组件内部移动到组件外部。图 2-12 给出了无状态组件的实现方式示意图2-11。由于组件在动态运行的启动和结束时刻,无需考虑内部状态的同步问题,因此可极大的提高组件上线、下线的速度,提高系统动态运行的灵活性。图 2-12 无状
80、态组件实现方式示意2-11当前,数据中心资源解耦的趋势为实现无状态组件提供了极大的便利条件。通过 RDMA、CXL 等低延时互联技术,可实现组件状态的远程存储,在对组件39的性能造成较小影响的前提下,实现冗余组件的动态运行和快速接替,极大的提升系统的弹性能力。2.5 小结小结本章指出了系统架构是网络弹性的基石,并提出了网络弹性系统架构的关键能力和设计原则。从系统架构入手考虑网络弹性,可扭转当前网络弹性框架缺乏系统性、整体性的困局,为系统设计人员提供有价值、可操作的关键抓手。403 网络弹性评估框架网络弹性评估度量主要用于衡量和检验网络弹性工程的实施效果,是事关网络弹性健康发展的关键环节。近年来
81、,业界对网络弹性评估度量投入了大量研究,也取得了很多积极的进展。例如,以 MITRE 为代表的研究机构始终高度重视网络弹性评估和度量,提出了包含 500 余项度量指标的网络弹性评估分析框架,在高层次定性评估、半定量评估(例如,网络弹性覆盖图)和定量评估方面均取得了积极的进展3-1,3-2,3-3。但正如本白皮书 1.4 节所指出的,目前的网络弹性评估框架欠缺对系统核心能力的整体度量,这就导致现有网络弹性分析评估方法在验证系统是否具备良好的网络弹性、具有相似业务职能的不同系统弹性能力如何对比以及网络弹性核心能力如何检测等问题上仍面临关键挑战。之所以存在这些挑战,根本原因就在于目前的网络弹性评估度
82、量缺乏对网络弹性系统架构的评估。事实上,正如第二章所指出的,系统架构是网络弹性的基石,系统网络弹性能力的高低首先取决于系统是否具有优良的架构设计。因此,为应对上述挑战,更全面完整的评估分析一个系统的网络弹性,必须从评估系统架构入手。本章正是从评估系统架构入手,提出网络弹性系统架构评估的基本框架。该框架针对网络弹性保障关键业务持续可信运行的核心需求,从威胁数据分析、威胁事件感知、威胁积累防范、威胁目标隐藏、威胁损害限制、受损资源恢复和威胁环境重构等七个方面,对系统具有的威胁态势的“感知性”、威胁抵御的“鲁棒性”、威胁损害的“恢复性”和威胁变化的“适应性”等内容开展综合评估,作为系统网络弹性分析评
83、估的核心度量。相应评价指标形成对系统网络弹性体系41架构评估的“关键一票”否决制度。网络弹性系统架构评估聚焦系统网络弹性共性问题和网络弹性核心能力,可为后续进一步开展网络弹性行业化乃至个性化评估奠定坚实的基础。3.1 网络弹性系统架构评估网络弹性系统架构评估3.1.1 网络弹性系统架构评估框架网络弹性表现为能够准确预测威胁风险、主动抵抗威胁攻击、及时应对化解系统扰动、维持系统正常运行,并且在可接受时间内恢复其功能状态的能力。目前网络弹性工程框架缺乏统领整个网络弹性技术体系的主导架构,其弹性效果的分析评估也欠缺对系统架构网络弹性核心能力的度量。系统架构反映了系统所具备的网络弹性能力基线,架构的好
84、坏直接影响系统的网络弹性性能。本节提出网络弹性系统架构的评估框架和指标,作为系统网络弹性分析评估的核心能力度量。表 3-1 展示了网络弹性系统架构评估框架。该框架从威胁态势感知性、威胁抵御鲁棒性、威胁损害恢复性和威胁变化适应性等四个评价内容,对系统架构网络弹性关键核心能力进行评估。每个评价内容通过一个或多个评价要点对其进行评价,每个评价要点由若干评价项目构成。然而,针对网络弹性系统架构性质的评价指标是一种典型的定性指标,对指标的评估依赖于评估专家的专业知识和理解。因此,针对每个评价项目,可以定义一个或多个定量度量指标。评估和跟踪这些定量指标可以为每个评价项目描述的能力评价提供支持证据。这些评价
85、项目42进一步汇总为对每个评价要点的评估,并最终汇总为对系统架构提供网络弹性性质能力的评估。表3-1 网络弹性系统架构评估框架评 价 内 容评 价 内 容评 价 要 点评 价 要 点评 价 项 目评 价 项 目威胁态势感知性威胁数据分析威胁数据记录威胁回溯分析威胁事件感知异常输入感知异常性能感知未知威胁感知威胁抵御鲁棒性威胁积累防范资源可信度标识不可信资源卷回不可信资源替换资源非持续威胁目标隐藏资源可隐藏资源可伪装威胁损害恢复性威胁损害限制资源可隔离资源可迁移资源重配置受损资源恢复资源冗余性资源可替换43评 价 内 容评 价 内 容评 价 要 点评 价 要 点评 价 项 目评 价 项 目威胁变
86、化适应性威胁环境重构资源多样性资源可选择资源可升级3.1.2 网络弹性系统架构评价指标如上所述,为评估系统架构提供的网络弹性能力,从系统架构网络弹性评价框架出发定义一系列代表性定量度量指标,可用于支持对威胁态势感知性、威胁抵御鲁棒性、威胁损害恢复性和威胁变化适应性的评估。这些定量指标可以用来评估系统提供网络弹性相关性质的完整程度、速度或置信度。1)威胁态势感知性系统架构威胁态势感知性是指保持对威胁和攻击的知情准备状态,以防止任务或业务功能以及系统资源受到对手攻击的损害。威胁态势感知性可通过保持系统对已知或未知威胁的感知以及对威胁情报数据的记录和分析来实现。评价系统架构威胁态势感知性的关键指标主
87、要包括以下方面:威胁数据分析。对威胁数据的分析主要是对告警这一类安全情报进行分析、处理和可视化等方式实现,或者利用多种安全设备生成的安全情报数据,分析获取系统或网络环境中敌方活动的证据或迹象。对威胁数据分析指标的评价可从威胁数据记录和威胁回溯分析两方面进行评价。威胁事件感知。对可能对系统和网络环境造成危害的潜在威胁或漏洞进行监44视和识别,保持对已经观察到的或预期的威胁的感知。主要包括对异常输入的感知、对异常性能的感知以及对未知威胁的感知。可用于支持评估系统威胁态势感知性的代表性指标见表 3-2 所示。表3-2 威胁态势感知性代表性指标威胁态势感知性评价要点评价项目代表性指标威胁数据分析威胁数
88、据记录是否对任务关键资源建立和维护日志记录;监控的网络资源百分比;恶意活动的审计记录分析频率;威胁回溯分析通过威胁分析制定的入侵指标或可观察指标的数量;从启用恶意软件或取证分析到使用分析结果之间的时间;威胁事件感知异常输入感知系统使用的威胁情报源的数量;系统威胁情报源更新的频率;系统监测的威胁类型的数量;从输入发生异常到感知到异常所需的平均时间;异常性能感知判断性能异常考虑的指标的数量;从性能发生异常到感知到异常所需的平均时间;从感知到性能异常到异常上报所需的平均时间;未知威胁感知系统是否能够发现未知的威胁活动或异常情况;从检测到未知威胁事件到完成评估损害过程的平均时间;452)威胁抵御鲁棒性
89、系统威胁抵御鲁棒性是指系统能够抵御来自对手持续不断的攻击,保持系统基本任务或业务功能的持续运行。评价系统威胁抵御鲁棒性的关键指标主要包括以下方面:威胁积累防范。通过撤销或替换不可信资源,保持系统运行资源的可信性,维持系统运行环境的不确定性,防止攻击者从不断持续试错的攻击尝试中获取有益的经验或推测。威胁目标隐藏。通过隐藏系统资源或对资源进行伪装来缩小系统攻击表面,使对手将精力花费在已进行有效监控和防御的一小组资源上。缩小攻击面可导致对手浪费资源、对系统防御环境做出错误假设、过早地发起攻击或泄露对手信息。可用于支持评估系统威胁抵御鲁棒性的代表性指标见表 3-3 所示。表3-3 威胁抵御鲁棒性代表性
90、指标威胁抵御鲁棒性评价要点评价项目代表性指标威胁积累防范资源可信度标识对可信度进行标识的任务关键资源的百分比;不可信资源卷回可动态卷回的关键资源的百分比;从不可信资源卷回到可信资源上线的平均时间;不可信资源替换用受保护资源替换不可信资源所需的时间;资源替换后对资源不受类似问题影响的信心;资源非持续按需生成并在不需要时终止的资源百分比;资源的最大或平均使用期限资源到期后是否残留敏感数据;威胁目标隐藏资源可隐藏应用密码加密的资源的百分比;密码加密机制的强度;资源可伪装能够实施伪装的网络资源百分比;单位时间内资源更改伪装的频率;463)威胁损害恢复性系统架构威胁损害恢复性是指在对手成功攻击情况下,最
91、大程度地限制攻击对系统造成的损害,并且尽可能地恢复受损资源,保证系统业务的持续性。评价系统威胁损害恢复性的关键指标主要包括:威胁损害限制。通过限制威胁攻击的损害范围,使得网络防御者能够将精力集中在应对有限的受损网络资源上。同时,限制损害也为资源快速恢复提供了基础。威胁损害限制可通过将攻击中涉及的受损网络资源与其他网络资源隔离开,移动网络资源或者动态修改资源配置来实现。受损资源恢复。通过恢复在攻击中受损的任务关键资源,来实现关键任务的恢复。可通过部署冗余资源并用受保护的资源替换受损资源来实现。可用于支持评估威胁损害恢复性的代表性指标见表 3-4 所示。表3-4 威胁损害恢复性代表性指标威胁损害恢
92、复性评价要点评价项目代表性指标威胁损害限制资源可隔离从决定隔离资源到完成隔离之间的时间;从其他位置发现、访问或使用的动态隔离资源的百分比;资源可迁移能够动态迁移的网络资源的百分比;完成资源迁移过程所需时间;从决定迁移资源到迁移资源可用之间的时间;资源重配置能够动态重配置的资源百分比;完成资源重配置过程所需的时间;单位时间内修改资源配置的频率;受损资源恢复资源冗余性存在冗余并且能够动态切换到冗余的资源百分比;资源可替换资源完成切换到冗余过程所需的时间;单位时间内资源切换到冗余的频率;474)威胁变化适应性系统架构威胁变化适应性是指系统具备对动态变化威胁的适应能力。威胁变化包括威胁环境的变化和技术
93、环境的变化。其中威胁环境变化反应在威胁模型的变化,包括对手能力、意图、目标以及攻击手段的变化;技术环境变化包括新发现的技术固有漏洞或特定产品漏洞、技术部署或使用方式的变化、新技术的引进以及陈旧技术的淘汰。评价威胁变化适应性的关键指标主要包括以下方面:威胁环境重构。通过重构网络资源以应对威胁或技术环境的变化。这通过部署多样性的网络资源,并根据当前威胁环境选择适合的网络资源以支持系统关键任务的运行。另外,也可通过结合新技术或根据新发现的威胁漏洞、预期的威胁变化对网络资源升级来实现。可用于支持评估系统威胁变化适应性的代表性指标见表 3-5 所示。表3-5 威胁变化适应性代表性指标威胁变化适应性评价要
94、点评价项目代表性指标威胁环境重构资源多样性存在多个异构实现的网络资源的百分比;实现相同或相似能力所使用的不同技术架构或标准的数量;来自非重叠供应链的资源百分比;资源可选择能够动态选择运行实例的资源百分比;资源可升级完成资源升级所需的时间;从决定升级资源到升级资源可用之间的时间;48需要说明的是,以上定义的定量度量指标都是代表性的,在评估具体系统架构的网络弹性时,需要根据具体情况对指标进行重新解释。另外,也并非所有定量指标都能应用于任何系统架构。针对具体系统架构,有些指标可能被删除或替换。当然也可定义与具体系统架构相关的新的指标。3.1.3 网络弹性系统架构评分在评价网络弹性系统架构时,评价人员
95、根据目标系统架构以及网络弹性系统架构评价框架为每个评价项目选择若干个定量度量指标。定量度量指标的选择可以参考第 3.1.2 节所列的代表性指标,但一般会针对目标系统架构对度量指标进行重定义。对定量度量指标的评估可通过第 4 章所述的各种评估方法,如静态评估、对抗评估或破坏性评估。在完成对所设定定量度量指标的评估后,可通过计算系统架构网络弹性评分来反应系统架构整体网络弹性能力。系统架构网络弹性评分采用逐级加权评分计算方式。首先对系统架构网络弹性评价框架中的每个评价项目打分,范围为 0-5 分,见表 3-6 所示。对评价项目的打分依赖于对与该评价项目相关的定量度量指标的评估结果。系统架构网络弹性评
96、价框架中每个评价要点所包含全部评价项目的评分加权汇总为该评价要点的评分。全部评价要点的得分最终汇总为系统架构整体网络弹性得分。表 3-7 展示了系统架构网络弹性评价框架中各评价要点和评价项目的评分权重。49表3-6 评价项目评分规则分值描述5相应定量指标的评估值全部处于或高于目标水平。4相应定量指标的评估值全部处于目标水平的可接受范围内。3相应定量指标的评估值大多数处于目标水平的可接受范围内。2相应定量指标的评估值很少有处于目标水平的可接受范围内。1相应定量指标的评估值全部处于目标水平的可接受范围之外。0该评价项目对目标系统架构不适合用。表3-7 评价指标和评价项目权重评价内容评价要点评价项目
97、评价要点评分权重评价项目评分权重威胁态势感知性威胁数据分析威胁数据记录5025威胁回溯分析25威胁事件感知异常输入感知5015异常功能感知15未知威胁感知20威胁抵御鲁棒性威胁积累防范资源可信度标识5010不可信资源卷回15不可信资源替换15资源非持续10威胁目标隐藏资源可隐藏5025资源可伪装2550评价内容评价要点评价项目评价要点评分权重评价项目评分权重威胁损害恢复性威胁损害限制资源可隔离5020资源可迁移20资源重配置10受损资源恢复资源冗余性5025资源可替换25威胁变化适应性威胁环境重构资源多样性5020资源可选择20资源可升级10根据评价指标下每个评价项目的评分,通过公式(3-1)
98、加权计算各个评价要点的评分,评分范围为 0-50。Si=50jwijRij/(jWij5)(3-1)式中:i评价要点数;j评价要点i内的评价项目数;Si评价要点i的评分;Wij评价要点i内的评价项目j的权重;Rij评价要点i内的评价项目j的评分。系统架构网络弹性评价指标反映了系统所具备的网络弹性能力基线。若系统架构在某一评价要点中评分过低,则表明系统即使在其他方面应用再多弹性技术,也难以从根本上提升系统对基本业务的网络弹性保证水平。图 3-1 展示了系统架构网络弹性能力底线。51图 3-1 系统架构网络弹性能力基线在计算各评价要点的评分后,若某一要点评分低于该底线,则该系统架构也不具有网络弹性
99、,整体网络弹性评分应为零。若全部评价要点评分均高于该底线,则再基于各个评价要点的评分,按照公式(3-2)计算评分分值,得到系统架构网络弹性整体评分,评分范围为 0-100。S=100iWiSi/(iWi50)(3-2)式中:S系统架构网络弹性整体评分;I评价要点数Wi评价要点i的权重;Si评价要点i的评分。523.2 网络弹性其他方面的评估网络弹性系统架构评估是用来聚焦和解决系统的共性问题,反映了对系统核心能力的评估。在对比系统的弹性水平时,首先要看系统架构对共性问题的解决能力,如果体系架构不合格则一票否决,如果体系架构优良,再进一步评估系统的技术能力。网络弹性技术能力评价以网络弹性目标为牵引
100、。NIST 给出的网络弹性工程框架1-1明确了网络弹性在整个生命周期中要实现的八个目标,包括阻止或避免、扼制、持续、重建、重构、转变、准备和理解。通过实现这些网络弹性目标以满足系统对弹性安全的需求。对网络弹性目标实现程度的评估可推动系统网络弹性复杂性的全面评估。网络弹性目标实现程度是一种典型的定性指标,对指标的评估依赖于评估专家的专业知识和理解。可定义与网络弹性目标相关的定量指标(例如网络资源百分比、事件之间的时间等),作为评估网络弹性目标实现程度的重要依据。定量指标与网络弹性目标之间的关系可通过为每个目标定义相应的子目标和能力来阐明。其中网络弹性子目标是对目标某些方面的具体重述,侧重于为实现
101、目标而必须完成的一类任务。网络弹性能力则描述了系统实现网络弹性目标和子目标应执行的行动或提供的功能。从网络弹性能力出发能够较为容易地定义相关的性能指标,对这些指标的评估反映了系统提供相应能力的程度。这些评估可进一步汇总为对子目标实现程度的评估以及最终汇总为对网络弹性目标实现程度的评估。表 3-8 展示了系统网络弹性复杂性全面评估相关的目标、代表性子目标和代表性能力。有关网络弹性技术能力评价的详细指标可参考1-6。53表3-8 系统网络弹性复杂性全面评估相关的目标、子目标和能力目标代表性子目标代表性能力预防/避免应用基本防护手段限制对资源的访问限制网络实体/用户行为应用多重防御手段保护数据安全限
102、制资源暴露于威胁创建冗余并动态切换动态变换资源动态重配置资源动态迁移资源保持资源非持续分布式信息存储动态修改权限限制降低攻击感知收益隐藏资源提供误导信息伪装资源准备创建并维护网络行动方案制定并实施自动化 CCoA追踪 CCoA 的有效性维护执行网络行动方案所需的资源预置资源支持 CCoA备份功能恢复所需数据提供快照和状态恢复机制创建和维护网络资源异构冗余验证网络行动方案的可操作性模拟演习 CCoA持续维持功能攻击损害评估维持任务性能动态重配置现有资源动态重分配现有资源故障转移到备用资源部署多样性资源54确保运行功能正确验证数据来源验证数据完整性和质量验证服务完整性或行为遏制资源隔离隔离网络资源
103、资源迁移动态迁移关键资源动态迁移非关键资源改变资源切换到冗余资源重配置资源保持资源非持续恢复识别受损资源识别不可用资源识别受损信息识别受损服务识别受损组件恢复功能恢复系统性能重建受损资源验证功能验证恢复资源的数据来源验证恢复资源的完整性验证恢复资源的行为转换识别不必要依赖识别关键任务依赖调整任务过程基于任务功能重分配资源替换不可信资源重构修改系统识别并替换风险组件实施定制化分析监控重新实现关键组件创建不同版本的系统重构系统减少关键资产减少资源暴露时间增加系统灵活性增加系统防御能力55理解理解敌手使用共享威胁信息分析揭示敌手 TTPs观察分析欺骗环境下的威胁活动揭示敌手数据渗透行为理解资源间的依
104、赖维护任务对网络资源的依赖关系维护网络资源间的功能依赖关系维护对外部资源的功能依赖关系理解与威胁事件相关的资源状态跟踪网络资源的安全态势减小监控盲点开发定制化分析方法执行损害评估理解网络安全和网络弹性控制的有效性跟踪防御的有效性跟踪检测机制的有效性跟踪网络行动方案的有效性3.3 小结本章提出了系统架构层面的网络弹性评估框架与评价指标。系统架构网络弹性评估聚焦系统网络弹性共性问题和对网络弹性核心能力的评估,相应评价指标形成了对系统网络弹性体系架构评估的“关键一票”否决制度,是系统整体网络弹性评估的前提和基础。564 网络弹性评估方法4.1 概述网络弹性评估可以从组件、系统、业务、组织、地区、国家
105、等多个层面进行,本白皮书关注的重点是系统层面的网络弹性评估,特别是系统架构相关的网络弹性评估。之所以特别关注系统架构层面的网络弹性,是因为单纯的堆砌技术方法并不能实现期望的网络弹性目的。从某种意义上说,“结构决定性质,性质决定用途”这一化学基本原理在信息系统中仍然适用。可以采用多种方法对系统网络弹性能力进行评估。根据对实际系统和业务的影响程度从低到高的顺序,网络弹性评估方法依次可分为静态评估、对抗评估、破坏性评估三类。图 4-1 三类网络弹性评估方法的内容及优缺点57静态评估基本不会对系统和业务的运行产生干扰,其实施方式可以是定性分析,也可以是专家打分式的定量评估。对抗评估采用红蓝对抗的方式,
106、由攻击方对系统发起真实攻击,在此条件下对系统的网络弹性能力进行测试评价。对抗评估通常会对系统运行和业务性能造成负面影响。破坏性评估的原理是人为向系统中注入故障(Fault)或失陷(Compromise),通过观察系统在部分组件或安全机制失效条件下的运行情况,对系统的网络弹性能力进行评估。破坏性评估一般会对系统运行和业务性能产生直接影响,影响程度取决于系统实际的网络弹性能力。现有的破坏性评估方法主要是混沌工程(Chaos Engineering)方法,该方法向系统中注入随机故障或失效。本白皮书提出了一种新的“广义功能安全白盒测试”方法,该方法不仅能够向系统中注入随机故障或失效,更为重要的是能够向
107、系统中注入安全失陷,模拟系统部分组件被黑客攻陷的场景,在此条件下评估系统的弹性能力。图 4-1 对上述三类方法的主要内容及优、缺点进行了总结。从黑盒评估/白盒评估以及动态评估/静态评估这两个维度分析,上述三类评估方法在方法空间中所处的位置如图 4-2 所示。对抗评估和破坏性评估都属于动态评估,评估对象为在实验环境或者生产环境中实际运行的被评估系统。静态评估过程中需要获知系统的运行背景、威胁背景、架构特征、技术方法、设计原则等信息,上述信息通常以设计说明书、日志分析报告、测试报告等档形式提供,一般无需要求系统以白盒方式对评估者开放。考虑到静态评估过程中,需要对系统结构特点以及所采用的技术方法、设
108、计原则等有一定了解,并且在某些需求场景中,可能因涉及代码审计等环节,因此,静态评估可能会包含黑盒和白盒两种方式,如图 4-2 所示。对抗评估一般以黑盒方式进行,模拟攻击者对系统发起攻击的场景,验证系统在面临攻击时的弹性能力。破坏性评估过程中由于需要向系58统内部注入功能故障或者安全失陷,需要将系统部分组件向评估者开放,因此一般以白盒方式进行。图 4-2 各类网络弹性评估方法在方法空间中所处的位置根据霍尔系统工程论模型4-1,系统生命周期包括启动规划、设计开发、实验验证、部署运行、退役等阶段。不同的评估方法适用于系统生命周期的不同阶段4-1,如图 4-3 所示。在实际应用中,可以根据系统所处的生
109、命周期阶段、评估拟达成的目标、所拥有的资源、风险承受能力等因素进行综合衡量,选择一种或者几种评估方法。图 4-3 各类评估方法在系统生命周期不同阶段的应用594.2 静态评估通过静态评估的方法进行系统架构网络弹性评估应遵循自顶向下(Top-Down)的流程,采用定性分析和定量打分相结合的方式进行。首先进行高层的定性分析,确定系统的相关运行背景、明确弹性目标的优先级、分析系统基本的网络弹性能力;其次,在明确系统相关背景和目标优先级的基础上,对相关系统架构指标进行评分,为评价系统架构网络弹性能力基线(参见图 3-1)提供支撑。4.2.1 系统整体定性分析系统整体定性分析的目的是从整体视角对系统的网
110、络弹性能力进行粗线条的评估,勾勒系统网络弹性能力的基本轮廓(Profile),这一过程也称为网络弹性分析(Cyber Resiliency Analysis)4-2。系统架构层面的网络弹性分析主要包括系统背景分析、系统技术架构分析、系统威胁与风险分析、给出定性分析结论与建议四个步骤。在定性分析过程中,应当重点关注并试图回答的问题见表 4-1 所示。60表4-1 系统整体定性分析过程中应当重点关注并试图回答的问题序号序号问题问题关注问题的分析步骤关注问题的分析步骤1系统所承载的关键业务有哪些?系统背景分析2系统中存在哪些高价值资产?3威胁源头和敌手特点有哪些?4如何设定各网络弹性目标、子目标的权
111、重?5系统架构设计中应用了哪些网络弹性设计原则、技术方法?系统技术架构分析6系统架构能力是否能够较好的支撑网络弹性目标、子目标,特别是大权重的目标、子目标的实现?7关键业务子系统是否具备抵御“未知的未知”网络攻击的能力?8系统的攻击面是什么?系统威胁与风险分析9系统中存在哪些关键资源和脆弱环节?10系统对已知攻击战术、技术和程序(TTP)的防护完整度如何?1)系统背景分析系统背景分析的流程如图 4-4 所示,主要包括系统程序性背景分析、系统架构背景分析、系统运行背景分析和系统威胁背景分析四个步骤。程序性背景分析的目的是明确系统是如何获取、开发、调整、重构的;梳理系统的相关参与方,了解其风险管理
112、策略和关注的风险点,其中包括确定物理安全、信息安全、可靠性、系统弹性、网络弹性等各类目标的优先级。架构背景分析的目的是明确系统的类型,例如 CPS 系统、IoT 系统、企业 IT 设施等;确定系统的外部接口和对外依赖关系;明确系统所采用的关键组件与技术。运行背景分析的目的是明确系统的使用情况,包括系统的基本功能、用户情况、关键业务、是否包含高价值目标、有效性和性能评价指标等;确定系统的管理支持、升级维护情况;明确系统61和外部系统的信息交互情况及依赖关系;确定系统的使用情况、外部依赖情况的预期变化。系统威胁背景分析的目标是明确系统的威胁源头,所关注的威胁事件、威胁场景;分析敌手的攻击意图、攻击
113、时间、攻击专注度等。通过系统背景分析,可界定系统所承载的关键业务,识别系统中所存在的高价值资产,梳理威胁源头,理解敌手特点,对系统的网络弹性目标、子目标进行具体解释,设定各目标、子目标的权重。系统的相关背景分析是后续各分析步骤的前提和基础。图 4-4 系统相关背景分析的流程2)系统技术架构分析系统技术架构分析的流程如图 4-5 所示。首先,分析系统架构层面所应用的网络弹性设计原则,包括策略设计原则和结构设计原则。其次,分析系统架构层面所应用的网络弹性技术与方法。需要注意的是,网络弹性技术之间的潜在相互作用关系,例如,A 技术的生效可能依赖于 B 技术。因此,在分析过程中,应当结合系统的具体应用
114、环境和背景,对网络弹性各项技术方法进行具体解释,并根据技术方法的相互关系,对其在现实系统中的有效性进行评估,以获得相对客62观的分析结果。在分析梳理了系统所采用的各项设计原则、技术方法的基础之上,对关键业务子系统的安全能力(包括抵御已知威胁和未知威胁的能力)进行分析,评估系统是否具备在各类不利条件下保证关键业务持续、可信运行的能力。完成上述三项分析任务之后,根据设计原则、技术方法对网络弹性目标的支撑关系(参见献4-2附录 D.6),分析各网络弹性目标的达成程度,特别是权重较大的重点目标的达成程度。图 4-5 系统技术架构分析的流程通过系统技术架构分析,可以厘清系统已采用的网络弹性设计原则、技术
115、方法,分析网络弹性目标的达成程度,确定系统是否具备保障关键业务持续可信运行的网络弹性“底线能力”。3)系统威胁与风险分析系统威胁与风险分析的流程如图 4-6 所示。首先,从关键业务功能视角,分析系统中的关键资源,这里的“关键资源”指的是保障关键业务持续可信运行所必需的资源。关键资源分析可以通过各种应用于应急计划、弹性工程和使命确保工程的方法进行,包括关键性分析、任务影响分析、业务影响分析、皇冠珠宝分析(Crown Jewels Analysis,CJA)和网络任务影响分析4-2。系统攻击面分63析的目的是确定系统可能被攻击的方式和环节,攻击面分析必须对系统的各类相关背景有着较为深刻和完整的理解
116、。系统脆弱环节分析的目的是确定系统中潜在的脆弱点,例如,存在单点失效分析的系统组件。系统脆弱环节分析可以应用网络分析或者图分析方法进行4-2。TTP 防御覆盖度分析的目的是针对已知的各类攻击战术、技术和程序(Tactics Techniques and Procedures,TTPs4-3),分析系统防御能力的覆盖程度,评估系统抵御 APT 攻击的能力。图 4-6 系统威胁与风险分析流程通过系统威胁与风险分析,可以识别系统的攻击面,梳理系统的脆弱环节,发现潜在的风险点,评估系统对于 APT 攻击的防御能力。需要指出的是,TTP所代表的 APT 攻击均为已知攻击,或者说,属于“未知的已知”网络攻
117、击。系统对于“未知的未知”网络攻击的感知和防御能力,对于实现关键业务持续可信运行而言是不可或缺的。4)给出定性分析结论与建议通过上述三步分析,可以确定系统基本的网络弹性能力,了解系统存在的主要风险。我们采用五项基本能力的成熟度作为定性衡量系统网络弹性能力的重要64指标,这五项能力是 1)界定关键业务子系统并确定防御要地、2)关键业务子系统抵御“未知的未知”网络攻击的能力、3)系统架构设计对网络弹性目标/子目标的支撑效果、4)系统的攻击面隐藏与脆弱环节消除水平、5)系统对已知攻击的防护能力。各项基本能力根据其完善程度,映射为“很成熟”、“成熟”和“不成熟”三种水平,见表 4-2 所示。通过五项基
118、本能力的成熟度,可以对系统网络弹性能力的基本能力作出定性评价。表4-2 定性分析过程中重点关注的系统基本网络弹性能力及其成熟度定义能力成熟度能力成熟度1)界定关键业务子系统并确定防御要地1)界定关键业务子系统并确定防御要地2)关键业务子系统抵御“未知的未知”网络攻击的能力2)关键业务子系统抵御“未知的未知”网络攻击的能力3)系统架构设计对网络弹性目标/子目标的支撑效果3)系统架构设计对网络弹性目标/子目标的支撑效果4)系统的攻击面隐藏与脆弱环节消除水平4)系统的攻击面隐藏与脆弱环节消除水平5)系统对已知攻击的防御能力5)系统对已知攻击的防御能力很成熟能够清晰界定关键业务子系统及防御要地,关键业
119、务子系统及防御要地满足最小化条件。关键业务子系统完全具备抵御“未知的未知”网络攻击的能力。关注的网络弹性目标/子目标均得到良好支撑,大权重目标/子目标的被支撑度高于其他目标/子目标。系 统 的 攻 击 面小,不存在脆弱环节。对已知 TTP4-4的防护覆盖度很高,系统的攻击面得到完整的防护。成熟能够清晰界定关键业务子系统及防御要地。关键业务子系统的关键组件具备抵御“未知的未知”网络攻击的能力。系统关注的大权重网络弹性目标/子目标均得到良好支撑。系统的攻击面较小,存在一定的脆弱环节。对已知 TTP 的防护覆盖度较高,系统的攻击面得到较好的防护。不成熟无法清晰界定关键业务子系统及防御要地。关键业务子
120、系统不具备抵御“未知的未知”网络攻击的能力。系统关注的大权重网络弹性目标/子目标未得到良好支撑,难以实现。系统的攻击面较大,存在明显的脆弱环节。对已知 TTP 的防护覆盖度较低,系统的攻击面未得到良好防护。65需要强调的是,表 4-2 所列出的五项基本能力对于衡量系统网络弹性而言并非是同等重要的。例如,为达成网络弹性“使命确保”的最终目标,关键业务子系统必须具备抵御“未知的未知”网络攻击的能力,从而保障关键业务持续可信运行。若该项能力不成熟,即使其他四项能力很成熟,也很难给出系统的整体网络弹性能力很成熟的结论。通过系统整体定性分析,能够定位系统网络弹性中的薄弱环节,并给出针对性的建议。例如,缩
121、小系统攻击面,消除脆弱环节,增强架构设计以更好的支撑重要目标、子目标的实现,改造、更新关键业务子系统使其具备抵御“未知的未知”网络攻击的能力等。4.2.2 具体指标定量评分在完成了系统整体定性分析后,可采用专家打分的方法,对具体的网络弹性指标进行打分。专家打分的具体实施方法可参见献4-3,本白皮书不再赘述。针对系统架构指标的评分规则可参见 3.1.3 节。需要说明的是,并非所有的指标都可以采用静态评估的方法获得评分。例如,对于涉及“时间”、“速度”、“效率”等系统动态运行指标的评估,一般需要在系统运行过程中,采用对抗性评估或者破坏性评估的方法获得。有关各系统架构指标所适用的评估方法可参见 4.
122、5 节。664.3 对抗评估传统网络安全领域的红蓝对抗是指基于真实网络环境,开展实兵红蓝对抗演练,发现网络在技术、管理层面的安全缺陷并加以改进。评估过程中,一方扮演攻击者角色,以获取网络资产权限、业务数据、业务控制权为目的;另一方扮演防守者角色,发现并处置安全事件,分析攻击方成果,提出改进措施。在我国军事对抗演习中,己方为红军,敌方为蓝军。沿用这一习惯,国内通常将模拟黑客对网络展开攻击的一方称为蓝队,负责对网络进行防护的一方称为红队。但也有将攻击方称为红队,防守方为蓝队的情况。为避免歧义,本书明确采用“攻击方”和“防守方”来指代红蓝对抗双方。对抗评估方法示意如图 4-7 所示。评估过程中,系统
123、对于攻击方而言是黑盒。攻击方必须尝试各种潜在的攻击路径,寻找突破口。例如,攻击方可以借鉴开源的对抗性战术和技术知识库 ATT&CK4-4列出的各类战术、技术过程(TTP),对目标系统发起渗透攻击,试图损害甚至中断目标系统关键业务的运行。系统对于防守方而言是白盒,对抗过程中,防守方采取针对性行动,阻断攻击,消除影响,保障系统关键业务的持续可信运行。对抗评估过程中,评估者处于“上帝视角”,攻击方和防守方的行动细节以及系统和业务的运行情况对于评估者而言均可知。评估者通过观察攻防对抗过程中系统和业务的运行状况,对系统的网络弹性能力进行评估。67图 4-7 对抗评估过程示意对抗评估过程中,重点关注的问题
124、是系统面临已知(对于攻防双方均为已知)和未知(攻击方已知但防守方未知)的网络攻击时,其对各类威胁的感知、抵御、遏制、适应能力,以及在此过程中系统关键业务持续可信运行的能力。对于攻防双方均已知的网络攻击,主要评估系统对于各类攻击 TTP 的防御覆盖完整度,以及攻击发生时,关键业务功能和性能受影响程度。通过采用攻击方已知、但防守方未知的网络攻击,可在一定程度上评估系统对于未知攻击的感知、抵御、遏制、适应能力。需要指出的是,面对专业的防守方,实施采用攻击方已知、但防守方未知的网络攻击,本质上是要求攻击方掌握对防守方系统而言高危的 0-day漏洞,这在现实对抗中往往难以实现。对于评估系统在面临“未知的
125、未知”网络攻击时的弹性能力,广义功能安全白盒测试给出了一种易于实施、可复现验证的评估方法。有关广义功能安全白盒测试方法的说明可参见 4.4.2 节。对抗评估过68程中重点关注的系统基本网络弹性能力及其成熟度定义见表 4-3 所示。表4-3 对抗评估过程中重点关注的系统基本网络弹性能力及其成熟度定义能力成熟度能力成熟度1)系统面对已知攻击时的网络弹性能力1)系统面对已知攻击时的网络弹性能力2)系统面对攻击方已知、防守方未知攻击时的网络弹性能力2)系统面对攻击方已知、防守方未知攻击时的网络弹性能力很成熟对已知 TTP 的防护覆盖度达到 100%,关键业务运行不受影响。系统具备感知并抵御未知攻击的能
126、力,关键业务运行不受影响。成熟对已知 TTP 的防护覆盖度良好,关键业务运行受影响较小。系统缺乏对于未知攻击的感知能力,对未知攻击具有一定的遏制、恢复、适应能力,关键业务运行受影响较小。不成熟对已知 TTP 的防护覆盖度较低,系统存在明显的防护薄弱环节,关键业务运行受到明显影响。系统关键业务运行受到明显影响。4.4 破坏性评估破坏性评估通过在系统中人为引入故障、失效或者安全失陷,在此条件下评估系统的健壮性与安全性。当前在大规模分布式系统健壮性测试中得到应用的混沌工程(Chaos Engineering)方法即属于破坏性评估方法。混沌测试采用故障注入(Fault Injection)方法,通过向
127、系统中注入功能故障或者失效,以验证系统的鲁棒性。混沌测试难以验证存在安全失陷时的系统鲁棒性。本白皮书提出了一种新的破坏性测试方法,称为“广义功能安全白盒测试”。“广义功能安全”同时包含了功能安全(Safety)和网络安全(Security)。广义功能安全白盒测试不仅覆盖了当前混沌工程方法的测试能力,同时,还可以向系统中注入安69全失陷(Compromise Injection),模拟系统部分组件被攻陷的场景,在此条件下对系统的鲁棒性、安全性进行评估。从方法功能的角度而言,混沌工程方法是广义功能安全白盒测试的一个子集和一种特例,如图 4-8 所示。图 4-8 破坏性评估方法的关系4.4.1 混沌
128、工程评估方法混沌工程(Chaos Engineering),是一种提高技术架构弹性能力的复杂技术手段。混沌工程通过主动制造故障,测试系统在各种故障和负载压力下的行为,及时识别并修复故障问题,避免故障造成严重后果。混沌工程实施通常包含以下 4 个步骤:第一步,定义并测量系统的“稳定状态”。首先精确定义指标,表明系统按照应有的方式运行。例如,Netflix 在混沌工程实践中,使用客户点击视频流设备上播放按钮的速率作为指标,称为“每秒流量”。事实上,在混沌工程中,业务指标通常比技术指标更有用,因为它们更适合衡量用户体验或运营。混沌工程(故障注入)广义功能安全白盒测试(故障注入+失陷注入)70第二步,
129、创建假设。因为试图破坏系统正常运行时的稳定状态,所以假设应当包含系统在破坏手段实施后的预期行为。第三步,故障实施。常见的故障实施方法包括:模拟数据中心的故障、强制系统时钟不同步、在驱动程序代码中模拟 I/O 异常、模拟服务之间的延迟、随机引发函数抛异常等。在复杂系统中进行故障实施很容易引起出乎意料的连锁反应,这是混沌工程寻找的结果之一,因此在故障实施之前,首先考虑可能出现什么问题,并限定影响的边界(也称为“爆炸半径”),然后再进行模拟。第四步,证明或反驳假设。将稳态指标与干扰注入系统后收集的指标进行比较。如果发现测量结果存在差异,那么说明混沌工程实验已经成功,此时需要深入分析原因,并加固系统,
130、以便现实世界中的类似事件不会导致严重问题。如果发现系统可以保持稳定状态,那么说明系统弹性能力足够应对所实施的故障。应用混沌工程有如下基本原则4-5:建立一个围绕稳定状态行为的假说要关注系统的可测量输出,而不是系统的属性。对这些输出在短时间内的度量构成了系统稳定状态的一个代理。整个系统的吞吐量、错误率、延迟百分点等都可能是表示稳态行为的指标。通过在实验中的系统性行为模式上的关注,混沌工程验证了系统是否正常工作,而不是试图验证它是如何工作的。多样化真实世界的事件混沌变量反映了现实世界中的事件。我们可以通过潜在影响或估计频率排定这些事件的优先级。考虑与硬件故障类似的事件,如服务器宕机、软件故障(如错
131、误响应)和非故障事件(如流量激增或伸缩事件)。任何能够破坏稳态的事件都是混沌实验中的一个潜在变量。71在生产环境中运行实验系统的行为会依据环境和流量模式都会有所不同。由于资源使用率变化的随时可能发生,因此通过采集实际流量是捕获请求路径的唯一可靠方法。为了保证系统执行方式的真实性与当前部署系统的相关性,混沌工程强烈推荐直接采用生产环境流量进行实验。持续自动化运行实验手动运行实验是劳动密集型的,最终是不可持续的。所以我们要把实验自动化并持续运行,混沌工程要在系统中构建自动化的编排和分析。最小化爆炸半径在生产中进行试验可能会造成不必要的客户投诉。虽然对一些短期负面影响必须有一个补偿,但混沌工程师的责
132、任和义务是确保这些后续影响最小化且被考虑到。混沌工程是一个强大的实践,它已经在世界上一些规模最大的业务系统上改变了软件是如何设计和工程化的。相较于其他方法解决了速度和灵活性,混沌工程专门处理这些分布式系统中的系统不确定性。然而,现有的混沌工程方法实践主要引入随机失效,在此前提下观察网络鲁棒性和弹性能力。与之相比,广义功能安全白盒测试方法不仅可引入随机失效,也能够评估系统中部分组件被攻击者成功控制的条件下,系统的安全和弹性能力。有关广义功能安全白盒测试的说明详见下一小节。724.4.2 广义功能安全白盒测试广义功能安全的白盒测试方法是一种破坏性的评估方法,实施过程中,将系统中的部分子系统、组件开
133、放给攻击者,在此前提下,测试攻击者是否能够对整个系统实施有效攻击,是否能够对系统关键业务的持续可信运行造成严重影响。图 4-9 给出了广义功能安全白盒测试的示意图。攻击者拥有子系统 1 的管理员权限,可以对此子系统执行任何操作,也可以关闭此子系统(此时广义功能安全白盒测试退化为混沌测试,即测试子系统 1 失效时的系统弹性能力)。在拥有子系统 1 的管理员权限后,攻击者可以尝试对其他子系统进行攻击渗透,进而获得整个设备或者系统的控制权。具有良好弹性能力的系统架构应能够限制失陷的范围,并充分应用动态性、异构性的系统结构设计原则,使得攻击者难以获得长期的立足点,难以形成稳定的攻击效果。图 4-9 广
134、义功能安全白盒测试示意图广义功能安全白盒测试可评估系统在面对“未知的未知”网络攻击时的网络弹性能力。在白盒测试过程中,需要重点关注的问题包括:73 系统面对“未知的未知”网络攻击是否能够持续安全稳定的运行?系统关键业务的功能、性能是否受到负面影响?系统是否能够输出标准化日志,增强网络的威胁感知能力?系统能否针对当前的攻击模式,自动调整判决与控制策略,实现自适应演化?表 4-4 给出了系统广义功能安全能力成熟度能力描述。广义功能安全能力成熟度越高,表示网络感知并抵御未知威胁、自适应调整演化、支撑关键业务持续安全运行、保障网络弹性的能力越强。表4-4 系统广义功能安全能力成熟度成熟度能力很成熟1.
135、系统能够快速感知并阻断“未知的未知”网络攻击;2.系统能够输出标准化运行日志;3.系统能够进行自适应的调整演化;4.所设定的防御要地能够充分保证关键业务的持续可信运行;要地设备与系统均满足第 13 条要求。成 熟1.在某些情形下,阻断“未知的未知”网络攻击所需时间较长,在此期间可能会影响系统关键业务的持续性与安全性;2.系统能够输出标准化运行日志;3.所设定的防御要地能够充分保证关键业务的持续可信运行;要地设备与系统均满足第 12 条要求。不成熟1.系统难以感知并阻断“未知的未知”网络攻击,攻击会严重影响系统关键业务的持续性与安全性;2.没有清晰地划分网络防御要地,未能对关键业务子系统实施有效
136、的安全防护。74广义功能安全白盒测试方法首次将破坏性测试的思想引入到系统安全测试中,可同时支持系统功能安全和网络安全能力评估。通过将系统部分组件或节点的控制权完全交给攻击方,模拟系统的相关组件、节点、子系统被攻击后失陷的场景,在此条件下,对系统的网络弹性能力进行评估。本质上说,广义功能安全白盒测试将传统的混沌工程方法推广到了更为一般的情况,在测试过程中,不仅人为引入了功能故障或失效,也可人为引入安全失陷。广义功能安全白盒测试为网络弹性评估提供了一种可验证的安全测试方法,特别是对于关键业务子系统,有必要通过广义功能安全白盒测试,对其鲁棒性、安全性进行可复现、可验证的测试评估。4.5 各类评估方法
137、重点关注的架构指标第 3 章给出了评价系统架构网络弹性的系列指标。事实上,应用不同的测试方法时,重点关注的指标也有所不同。表 4-5 对静态评估、对抗性评估以及广义功能安全白盒测试中需重点关注的架构指标进行了总结。实际评估过程中,应当根据评估目标、系统所处阶段,选择合适的评估方法,并结合所选方法对应的重点指标,对目标系统特别是关键业务子系统的广义功能安全弹性能力进行评价。表 4-5 各类评估方法重点关注的系统架构指标评估方法指 标评估方法指 标静态评估静态评估对抗评估对抗评估广义功能安全白盒测试广义功能安全白盒测试是否对任务关键资源建立和维护日志记录监控的网络资源百分比恶意活动的审计记录分析频
138、率75评估方法指 标评估方法指 标静态评估静态评估对抗评估对抗评估广义功能安全白盒测试广义功能安全白盒测试通过威胁分析制定的入侵指标或可观察指标的数量从启用恶意软件或取证分析到使用分析结果之间的时间系统使用的威胁情报源的数量系统威胁情报源更新的频率系统监测的威胁类型的数量从输入发生异常到感知到异常所需的平均时间判断性能异常考虑的指标的数量从性能发生异常到感知到异常所需的平均时间从感知到性能异常到异常上报所需的平均时间系统是否能够发现未知的威胁活动或异常情况从检测到未知威胁事件到完成评估损害过程的平均时间对可信度进行标识的任务关键资源的百分比可动态卷回的关键资源的百分比从不可信资源卷回到可信资源
139、上线的平均时间用受保护资源替换不可信资源所需的时间资源替换后对资源不受类似问题影响的信心按需生成并在不需要时终止的资源百分比资源的最大或平均使用期限资源到期后是否残留敏感数据应用密码加密的资源的百分比密码加密机制的强度能够实施伪装的网络资源百分比单位时间内资源更改伪装的频率从决定隔离资源到完成隔离之间的时间从其他位置发现、访问或使用的动态隔离资源的百分比能够动态迁移的网络资源的百分比完成资源迁移过程所需时间76评估方法指 标评估方法指 标静态评估静态评估对抗评估对抗评估广义功能安全白盒测试广义功能安全白盒测试从决定迁移资源到迁移资源可用之间的时间能够动态重配置的资源百分比完成资源重配置过程所需
140、的时间单位时间内修改资源配置的频率存在冗余并且能够动态切换到冗余的资源百分比资源完成切换到冗余过程所需的时间单位时间内资源切换到冗余的频率存在多个异构实现的网络资源的百分比实现相同或相似能力所使用的不同技术架构或标准的数量来自非重叠供应链的资源百分比能够动态选择运行实例的资源百分比完成资源升级所需的时间从决定升级资源到升级资源可用之间的时间4.6 小结本章重点面向系统架构层面的网络弹性评估问题,说明了各类评估方法及其适用场景。系统架构网络弹性评价框架聚焦系统网络弹性共性问题和对网络弹性核心能力的评估,相应评价指标形成了对系统网络弹性体系架构评估的“关键一票”否决制度。系统架构层面的网络弹性评估
141、方法包括静态评估、对抗评估和破坏性评估。广义功能安全白盒测试作为一种破坏性评估方法,可对系统的广义功能安全(包括鲁棒性和安全性)能力进行可验证的度量评估,提供了现有评估方法所不具备的能力。775 总结自 2010 年 MITRE 提出最初概念至今,网络弹性已走过了十余年的发展历程。无论是 2021 年 12 月正式发布的第一份网络弹性权威技术件开发网络弹性系统一种系统安全工程方法(NIST SP 800-160V2R1),还是 2022年 9 月欧盟发布的全球第一个网络弹性法案,都标志着网络弹性正从萌芽生长走向发展成熟、从目标愿景走向应用实践。网络弹性超越了传统网络安全侧重防御的思维视角,认为
142、系统被攻击失陷是不可避免的,并转而重点关注关键业务的持续性和可用性。然而,正如本白皮书前言中指出的,现有的网络弹性工程框架由于一味堆砌各类技术方法而缺乏架构设计,在现实应用中并不具备可操作性和有效性。类似的,现有的网络弹性评价方法主要从技术方法出发评价系统的弹性能力,缺乏对系统架构核心能力的关注,评价方法同样缺乏可操作性和可信性。本白皮书的核心观点是:网络弹性工程应遵循“结构决定性质、整体大于部分之和”的基本原理,首先关注系统架构设计;同样,在网络弹性评估中,应重点评估系统架构能力,将系统架构弹性能力作为衡量系统网络弹性能力的“关键一票”本白皮书的核心观点是:网络弹性工程应遵循“结构决定性质、
143、整体大于部分之和”的基本原理,首先关注系统架构设计;同样,在网络弹性评估中,应重点评估系统架构能力,将系统架构弹性能力作为衡量系统网络弹性能力的“关键一票”。本白皮书指出系统架构是网络弹性的基石,并提出了网络弹性系统架构的关键能力和设计原则。从系统架构入手考虑网络弹性,可扭转当前网络弹性框架缺乏系统性、整体性的困局,为系统设计人员提供有价值、可操作的关键抓手。其次,本白皮书给出了基于系统架构的网络弹性评估框架,突出了系统架构在网络弹性评估中的核心作用。最后,本白皮书讨论了网络弹性评估方法,着重说明78了广义功能安全白盒测试对于网络弹性评估的重要价值。基于系统架构的网络弹性可有效弥补现有网络弹性
144、工程框架与评估方法的重大缺陷,保障关键业务持续可信运行,为网络弹性“使命确保”目标达成提供关键支撑。本白皮书是参加中国信息安全标准化技术委员会 网络弹性评价准则编制申报工作的研究成果。79参考文献1-1R.Ross,V.Pillitteri,R.Graubart,et.al.Developing Cyber-Resilient Systems:ASystems Security Engineering Approach.NIST Special Publication 800-160,Vol.2,Rev.1.2021.https:/doi.org/10.6028/NIST.SP.800-160
145、v2r1.1-2H.Goldman.Building Secure,Resilient Architectures for Cyber Mission Assurance.2010.https:/www.mitre.org/sites/default/files/pdf/10_3301.pdf1-3D.J.Bodeau,R.D.Graubart,Cyber Resiliency Engineering Framework,Version 1.0.2011https:/www.mitre.org/sites/default/files/pdf/11_4436.pdf1-4D.J.Bodeau,R
146、.D.Graubart.Cyber Resiliency Design Principles.2017.https:/www.mitre.org/sites/default/files/2021-11/pr-17-0103-Cyber-Resiliency-Design-Principles.pdf1-5D.J.Bodeau,R.D.Graubart,R.M.McQuaid.Cyber Resiliency Metrics,Measures ofEffectiveness,and Scoring.2018https:/www.mitre.org/sites/default/files/2021
147、-11/prs-18-2579-cyber-resiliency-metrics-measures-of-effectiveness-and-scoring.pdf1-6D.J.Bodeau,R.D.Graubart,R.M.McQuaid et al.Cyber Resiliency Metrics Catalog.2018.https:/www.mitre.org/sites/default/files/2021-11/pr-18-3376-cyber-resiliency-metrics-catalog.pdf1-7D.J.Bodeau,R.D.Graubart,R.M.McQuaid
148、et al.Cyber Resiliency Metrics andScoring in Practice.2018.https:/www.mitre.org/sites/default/files/2021-11/prs-18-3375-cyber-resiliency-metrics-and-scoring-in-practice-use-case-methodologies-and-examples.pdf1-8PPD-21-Critical Infrastructure Security and Resilience,2013https:/obamawhitehouse.archive
149、s.gov/the-press-office/2013/02/12/presidential-policy-directive-critical-infrastructure-security-and-resilience1-9NIPP 2013:Partnering for Critical Infrastructure Security and Resilience.2013.https:/www.dhs.gov/sites/default/files/publications/National-Infrastructure-Protection-Plan-2013-508.pdf.1-1
150、0AGuide to Critical Infrastructure Security and Resilience,20191-11DoD Digital Modernizaton Strategy.2019.https:/media.defense.gov/2019/Jul/12/2002156622/-1/-1/1/DOD-DIGITAL-MODERNIZATION-STRATEGY-2019.PDF#:text=The%20DoD%20Digital%20Modernization%20Strategy%2C%20which%20also%20serves,the%20supporti
151、ng%20National%20Defense%20Business%20Operations%20Plan%20%28NDBOP%29.801-12Proposal for a DIRECTIVE OF THE EUROPEAN PARLIAMENT AND OF THECOUNCIL on the resilience of critical entities,20201-13The EUs Cybersecurity Strategy for the Digital Decade.2020.https:/digital-strategy.ec.europa.eu/en/library/e
152、us-cybersecurity-strategy-digital-decade-0.1-14CISASTRATEGIC PLAN2023-2025,20221-15Biden-Harris Administrations National Security Strategy.pdf(nssarchive.us),20221-16National defense strategy,20221-17National Cyber Strategy 2022 Pioneering a cyber future with the whole of the UK1-18Cyber Resilience
153、Strategy for Defense.2022.https:/assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/1073315/20220425-Cyber_Resilience_Strategy_for_Defence.pdf.1-19NATIONAL CYBERSECURITY STRATEGY(2022 2026),2022https:/digital-strategy.ec.europa.eu/en/library/cyber-resilience-act#
154、:text=Cyber%20Resilience%20Act%20The%20proposal%20for%20a%20regulation,to%20ensure%20more%20secure%20hardware%20and%20software%20products.1-20European Cyber Resilience Act.2022.https:/www.european-cyber-resilience-1-21Science of Security Lablet Progress on the Hard Problems(August 2015)This document
155、highlights major contributions that that SoS Lablets have made towards each of the fiveHard Problems.View and download from http:/cps-vo.org/node/21590.1-22Science of Security and Privacy 2022Annual Report1-23https:/cps-vo.org/group/sos/annualreport20221-24https:/ L.Hennessy and David A.Patterson.20
156、19.A new golden age for computerarchitecture.Commun.ACM62,2(February2019),4860.https:/doi.org/10.1145/32823072-2Mark Gallagher,Lauren Biernacki,et al.“Morpheus:a vulnerability-tolerant securearchitecture based on ensembles of moving target defenses with churn”.In:ProceedingsoftheTwenty-FourthInterna
157、tionalConferenceonArchitecturalSupportforProgramming Languages and Operating Systems.2019,pp.469484.2-3Robert NM Watson,Peter G Neumann,et al.Capability hardware enhanced riscinstructions:Cheri instruction-set architecture(version 8).Tech.rep.University ofCambridge,Computer Laboratory,2020.2-4Scala
158、NM,Reilly AC,Goethals PL,Cukier M.Risk and the Five Hard Problems ofCybersecurity.Risk Anal.2019 Oct;39(10):2119-2126.doi:10.1111/risa.13309.Epub2019 Mar 29.PMID:30925207.2-5Deborah J.Bodeau,Richard D.Graubart,Rosalie M.McQuaid,John Woodill.CyberResiliency Metrics,Measures of Effectiveness,and Scori
159、ng.MITRE TECHNICALREPORT.2018.2-6Jajodia S,Ghosh A K,Swarup V,Wang C,and Wang X S,Moving Target Defense:Creating Asymmetric Uncertainty for Cyber ThreatsM,Advances in InformationSecurity.New York:Springer,2011.2-7Xabier Iturbe,Balaji Venu,Emre Ozer,Jean-Luc Poupat,Gregoire Gimenez,andHans-Ulrich Zur
160、ek.2019.The Arm Triple Core Lock-Step(TCLS)Processor.ACM81Trans.Comput.Syst.36,3,Article7(August2018),30pages.https:/doi.org/10.1145/33239172-8Lyons R E,Vanderkulk W.The use of triple-modular redundancy to improve computerreliabilityJ.IBM journal of research and development,1962,6(2):200-209.2-9Shi
161、C,Wang X,Wang S,et al.Adaptive decoupling synchronous control of dissimilarredundant actuation system for large civil aircraftJ.Aerospace Science and Technology,2015,47:114-124.2-10邬江兴.论网络空间内生安全问题及对策J.中国科学:信息科学,2022.10.2-11Murad Kablan,Azzam Alsudais,Eric Keller,and Franck Le.2017.Stateless networkf
162、unctions:breaking the tight coupling of state and processing.In Proceedings of the 14thUSENIX Conference on Networked Systems Design and Implementation(NSDI17).USENIXAssociation,USA,97112.3-1D.J.Bodeau,R.D.Graubart,R.M.McQuaid,et.al.Cyber Resiliency Metrics,Measures of Effectiveness,and Scoring.MITR
163、E Technical Report.2018.3-2D.J.Bodeau,R.D.Graubart,CyberResiliencyAssessment:EnablingArchitecturalImprovement,The MITRE Corporation,20133-3Bodeau D J,Graubart R D,McQuaid R M,et al.Cyber Resiliency Metrics Catalog.TheMITRE Corporation,2018.4-1Arthur D.Hall.A Methodology for Systems Engineering.van N
164、ostrand;1966.4-2Ross R,Pillitteri V,Graubart R,et al.Developing Cyber-Resilient Systems:A SystemsSecurity Engineering Approach.NIST Special Publication 800-160,Volume 2,Revision1.2021.12.4-3Cybersecurity and Infrastructure Security Agency,U.S.Department of HomelandSecurity.Cyber Resilience Review(CRR):Method Description and Self-AssessmentUser Guide.2020.04.4-4MITRE.ATT&CK.http:/attack.mitre.org/4-5PRINCIPLES OF CHAOS ENGINEERING.https:/