写在前面:

8月4日,美国国家标准与技术研究院NIST在官网上发布《零信任架构规划:一份面向管理员的入门指南(草案)》白皮书,该草案版本公开评论期为一个月。本白皮书草案提供了 NIST 风险管理框架 (NIST Risk Management Framework,RMF) 的顶层概述及其如何帮助开发和实施零信任架构。

在NIST看来,零信任是在规划和实施企业体系架构时使用的一系列网络安全原则。零信任架构要成功地改善企业安全态势,需要来自企业各利益相关方的输入和合作,但由于其中一些利益相关方可能不熟悉风险分析和管理,NIST RMF 为安全规划人员和系统操作人员提供了一套通用的概念和任务。

该白皮书的作者是Scott Rose,他同时是NIST SP 800-207《零信任架构》的第一作者,因此。该白皮书与NIST SP 800-207的耦合度很高,可看作是系列配套材料。是为了帮助企业各利益相关方理解在迁移到零信任体系结构时,如何使用NIST RMF中的各种角色和任务。本文从章节目录看,分为3部分:第1章简要介绍零信任,第2章介绍如何在零信任迁移过程中使用RMF。第3章,给出结论。

另外,需要注意的是,本文不是对白皮书的逐字翻译,更偏向于笔者阅读该白皮书的过程中,一边翻译学习一边进行了一些理解备注,仅供各位同仁参考、期待共同交流。

1.零信任

按照NIST SP 800-207《零信任架构》的说法,零信任是规划、部署和运营信息技术架构所依据的一系列原则。零信任通过全局视角来衡量给定任务或业务流程中所有的潜在风险,以及考虑如何减轻这些风险。因此,零信任没有单一的特定基础设施实现或架构,但其与企业的业务工作流程息息相关。零信任需要分析该业务流,以及用于执行该工作流的资源。零信任战略思维可以用于规划和实施企业IT基础设施,通过零信任战略思维规划实施的IT基础设施就是零信任架构(Zero Trust Architecture, ZTA)。

ZTA规划和部署的成功需要企业管理员和系统运维人员的参与。ZTA规划需要系统、工作流所有者以及专业安全架构师的参与和分析。零信任不能直接强加到现有的工作流上,而是需要在企业的各个方面进行集成。本文向企业管理员和运维人员介绍了NIST RMF中的一些概念。在RMF中,列出了一系列集成到企业风险分析、规划、开发和运营中的流程和任务。企业在向零信任架构迁移时,企业的管理员需要熟悉风险管理框架中详述任务。

NIST《零信任架构》中的两幅框架图,点明了其价值。图1是零信任的概念框架,也称为零信任抽象访问模型,虽然这个框架并未覆盖全部信息技术,但可以作为企业理解和开发零信任架构的工具。

图1 零信任概念框架

图2是我们都已较为熟悉的零信任抽象逻辑架构,可以用于对照实际解决方案与之的差距。

图2 零信任抽象逻辑架构

在图2中,方框组件按照逻辑功能进行罗列、划分,并不一定代表某个单一系统,多个组件可能以分布式的方式共同支撑一个逻辑功能,或单个逻辑组件框扮演多个逻辑角色。这些角色在SP 800-207中详细描述,简单总结如下:

  • 策略引擎(Policy Engine, PE)

实现零信任架构的“大脑”,最终评估资源访问请求的组件。依赖于来自各数据源的信息输入,如访问日志、威胁情报、设备安全状况和网络ID认证检查等。

  • 策略管理器(Policy Administrator, PA)

策略引擎的执行者。策略管理器的作用是在数据平面上建立、维护并最终终止会话。策略管理器、策略引擎和策略执行点在逻辑或物理层面上独立的通道上相互通信,该通道被称为控制平面。控制平面用于建立和配置数据平面,数据平面是用于发送应用流量的通道。

  • 策略执行点(Policy Enforcement Point, PEP)

应用程序、设备等与之交互,并被授予对资源的访问权限的组件。策略执行点负责收集策略引擎所需要的信息,并按照策略管理器所发布的策略指示,建立和终止通信会话。所有数据平面上的通信,即企业资源之间的所有工作流应用流量,都必须通过至少一个策略执行点。

  • 信息源(Information Feeds)

