伴随着“云大物移”等新兴 IT 技术的快速发展,企业数字化转型使得 IT 业务的网络环境更加复杂多样,企业数字资源的安全防护正面临着前所未有的压力与威胁。零信任安全架构放弃了传统基于“边界”的安全模型,以访问上下文的安全态势感知为基础,建立了以身份为中心的安全访问框架,按照企业的统一安全策略,对数据、应用和服务等数字资源实施动态、风险自适应的访问控制。
态势感知(Situation Awareness,SA)是指“在一定的时间和空间范围内,对目标环境中各组成成分的感知、理解,以及对它们未来变化的预测”,该领域最初的研究成果来自美军指挥控制系统的相关项目,Endsley 将态势感知描述为一个包含 3 层模型的信息处理链,依次包括对环境成分的感知、对当前态势的理解和对未来态势的预测 3 个部分。
Bass于 1999 年 将 态 势 感 知 引 入 网 络 安全研究中,提出了网络态势感知(Cyberspace Situational Awareness,CSA)的概念,并按照应用领域将网络态势分为安全态势、拓扑态势和传输态势等。Shen 等人针对云环境网络安全态势预测在准确率和实时性方面的局限性,提出了基于灰色神经网络的云环境网络安全的态势分析方法,并通过分类和融合技术构建了相应的态势感知指标 。
从应用方式和目的来看,网络安全态势感知通过收集、提炼、融合各种安全信息,对网络的安全态势进行评估,为安全分析员提供面向风险管理的决策依据。但具体到安全评估的实施方法,由于网络系统的复杂性,网络安全度量仍是当前国内外学术界公认的学术难题,包括网络安全度量模型和方法、安全数据的自动化采集、感知度量、量化评估等问题,仍未得到很好的解决。
在零信任安全方面,目前零信任研究在体系架构标准化、解决方案实施落地等方面的发展相对较快。美国国家标准与技术研究院(National Institute of Standards and Technology,NIST)、美国国防部和云安全联盟均从各自的视角给出了相应的零信任架构参考模型 。文献 [9] 通过D-S 证据理论将访问主体的各种“不确定”转化为“确定”的安全状态,形成可供零信任安全评估引擎使用的信任数据。
为了向零信任解决方案提供可靠、合理的安全态势评估方法,本文首先对网络态势感知、持续监控和信任评估等概念进行了分析梳理,研究确定了零信任访问安全态势评估的内涵,然后研究提出了一个零信任安全访问架构,并结合该架构讨论了零信任访问安全态势评估的关键技术和功能,最后通过可扩展的安全指标体系、科学的量化评估算法,为用户访问提供上下文安全评估,强化零信任的“持续评估”能力,实现零信任的动态细粒度访问控制,为零信任安全领域相关研究人员提供参考。
本节对风险评估、持续监控等领域的技术理论发展进行分析,探讨它们之间的异同,进而分析零信任态势评估的内涵、目标和意义。
信 息 安 全 持 续 监 控(Information Security Continuous Monitoring,ISCM)是 NIST 根据 2002年《联邦信息安全管理法案》提出的概念,旨在对企业网络的信息安全进行持续监控和评估,为安全管理决策提供信息支持。NIST 报告 SP 800-37、SP 800-53和 SP 800-137 对 ISCM 从不同层面进行概括和定义。其中,SP 800-137提出了建立、实施和维护持续监控项目的步骤,包括定义策略、建立项目、实施项目、分析 / 报告、响应处理、审查 / 更新 6 个环节,如图 1 所示。
图 1 ISCM 项目的实施过程及步骤
ISCM 从风险管理的范畴,对联邦系统的运行进行全过程状态监测,为企业网络安全管理提供了态势感知和决策支撑,包括网络资产管理、安全监控反馈分析和缓解措施优化等功能。
2017 年 6 月,Gartner 提 出 了 持 续 自 适 应风 险 与 信 任 评 估(Continuous Adaptive Risk and Trust Assessment,CARTA)的安全概念,通过集成威胁情报、行为特征分析、大数据、人工智能、态势评估等技术,构建了一个自适应安全防护框架,提供覆盖业务访问流程的安全评估与控制能力,来应对企业 IT 网络中日益增长的数字资产安全风险,如图 2 所示。
图 2 持续自适应风险与信任评估
CARTA 安全防护框架的核心概念包括风险、信任、自适应、持续。其中,风险是指对网络安全风险(如攻击、漏洞、违规、异常等)的判断识别;信任是指以可信身份评估为基础的访问控制;自适应是指安全控制对风险变化的动态适应能力;持续是指风险和信任评估过程在时间上的连续性、周期性。
CARTA 的风险和信任评估是一个动态权衡的过程,能利用各种安全数据,对访问行为、应 用 程 序 编 程 接 口(Application Programming Interface,API)调用、网络活动等进行持续评估,动态做出安全决策,包括允许 / 阻断访问,或是介于允许和阻断之间的某种动作(如继续评估、允许但只读、允许并记录等)。国际电信 联 盟 电 信 标 准 分 局(ITU Telecommunication Standardization Sector,ITU-T)在文献 [14] 中定义了一个针对服务访问过程的持续保护框架,也采用了类似的非二值型决策结果形式。
在 NIST 的零信任架构中,策略决策点(Policy Decision Point,PDP) 和 策 略 执 行 点(Policy Enforcement Point,PEP)等策略组件共同协作,能够根据访问时间、环境属性等上下文属性,对用户访问实施动态的权限控制,如图 3 所示。
图 3 NIST 的零信任架构参考模型
在零信任安全理念下,企业所有 IT 资产的安全状态均被纳入监测范围,以便对各种资源提供动态自适应的安全保护。为了确保零信任体系中动态安全策略的正确实施,企业需要尽可能地收集 IT 资产(如终端设备、安全部件、网络服务)的实时状态,以便评估网络的安全态势。
ISCM、CARTA 和 NIST 零信任架构均认为风险与信任是持续变化的,企业安全防护需要对网络中的安全风险进行持续监控,并能够通过调整用户的访问行为,动态适应当前的安全上下文环境,以最大限度地保护企业资产。另外,CARTA 还体现了基于风险的策略决策的特点,决策结论不再是简单的“允许 / 拒绝”,还应该存在介于两者之间的中间性结论,以适应不同的安全风险。
由此可见,零信任体系架构要实现对应用、服务、数据的持续保护,需要围绕用户访问过程,持续监控和访问相关的所有实体,分析影响访问安全的态势变化,以便对用户的访问行为、系统的安全防护措施做出及时有效的控制和部署。因此,零信任安全态势评估需要具备如下能力和特性。
(1)持续有效的态势监控。确保在零信任原则下,对所有访问关联实体上的安全数据进行周期性数据采集、分析,以获取实时的安全态势数据。
(2)合理多样的安全指标。紧贴零信任安全态势分析的应用需求,从复杂多样的多源安全数据中梳理、筛选有效的安全指标,为态势分析建立科学合理的安全指标体系和量化评估算法。
(3)适时准确的结果报告。应及时、准确地向策略决策中心提交态势评估结果,并且应符合决策中心的数据处理要求,以简化其使用。
本节基于 NIST 提出的零信任安全访问原则,提出了一个基于零信任态势评估的安全访问架构,持续收集、分析与访问请求相关的上下文状态信息,验证访问请求的合理性,保护访问会话的全流程安全,如图 4 所示。
图 4 基于零信任态势评估的安全访问架构
安全保护策略由企业组织根据业务需要,按照资产的敏感等级和可容忍风险来制定,包括描述客体资源的保护等级、访问主体的权限划分,以及影响策略决策的外部条件(如用户认证方式、主体访问位置)等。
PDP 是整个安全访问架构的控制中心,按照安全策略(如基于属性的访问控制规则)控制用户访问,为企业资源提供持续的安全保护。决策指令包括访问授权决策和安全保护决策两种类型,其主要差别在于:
(1)访问授权决策是 PEP 向 PDP 提交用户访问请求后,由 PDP 实时产生的授权决策。为确保用户访问请求能够被快速处理,一般要求实时生成决策指令,如允许 / 拒绝等访问控制指令。
(2)安全保护决策可以在访问会话过程中异步或适时产生,PEP 不必同步等待保护决策实时到达,只需要确保当收到保护决策时,该指令能够及时执行。典型的保护决策为当用户信任评分过低时,要求关闭用户连接,对终端进行补丁修复等。
PEP 负责执行策略中心下发的决策指令,保护所有访问流量的机密性和真实性。需要注意的是,图 4 中仅给出了访问控制策略执行点的示例。
零信任态势评估为策略决策中心提供量化的安全态势信息,如信任或风险评分,供 PDP在计算授权决策时使用。
本节基于零信任架构中态势评估、上下文安全和动态访问控制的要求,研究零信任态势评估关键技术的设计与实现,包括安全数据收集与分析、态势评估引擎的功能设计、安全指标体系的构建方法和指标量化与融合算法的实现。
安全数据收集与分析(Security Data Collection and Analyze,SDCA)是态势评估的数据输入组件,其功能主要包括持续收集安全数据、识别网络安全状态、检测安全威胁。
安全数据收集的来源包括但不限于用户身份管理、系统活动日志、终端检测与响应(Endpoint Detection and Response,EDR)、漏洞 / 补丁管理、入侵检测(Intrude Detection System,IDS)、用户行为分析等系统。另外,还包括访问相关的元数据,如用户位置、访问时间等环境因素。
来自不同系统的安全数据通常具有不同的报送形式、数据格式和周期频度,SDCA 需要从海量、多源的安全数据中梳理筛选出简单、有效、合理的态势信息,以便缓解态势评估引擎的功能和性能压力。
态势评估引擎(Posture Assessment Engine,PAE)持续接收 SDCA 的分析检测结果,对来自多源数据的安全态势信息进行规范量化和指标融合,将用户访问过程中相关实体(包括用户、终端、网络、环境等)的安全态势,转化为访问主体的“信任等级 / 访问风险”(如高、中、低),以供 PDP 使用。
PAE 的态势评估算法需要体现以主体身份为中心的信任评估,在主体经过首次身份认证后,开始对其访问上下文(如终端安全配置、系统漏洞、行为特征等)进行持续评估,以便在 PDP 需要时能够提供实时信息。
在零信任安全访问中,主体的信任等级越高意味着访问风险越低,因此信任等级和访问风险之间存在着某种内在关系,态势评估结果的物理意义取决于评估引擎所采用的指标体系和量化算法,本文采用“访问风险”来表述态势评估结果的含义。
SDCA 收集的安全数据可以按其关联实体划分为 5 类,即分别与用户、设备、应用、服务和流量相关的安全内容。
为了简化零信任安全态势分析的流程,本文基于层次分析法(Analytic Hierarchy Process,AHP)从用户行为安全、终端(应用)安全、网络环境安全 3 个维度,对不同实体的安全状态进行了指标分解,形成了一个可扩展的零信任安全态势评估指标体系,如表 1 所示。
表 1 零信任安全态势评估指标体系
零信任安全态势由 3 个一级指标组成,包括用户行为风险、终端系统风险和网络环境风险,其中,用户行为风险又按照典型的违规行为分解为多人围观、违规访问等 5 个二级指标。
终端系统风险主要评估用户访问终端的安全因素,如软件漏洞、补丁安装和安全配置项等。以漏洞风险评估为例,企业按照安全策略制定漏洞检查清单,对每个终端进行漏洞检查,清单中的每个待检漏洞均具有相应的风险评分(如严重性)。漏洞扫描器对目标终端扫描完成后,将扫描结果提交至态势评估引擎,由其内置的量化评估算法对终端安全风险进行指标融合。
网络环境风险主要分析处理网络安全告警中的态势信息。例如,对 IDS、EDR 等系统的告警事件与用户或终端进行关联,形成相应的风险评分。因为不同的外部系统可能存在特有的评分机制,因此需要针对具体系统考虑其评分转换问题。
三级指标为最底层指标,通过不同类型的风险评分(值)来表示。
3.4 指标量化与融合算法
本节针对表 1 提出的层次化评估指标体系,通过基于评分的指标量化评估方法和多维指标融合算法,分别解决安全指标的量化问题和多维多层指标的融合问题。
本文提出的安全指标包括用户行为风险、终端安全风险和网络环境风险 3 种类型。其中,终端安全风险主要来自软件缺陷、软件安全配置和软件功能滥用3 类软件脆弱性问题。目前,这 3 类问题均存在标准的脆弱性测量和评分方法。
通 用 漏 洞 评 分 系 统(Common Vulnerability Scoring System,CVSS)提供软件漏洞严重性的通用评估方法,主要应用于漏洞管理和评估 领 域。通 用 误 用 评 分 系 统(Common Misuse Scoring System,CMSS) 针对软件漏洞和误用问题的差别,对 CVSS 评估组件和算法进行调整,以适应软件功能滥用缺陷的特征。通用配置评分 系 统(Common Configuration Scoring System,CCSS)主要解决软件安全配置的脆弱性评估问题。上述 3 种算法均采用了相同的理论基础和评价维度,来评估软件缺陷的严重性,其量化结果具有一致的值域和等级划分,如表 2 所示。
表 2 CVSS/CMSS/CCSS 的脆弱性等级划分
在此基础上,本文综合考虑用户行为风险和网络环境风险中各指标因素对机密性、完整性和可用性的影响,将相应的风险度量计算映射到 CVSS、CMSS 和 CCSS 算法中,以便使整个安全指标体系的量化度量具有统一的评估视角和维度,如表 3 所示。
表 3 安全指标的量化评估算法
指标量化评估算法主要解决单项指标的风险评分问题,例如,如果用户终端上存在多人围观行为,按 CCSS 评分算法,可以给出该“围观风险评分”为 4.6 分,或者终端存在 CVE-2022-30138 漏洞,其严重性评分为 7.8 分。
对多指标的综合计算通常需要采用适当的融合算法。有时评估系统建立的指标可能来自不同的观测维度(比如系统漏洞和用户行为),在针对这些不具备可比性的指标进行融合时,需要考虑融合算法的科学合理性。
本文所使用的量化评估方法中,底层指标的量化评分均来自或参考了 CVSS 算法,此类算法采用了相同的视角,并且在最终结果和风险等级的定义上形成了统一,为设计科学合理的指标融合算法奠定了基础。
下面以终端安全风险的指标融合为例,来说明本文态势评估引擎中综合指标的计算方法。
式中:为终端上漏洞的整体风险指标;i 为漏洞检查清单中的检查项目;v(i) 为漏洞 i 的检查结果(即存在或不存在)。检查清单上的每个漏洞均存在对应的 CVSS 评分(代表漏洞严重性),因此从计算方式可知,本质是终端上存在漏洞(以清单为检查依据)的平均严重性,因此可以用来表征终端与漏洞相关的安全风险程度。
类似地,为终端因补丁未按要求安装,而导致的安全风险程度,为终端因软件未按要求进行安全配置,而导致的安全风险程度。为用户终端的总体安全风险值,由
, 和 3 项指标融合而来,,分别为这 3 类指标的加权融合权重。
该融合算法的特点是计算简单且易于实现,清单式的检查方式使安全评估的指标体系更易于扩展。在融合算法的合理性方面,很多方法都将违规次数或系统漏洞个数作为衡量安全风险程度的指标,例如错误地认为 N 次违规的安全风险比单次违规要严重 N 倍。本算法通过适当使用二值型指标替代不合理的计数型指标,并最终通过存在漏洞(即终端上存在的漏洞)的评分占总清单风险总分的比重,将该漏洞对整体评价结果的贡献反映到总清单的检查结果上,具有一定的合理性。
不同企业在实施零信任访问中对终端安全进行评估时,可以通过调节
的权重值,来适应其在漏洞、补丁管理和合规性配置要求方面的差异。
对更高层次的指标融合也可以采用类似方法,通过对用户行为指标、终端安全指标和网络安全指标进行融合,将复杂的评估目标分解到统一的指标度量维度下,用相同的度量尺度对不同维度的安全态势进行量化,形成了科学合理的指标体系结构。
零信任作为一种新兴的网络安全理念,在行业实践和企业安全建设中,需要着眼于系统的整体安全状态,实时收集关键指标和风险因素,并将评估结果应用于动态安全策略的实施,为访问控制决策提供依据。
传统的态势评估主要分为定性分析和定量分析两种类型。前者主要基于专家的经验知识,能提供深入的洞察,但评估结果受主观因素的影响较为明显;后者利用数据和指标来量化系统的安全状态,有助于定量比较不同系统的安全状态,但需要采集大量的数据并进行分析,安全量化也缺乏统一的标准和依据,可能由数据原因导致结果不够准确。
与传统的态势评估方法相比,本文方案具有以下特点。
鉴于安全评估的复杂性,为一个“系统的系统”构建一个有效的综合性安全指标会非常困难。通常,安全性需要从机密性、完整性和可用性等多个层面进行描述和评估,零信任态势评估需要考虑与访问相关上下文(包括用户、终端、设备、网络、应用等)的整体安全性,来确保为动态访问授权提供丰富的决策信息。本文提出的指标体系考虑了与访问安全相关的基本要素,并具有可扩展、易观测、可解释等特点,可以作为零信任态势评估实践中的参考性指标体系。
在安全评估过程中,评估者的主观因素会导致评估结果的严重失真。例如,在采用 5 分制对某件事物进行评测时,不同的人可能将 5分制视为大小间隔相等或不等的 5 个等级,甚至基于个人对结果数学分布的理解而产生曲线式的等级体系。
本文将 CVSS 等评估算法映射到零信任安全态势评估中,提供了对用户行为风险和网络环境风险中各指标因素的风险度量计算,使整个安全指标体系的量化度量具有统一的评估视角和维度,使得融合计算得到的综合性指标更具有效性和合理性。
零信任态势评估的目的决定了需要用更加敏捷高效的评估方法,以便在用户访问应用的过程中,持续分析访问风险,为访问控制提供决策依据。因此,需要快速、实时地采集、分析访问环境的安全态势,以确保良好的用户体验。
在这种应用场景下,本文所设计的态势评估方法将传统上由安全专家组织实施的风险评估转化为自动化的态势评估,为零信任访问控制、自动化的安全运营和安全编排奠定了基础。
本文对零信任安全态势评估技术进行了研究,介绍了网络安全态势评估、持续监控等概念的典型技术框架,梳理分析了零信任架构下态势评估的内涵、目的和意义,然后提出了一个零信任安全访问架构,并通过该架构对态势评估的安全内容收集分析、评估引擎功能设计、指标体系的构建、量化评估和融合算法等技术进行了讨论。
下面对零信任态势评估的发展趋势,以及可能面对的问题进行总结:
(1)零信任应用场景已逐渐从传统的办公应用向 5G、工业互联网、物联网等领域不断拓展。随着网络计算的泛在化,如何针对不同的网络体系架构,建立科学合理的零信任安全态势评估指标体系是未来面临的一个重要课题。
(2)人工智能、机器学习等大数据分析技术已成为态势感知的重要方法,如何在零信任态势评估中应用这些技术提高评估效率和精度,将是零信任态势评估技术研究的重点方向之一。
(3)零信任安全态势评估的核心目标是为企业资源安全保护提供决策依据,如何利用态势评估强化安全保护自动化能力,实现访问控制、用户认证、密码技术等安全功能的自动化编排,推进组织内的安全流程,也是未来零信任安全体系要考虑的问题。