这是策略引擎用来生成资源访问决策的一系列策略、身份和设备属性、环境因素和历史数据。图2中展示的信息源包括威胁情报(Threat Intelligence)、活动日志(Activity Logs)、数据访问策略(Data Access Policies)以及CDM系统等资产信息输出。

1.1零信任原则

零信任可以总结为用于规划和实现IT架构的一组原则。最初,原则是在SP 800-207《零信任架构》中定义,本文进行了重述,原则数量未变并进一步归纳分为3类,与网络身份相关、与设备安全状态相关、与数据流相关。其中,网络身份就是身份,但这个身份不仅包含人,也包括设备和应用等。同时,本文还包含对原则的一些讨论,以及规划者在开发零信任架构时应牢记的一些注意事项。本文中对各项原则的描述方法与SP800-207《零信任架构》中描述的有差异,但内涵一致。

1.1.1 应用于网络身份治理的原则

原则1:所有资源认证和授权都是动态的,在允许访问之前都需严格执行

该原则对应到《零信任架构》中的原则6。一个典型企业会拥有大量的身份数据集合,有终端用户的身份、服务账号等。一些终端用户可能会拥有多个网络身份,部分身份仅能被硬件/软件使用。这部分身份可以理解为硬件设备的身份、应用的身份。企业需要有适当的治理策略和结构,以便仅在完成身份验证后,执行授权操作。企业需要考虑当前的身份治理策略是否足够成熟,设置身份验证和授权检查点的位置,以及如何执行。

1.1.2 应用于终端设备的原则

原则2:所有的数据源和计算服务都被视为资源

该原则对应到《零信任架构》中的原则1。企业依赖移动设备、数据存储、计算资源(包括虚拟化)、远程传感器/执行器等不同的资源来执行任务。所有组建都需要在零信任架构中被考虑到。某些组件(如物联网传感器)可能无法支持某些解决方案,例如,配置代理、应用程序沙箱等,因此需要使用底层网络基础设施的替代方案。如果资源缺乏某些安全功能,企业需要添加策略执行点组件来提供该功能。

原则3:企业监控并衡量所有自有资产和相关资产的完整性和安全状况

该原则对应到《零信任架构》中的原则5。该原则涉及配置、补丁、应用程序加载等网络健康的各个方面。应该监控资源状态,当上报或观察到新的漏洞或攻击等信息时应该采取适当措施,确保资源数据的机密性和完整性。这要求企业管理员充分了解如何配置、维护和监控资源。

1.1.3 应用于数据流的原则

原则4:所有网络通信都应安全保障,与网络位置无关

该原则对应到《零信任架构》中的原则2。在零信任中,网络一直被认为是攻守双方争夺的战场。因此,应假设攻击者存在于网络上并且可以探测、篡改通信。安全防护一方,应采取适当的保护措施来保护传输中数据的机密性和完整性。如果资源本身无法提供此功能,则需要单独的策略执行点组件提供此功能。

原则5:基于每个会话授予对单个企业资源的访问权限

该原则对应到《零信任架构》中的原则3。理想情况下,零信任架构中在执行每个独特的操作之前都会经过身份验证和授权。例如,在对数据库进行读取操作之后的删除操作应触发身份验证和授权检查。但身份验证和授权检查并不总是可行,需要具备其他解决方案(例如日志记录和备份)来检测未经授权的操作,并从中恢复。企业管理员需要学习如何对单个资源实施细粒度的访问策略。如果当前的工具集不允许这样做,那么其他解决方案,例如日志记录、版本控制工具或备份等可能有助于降低风险。

原则6:访问资源由动态策略决定,包括客户端身份、应用/服务和请求资产的可观察状态,且可能包括其他行为和环境属性

该原则对应到《零信任架构》中的原则4。在零信任架构中,根据允许清单,所有资源的默认访问行为都是拒绝连接。必须进行身份验证并证明是符合企业策略应被授予会话权限,满足此允许清单的上的条件。这可能包括满足客户端软件版本、补丁级别、地理位置、历史请求模式等要求。需要注意的是,可能无法在访问请求之前立即执行所有检查,但有些可能是近期执行的,例如日常软件版本检查。

原则7:企业尽可能多地收集有关资产、网络基础设施和通信的当前状态的信息,并使用这些信息来改善其安全状况

该原则对应到《零信任架构》中的原则7。零信任架构增加了以前基于边界的架构中缺乏的或是不可能实现的动态响应因素。系统日志和威胁情报用于更改、改进策略以响应新的信息。例如,在发布了一个企业内正在使用的软件组件新漏洞。采用零信任架构的企业能够迅速采取行动,隔离受影响的资源,直到完成修复,这样可以缓解新发现的漏洞对资源的影响。企业管理员需要为企业设置和维护一个全面的监控和修补程序,并应考虑如何使用自动化工具帮助应对新发现的威胁。

2.零信任迁移过程

2.1 过程

在NIST SP 800-37《风险管理框架》中,描述了风险管理框架方法及其七个步骤。以下步骤实施,并没有先后顺序,可以根据需要执行和重新审视构成七个步骤的各个任务,可以以任何次序执行,且可以与其他步骤/任务并行执行。

  • 组织和制度准备(准备步骤)
  • 系统分类(分类步骤)
  • 控制选择(选择步骤)
  • 控制实施(实施步骤)
  • 控制评估(评估步骤)
  • 系统授权(授权步骤)
  • 控制监控(监控步骤)

步骤之间的变化可以是动态的,如图3所示。在开发和实施零信任架构时确实如此,因为零信任的动态性质可能需要在风险管理框架步骤中重复或快速转换以响应新的信息或技术变化。在SP800-37《风险管理框架》和快速入门指南中记录了各个步骤的详细信息。

图3 RMF State Machine

初次迁移时,通常按上述顺序步骤执行,但非必需。风险管理框架步骤与 John Kindervag为零信任开发的高层级步骤非常相似, 后文对步骤做了对照。该过程假设已经创建了授权边界并且工作流中使用的系统组件是已知的,换言之,此时已经执行了准备步骤并收集了数据。该过程没有明确的分类步骤,因为此高层级描述不是在考虑联邦机构的情况下而制定的。

  1. 梳理资源的攻击面,确定恶意行为者可能关注的关键部分。这些将包含在选择步骤中的任务中。
  2. 准备步骤(任务 P-12 和 P-13)开始,数据流应该被识别和映射。
  3. 实施步骤:专注于实施在选择步骤中产生的对资源和相关策略执行点控制。策略执行点可以是一个独立于资源本身的软件组件,用于满足认证/授权相关的控制。由于假设底层网络是不可信的,因此各个资源之间的链接必须通过策略执行点。
  4. 评估步骤:确保在实施步骤中制定和实施的所有访问策略都按预期实施和运行。该步骤将在进入授权步骤时结束,系统和工作流在授权步骤中将处于开始实际操作的状态。
  5. 监控步骤:实施对资源及其安全状态的监控和管理过程。

2.1.1 准备(PREPARE)

RMF过程的第一步是准备(PREPARE)。在开始向零信任架构迁移时,这可能是最漫长的一步。因为充分了解并获取完整的角色和企业资源清单是零信任架构的基础。英国国家网络安全中心在《零信任架构设计原则》中提到这一点,是原则之一。准备步骤包括适用于组织和任务/业务级别以及系统级别的步骤和任务。系统架构师、管理员和运营人员可能只会在准备步骤中关注系统级别的任务,但这可能成为任务/业务级别的任务的价值性输入。准备步骤侧重于使用NIST RMF的组织准备管理其安全和隐私风险,并在组织、任务和业务流程以及系统级别设置基本活动。

企业架构团队应该专注于识别 RMF 任务/业务级别的相关业务流程(工作流)和系统。应对每个工作流程进行风险分析。应确认参与工作流的所有者和关键人员,并确保他们在分析中提供输入,因为他们可能拥有丰富的知识和经验。这可对应准备步骤的组织级别任务(P-3到 P-7)。笔者认为业务流程分析值得关注,有业务流程分析才能更好地完成安全保障。

系统管理员和运营人员应专注于识别用于执行已识别业务流程的资源。这些可对应到准备步骤的系统级任务(P-8 到 P-18)。包括:

  • 每个工作流中涉及的资源将成为安全规划的对象。资源可以分为两个不同的类别:

(1)接支持特定工作流的指定资源。示例包括单一用途的报告数据库和用于向该数据库提交报告的基于云的应用程序。

(2)由多个或所有工作流共享的通用基础架构资源。示例包括网络基础设,如交换机和无线网络接入点,DNS、电子邮件等。

  • 企业内使用的网络身份与治理工具。这不仅是指终端用户的帐户清单,还包括软件组件、设备ID等使用的服务帐户。
  • 企业内使用的任何数据分类程序和进程。
  • 企业资源监控现状。零信任的基础之一是了解企业中的数据流。在实施零信任架构之前,企业拥有一个可靠的持续监控计划和工具集至关重要。

完成识别独特工作流和企业资源的基础工作后,就可以生成授权边界(任务 P-11)。架构师和安全顾问应该“划定”界限,只包括系统所需的核心组件。授权边界可能包括任何提供安全功能的PEP组件。授权边界内资源之间的连接也必须是安全的,而不是隐式信任。零信任原则对网络是假设不可信的,因此授权边界内资源之间的连接受到与跨越授权边界的连接相同的控制策略,例如从外部连接至内部,反之亦然。如果相同的PEP解决方案与其他资源一起使用,例如某些云安全访问代理 (Cloud Secure Access Broker, CASB) 或用于为多个不同资源提供PEP组件的类似解决方案,则PEP组件涵盖的控件可以在其他系统中重用。

2.1.2 分类(CATEGORISE)

这一步在零信任规划过程中不会得到改变。FIPS 199 和FIPS 200(关于NIST的风险管理框架RMF)用于根据工作流中的机密性、完整性和可用性要求将资源置于低、中或高风险的三个类别中。在这组任务中,资源的所有者和使用资源的工作流可以是有价值的输入。

2.1.3 选择(SELECT)

这一步在零信任规划过程中同样不会改变。NIST SP 800-53B 针对信息系统和组织的安全和隐私控制中列出了低、中、高三个影响系统的基线控制等级。可以通过添加或删除额外的控制,来管理资源的风险和工作流中风险位置。使用“控制基线的额外定制选项”可能有所帮助,但不应将其视为不可变化的,而需要针对独立资源进行调整。规划者还应考虑PEP将满足哪些控制措施,以及需要在资源本身中实施哪些控制措施。与分类步骤一样,资源所有者和使用该资源工作流的所有者可能会在此步骤中提供有价值的输入。由于零信任重视持续监控和安全态势更新,网络安全架构师和管理员需要开发一个全面的监控流程,以处理零信任动态特性所需的数据量。

除上述文档外,还有一些其他资料也可以作为参考,比如(美)联邦政府CIO委员会的CIO手册及(美)国防部TIC 3.0核心指导系列文档均可为企业架构师和管理员提供如有必要时所需查阅的资源。特别是TIC 3.0用例文档可以为潜在架构提供高级别的初始规划。这些文档有助于为资源开发所需的要求和安全属性。

2.1.4 实施(IMPLEMENT)

与前两个步骤一样,实施步骤没有任何专为零信任所做的特定考虑。但是,与RMF和零信任一样,应牢记未来的监控/维护操作。管理员应该选择避免涉及频繁的人工操作或不容易适应监控系统的解决方案。零信任鼓励用自动化对不断变化的安全问题做出动态响应,手动更改无法跟上频繁的更改。这也就是强调了零信任自动化编排的能力。

2.1.5 评估(ASSESS)

在零信任架构中,面对不断变化的环境,安全控制的评估应该是持续的。现代IT环境和DevOps/DevSecOps等趋势意味着,随着改进和配置更改以减轻新发现的威胁或对企业基础架构的更改,系统的及时评估快照很快就会过时。这里点明需要持续评估的原因。

评估步骤应包括两个过程,系统的持续评估过程和用于管理系统的过程。因为零信任的动态性质意味着该系统的变化速度在相同管理规模上比人工执行评估程序的速度更快,必须对该过程进行评估。该评估考虑了变更过程等因素,以评估系统的修改方式。

系统本身的评估应该有一个基于监控程序的持续评估组件(CDM组件),进行频繁的自动检查或扫描以检测系统中的变化。记录数据应用于检测需要进一步调查或补救的可能恶意行为。该评估还可能包括主动过程,例如作为评估输入的系统红队测试,笔者理解为攻方测试。

2.1.6 授权(AUTHORIZE)

这一步可能会在零信任架构中进行阐述和解释(如评估步骤),但其目标保持不变。由于零信任架构被构建为更具动态性和流动性以响应不断变化的网络条件,因此不应将授权视为静态,而是动态授权。

2.1.7 监控(MONITOR)

如前所述,零信任要求企业监控用于执行其主要任务的资源。具体如何完成取决于企业现有的技术解决方案。无论采用何种技术,企业都应制定策略,根据监控中看到的行为触发操作。这可能包括对安全事件做出反应或与 DevOps流程相关联以修改或改进系统。可以理解为SIEM系统会涉及的任务项。

除了监控企业资源的当前活动和状态外,网络安全规划人员还应考虑如何利用外部威胁情报对新情况进行先发制人的响应。GOVCAR之类的工具可能有助于确定要解决的威胁的优先级。对于联邦机构,还有额外的监测计划可以提供帮助,例如 DHS CDM仪表板和AWARE计划。

2.1.8 RMF操作循环

零信任有助于使用DevOps和DevSecOps软件安全开发运维模型。软件安全更新和审查的周期可以是RMF 过程的一个部分。例如,网络安全态势的 DevOps循环可以表示为下图:

图4 DevOps循环

在这个循环中,在监控步骤中收集的数据随着改进和实施的改进反馈到实施步骤,然后对其进行评估并按照持续的授权步骤进入操作。如有必要,例如当新信息出现可能导致软件添加新控件或删除现有控件,DevSecOps团队会选择退回到选择步骤重新规划、设计。

即使在更静态的IT操作环境中,即没有DevOps,零信任模型也可以被视为只有运维的循环。在此循环中,没有DevOps组件,因此评估授权步骤会随着从系统日志、威胁情报等收集新信息而不断循环。这里可以理解为零信任中对不断地信息后的持续评估,动态授权。这将会生成新的配置策略或进行策略更新。如果新信息导致的更改范围更大,超出了循环内的步骤,那么这样的操作更改所涉及的周期也将更长,当然也不那么频繁。

图5 操作循环

3.结论

基于架构层面的安全信任治理是破解当前安全难题的不二法门,而零信任安全架构理念为我们指明了一个解决问题的方向。在这条正确的道路上,我们还需要继续探索和实践,构建云、边、端协作的安全云平台,以做好万物互联和数字孪生新时代的安全保障。

NIST的风险管理框架提供了一个工具集,旨在帮助进行风险评估的人员。但是,它也可以帮助管理员和运营人员以及其他人员。本白皮书提供了NIST RMF的概览,并提供了RMF的步骤以及如何实施这些步骤以支持零信任的指南。本文目标是为IT人员提供指导,帮助他们了解自己在零信任架构迁移中的角色可能如何演变,以及风险管理人员需要在哪些地方引入其他IT人员来协助他们的分析。

本文贡献者:奇安信身份安全实验室 WP, 2RIS, NMM

补充阅读:

1.NIST Planning for a Zero Trust Architecture: A Starting Guide for Administrators

https://csrc.nist.gov/publications/detail/white-paper/2021/08/04/planning-for-zero-trust-architecture-starting-guide-for-admins/draft

2.NIST标准《零信任架构》正式版

https://mp.weixin.qq.com/s/uoFCnfBn_RCYubfK_MnhMA  

3.基于DoDAF全面解读《(美)国防部(DOD)零信任参考架构》https://mp.weixin.qq.com/s/qNhaccnhuBoXpkwzqcZQfQ

获取本文NIST零信任白皮书英文原版,请关注微信公众号“零信任安全社区”,回复关键字“NIST零信任白皮书”下载。

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