近年来,伴随新冠疫情的发展和全球数字化转型,企业加速上云进程,由此带来一系列云安全和数据安全挑战。各国加快制定云安全技术标准和规范,保障云端数据和应用程序的安全。美国CISA针对日益增加的云安全需求,发布《云安全技术参考架构》(以下简称《架构》),旨在落实第14028号《改善国家网络安全》行政命令,促使美国联邦机构了解实施零信任架构时采用云服务的优势与风险,同时提出相关建议帮助联邦机构顺利开展云迁移,保护数据安全。
执行摘要
第14028号行政命令《改善国家网络安全》更新了对联邦网络安全现代化和战略的承诺以及相关重点事项。为了紧跟现代技术的发展和不断演变的威胁,联邦政府持续向云迁移。为支持此项举措,国土安全部部长(通过网络安全和基础设施安全局(CISA)局长)与行政管理和预算局(OMB)局长以及总务署署长(通过联邦风险和授权管理计划(FedRAMP))磋商,制定了《云安全技术参考架构》,为机构利用云安全态势管理(CSPM)收集和上报数据提供了建议方法,以顺利进行云迁移,保护数据安全。通过该技术参考架构,机构可了解实施零信任架构时采用云服务的优势和内在风险。
授权
第14028号行政命令《改善国家网络安全》在第3条(c)款中规定(对某些句子增加了加粗显示,以示强调):
各机构在使用云技术的过程中,须协调行动,审慎行事,以便联邦政府预防、检测、评估网络事件并进行相关补救。为此目的,各机构须尽可能采用零信任架构向云技术迁移。CISA须更新其现有的网络安全计划、服务和能力,以便在使用零信任架构的云计算环境中充分发挥作用。国土安全部部长(通过CISA局长)须与总务署署长磋商(通过FedRAMP),制定云服务商(CSP)安全原则,作为机构现代化工作的一部分。为促进这项工作的完成:
[……]
在本命令颁布后90天内,国土安全部部长(通过CISA局长)须与OMB局长以及总务署署长(通过FedRAMP)磋商,为联邦文职行政部门(FCEB)制定和发布云安全技术参考架构文档,为机构收集和上报数据提供建议方法,以顺利进行云迁移,保护数据安全。
1 前言
第14028号行政命令《改善国家网络安全》(2021年5月12日)更新了对联邦网络安全现代化和战略的承诺以及相关重点事项。除了其他的政策授权,第14028号行政命令还将零信任作为理想的安全模式,要求网络安全和基础设施安全局(CISA)更新其当前的网络安全计划、服务和能力,使其能够在云计算环境中充分发挥作用。第14028号行政命令标志着联邦政策的转变,但近年来所做的许多工作都与该行政命令的关键原则相一致。例如:
第13636号行政命令《提升关键基础设施网络安全》(2013年2月)扩大了信息共享计划,比如增加了“增强网络安全服务”,向美国公司提供机密和非机密的网络威胁信息。
第13800号行政命令《加强联邦网络和关键基础设施的网络安全》(2017年5月)授权机构利用NIST CSF实施风险管理措施,降低未授权访问政府信息技术(IT)资产的风险。第13800号行政命令还指示各机构在IT采购中优先考虑共享服务。这样,就将有效的风险管理和IT现代化放到了同等重要的位置,指示机构在迁移到云环境时对数据实施有效保护。该命令进一步强调了CSF的重要性,并为联邦政府尽快上云奠定了基础。
第13873号行政命令《确保信息和通信技术及服务供应链的安全》(2019年5月)重点提出通过确保供应链采办安全来保护关键基础设施IT。通过这种方式,它强调了供应链和IT采购对于政府运营和机构任务履行的重要性。
这些工作当然应该继续进行下去。同时,新的领导班子、不断演变的威胁以及千变万化的需求和技术也为增强现有战略和架构方法提供了机会。此外,近期发生的针对云计算环境的网络入侵产生了广泛影响,需要国家做出回应。这些入侵表明,传统方法已无法有效防止国家受到网络威胁。此外,要成功进行云迁移,需要在整个组织内推行文化变革、明确优先事项、采用设计方法,并得到组织的接受和支持。
《云安全技术参考架构》以上述文件为基础,重点关注云现代化工作,即共享服务、云软件设计和云安全态势管理,支持联邦机构持续演进,适应快速发展的环境和技术。
2 目的和范围
《云安全技术参考架构》旨在指导各机构在实施云技术时协调行动,审慎行事。一方面帮助联邦政府识别、检测、防护、应对和恢复网络事件,另一方面提高整个政府的网络安全。如第14028号行政命令所述,本文目的在于让机构了解实施零信任架构时采用云服务的优势和内在风险。《云安全技术参考架构》还为机构收集和上报数据提供了建议方法,以顺利进行云迁移,保护数据安全。
本技术参考架构旨在为采用云服务的机构提供如下指导:
云部署:为机构安全过渡到、部署、集成、维护和运营云服务提供指导。
自适应方案:提供灵活且广泛适用的架构,用于选择云功能和不受厂商限制的解决方案。
安全架构:支持建立云环境和安全的基础设施、平台和服务,助力机构运营。
开发、安全和运营(DevSecOps):支持安全、动态的开发和工程周期,在机构过渡和发展过程中,围绕能力的设计、开发和交付,构建、学习和迭代解决方案。
零信任:为计划采用零信任架构的机构提供支持。
本技术参考架构有三大组成部分:
共享服务:本章介绍评估云服务安全的标准化基线。
云迁移:本章概述了云迁移的策略和注意事项,包括对常见迁移场景的解释。
云安全态势管理:本章定义了云安全态势管理(CSPM),列举了云环境中用于监控、开发、集成、风险评估和事件响应的相关安全工具。
虽然各部分聚焦于云安全的不同方面,但它们具有协同作用,共同支持云安全现代化的总体目标。了解共享服务的特征以及管理和保护此类服务的职责划分对于机构的云迁移和安全态势管理至关重要。上云后可以改善运营和安全性,帮助机构跟上不断发展的技术形势。最后,借助于CSPM能力,机构可根据需要在整个基础设施中动态保护其云资源。
图1详细说明了云安全技术参考架构的组成部分和各部分之间的共性。
图1:云安全技术参考架构组成以及协同作用
附录A以三个云中使用场景—联合身份管理、微服务和温备站点—为例阐述了需要考虑的相关因素。附录B列举了本技术参考体系结构中的术语和缩略词。
2.1 关键计划和倡议
为实现信息技术(IT)现代化和云安全,出台了一系列联邦云计划和战略,其中的重点项目介绍如下。
联邦风险和授权管理计划
联邦风险和授权管理计划(FedRAMP)成立于2011年,为联邦政府部署、使用云服务提供了一种经济高效、基于风险的方法。FedRAMP授权机构使用现代云技术,同时强调联邦信息的安全和保护。
云智能计划
在提交总统的《联邦IT现代化报告》一文中提出了“云智能”(Cloud Smart),这是继“云优先”(Cloud First)之后的另一联邦云计算战略,于2017年启动。云智能包括三大支柱:安全、采购和人员。这些支柱均为云战略关注的重点,但由于安全与其他两方面均有交叉,因而显得尤为重要。例如,在培养联邦IT员工队伍的专业性方面,云计算安全架构方面的技能集和培训应作为重点强调。
3 共享服务层
本章介绍共享服务及其对机构和厂商的安全影响,概述了云服务模型,解释了各机构如何利用FedRAMP服务支持云迁移。需要注意的是,本章所描述的云服务模型的功能依赖于采购期间设定的合同条款;云采办不在本文讨论之列。
本章将:
定义云服务模型:识别和定义云服务模型,并将该定义与其他权威资源对比。
介绍FedRAMP:介绍FedRAMP及其相关角色和职责。
概述FedRAMP的安全考虑因素:描述FedRAMP对持续监控、事件响应和授权范围的要求。
3.1 云服务模型概述
将基础设施、应用程序或服务移入云中时,有多种方案可选。这些方案通常称为“_aaS”,其中“_”代表描述云产品类型的一个或多个字母。NIST定义了三种基本的云服务模型:SaaS(软件即服务)、PaaS(平台即服务)以及IaaS(基础设施即服务)。
软件即服务(SaaS):消费者使用基于云基础设施提供的应用程序。这些应用程序可以通过各种客户端平台访问,消费者无需管理或控制底层基础设施。
平台即服务(PaaS):消费者能够使用服务商提供的语言、库、服务和工具在云基础设施上部署自己的应用程序。消费者无需管理或控制底层基础设施,但可以控制所部署的应用程序以及应用程序所在环境(服务商提供)的配置设置。
基础设施即服务(IaaS):消费者能够配置计算资源,部署和运行环境及应用程序。云服务商管理底层基础设施,消费者控制计算资源,包括对特定网络组件的部分控制(例如,基于主机还是基于网络的防火墙)。
云技术经过多年发展,衍生出了各种_aaS服务,包括桌面即服务(DaaS)、安全即服务(SECaaS)、人工智能即服务(AIaaS)、容器即服务(CaaS)、灾难恢复即服务(DRaaS)、物联网即服务(IOTaaS)、位置即服务(LaaS)、监控即服务(MaaS)、统一通信即服务(UCaaS)和工作空间即服务(WaaS)等,这一名单仍在不断更新。这些新增的服务与三种基本服务模型重叠,模糊了SaaS、PaaS和IaaS之间的界限,使得维护和安全责任愈加复杂。
不过,SaaS、PaaS和IaaS仍是最流行的云服务模型,它们在使用和保护方面各有不同,如图2的共享安全模型所示。这类模型简要说明了哪一方对技术、安全、数据等负责。
图2:不同服务模式的责任
共享安全模型(图2)显示,保护SaaS产品的责任主要由服务商承担。不过,这也意味着服务使用机构对服务商更加信任。这与IaaS形成了鲜明对比,IaaS的主要责任由机构承担,部分责任由云服务商(CSP)承担,其他责任共同承担。CSP对这种共享安全关系的定义可能会因厂商而异。
机构必须明确定义并充分理解自己与CSP之间的职责划分,认真制定服务等级协议(SLA),确定每一CSP的责任以及对其的期望。机构可能会发现需要在CSP更新服务时保持同步,做出相应修改。机构务必从一开始就了解所选CSP的安全状况,且后续需要保持这种了解。
机构也可以使用其他机构提供的服务,例如使用母机构提供的服务,如SaaS应用程序(电子邮件等)和母机构授权访问的IaaS环境。在这些情况下,母机构和子机构之间必须达成共识,协调彼此的角色和职责,包括但不限于事件管理、日志监测和分析、身份、访问和凭证管理(ICAM)、以及配置管理。
3.1.1. 云服务模式
如上所述,有三种主要的云服务模式:SaaS、PaaS和IaaS。每种云服务都提供了独特的功能,有自己的安全含义,机构在实施高效架构时应予以考虑。机构还应意识到,提供IaaS服务的CSP通常也提供PaaS和SaaS服务,提供PaaS的CSP一般也提供SaaS。因此,一个机构使用同一CSP的多个云服务模式并不鲜见。此外,有些CSP允许客户使用预装好的硬件和虚拟化在本地部署其服务;因此,一个机构可能同时会有多个CSP服务在本地、卫星或远程办公室、数据中心和/或云中运行。下面详细介绍这些云服务。
3.1.1.1 软件即服务
本质上,SaaS通常是专用服务,主要针对某一业务需求,如通信(电子邮件等)、文档管理或人力资源功能。SaaS服务一般通过Web提供,但也可能是应用或应用程序编程接口(API),与其他服务集成。软硬件由服务商控制,责任很少分担;但是,连接到这些环境的应用程序或API必须由机构和服务商共同保护。
有些SaaS提供商将能够与现有的身份访问服务集成;有些没有身份认证集成方案,有自己的身份域。IaaS和PaaS提供商可能会在自己的服务包中加入一些SaaS内容。
3.1.1.2 平台即服务
在PaaS中,厂商提供平台如Web服务器和数据库,用以构建解决方案。有些PaaS功能通常包含在IaaS中,但也可以独立提供。PaaS相对于IaaS的优势在于,机构可以根据任务需求创建服务,而不是购买、部署和管理服务器硬件或应用程序或数据库服务器。这意味着机构可以专注于管理平台资源以及开发和部署服务和解决方案,而无需管理底层基础设施。
3.1.1.3 基础设施即服务
IaaS环境提供丰富的服务和功能用于构建和编排解决方案。机构应该了解云原生特性,在开发解决方案时可考虑利用这些资源。这些特性包括弹性和扩展性,以及网络、操作系统、容器等资源的虚拟化。
3.1.2 部署类型
上述服务产品可以通过四种不同的方式部署在云中。具体部署方法及相关NIST定义见下文:
私有:云基础设施专门提供给存在多个客户的组织(例如具有多个业务单元的机构)使用,由组织、授权第三方或双方共同拥有、管理和运营。基础设施可部署在组织内部,也可部署在外部的云提供商处。
社群:云基础设施提供给关注相同问题(例如使命、安全需求、策略和合规性考虑)的特定消费者人群,由一个或多个组织、授权第三方或多方共同拥有、管理和运营。基础设施可在本地,也可以不在本地。
公共:云基础设施为公用,由一个或多个组织、授权第三方或多方共同拥有、管理和运营。基础设施不在本地部署。
混合:云基础设施采用上述两种或多种模式(即私有、社群或公共)部署。这种情况下,通过服务商提供的标准化或专有技术连接用不同方式部署的服务,保持数据和应用程序的兼容性。
许多人认为政府云产品就是一种社群云。政府云部署能提供公共云之外的额外保护(比如,对在CSP数据中心工作的美国公民),但也存在一些不足之处。通常,CSP首先在公共云中提供新的安全特性和工具。为政府云部署提供这些新的安全功能和工具可能需要数周、数月或数年的时间。并且,CSP在公共云中提供的工具中的某些功能对于政府也许根本无法实现。此外,政府云部署仅限于美国地区。有些机构可能需要通过公共云部署来最大化全球影响力。
3.1.3 多云
有些机构会使用多云环境。存在多云的机构需要优化环境,同时对于各相关CSP保持态势感知和良好安全实践。机构可能会将每个服务作为独立实体单独保护,也可能会对其使用的所有服务的安全采取整体视角。鼓励机构使用工具对所有应用程序和基础设施进行全局总览,覆盖所有CSP,实现对安全策略的集中管理。机构还可以选择使用CSP和第三方厂商提供的工具进行跨CSP安全分析。机构希望根据其特定需求确定哪些工具最有利于改善其安全状况。它们应评估CSP提供的安全工具和专为多云环境设计的独立工具的优缺点,应尽可能使用同时支持多个CSP的安全工具。
机构应评估哪些方法可以最有效地监控所有云服务,确保组织感知态势并维持良好的安全习惯。保证各种云服务之间的安全信息一致性对机构来说非常重要。按类型对日志进行数据归一化有助于实现这种一致性,因为每种服务的日志字段名称和数量都会有所不同。机构应确定是否需要将日志集中到中央位置进行分析,若是,再确定哪些日志需要回传以及如何回传。如果使用跨CSP的集成身份访问程序,某些日志—例如身份认证日志—将统一存放。各机构必须了解并按照OMB(M)-21-31备忘录进行日志管理。
在规划采用云服务时,机构必须确定如何为每项服务实施身份认证和访问管理,考虑身份服务所在位置的影响(例如,在本地还是在CSP处,如果有多个CSP,则还要指定具体的CSP来托管该身份服务)。机构应尽可能实施最强安全功能,例如防网络钓鱼的多因素身份认证 (MFA),并应考虑何时使用单点登录等便利功能。
在多云环境中运营时,存在厂商锁定的可能性,机构应认识到这一点。厂商锁定指租户依赖某一CSP的服务和资源。有些情况下,锁定单一厂商构建解决方案有许多优势。但在其他情况下,机构可能需要尽可能避免厂商锁定,以便能够轻松地跨服务部署解决方案,同时尽可能不更改配置和部署设置。
3.2 FedRAMP简介
FedRAMP于2011年根据OMB备忘录《云计算环境中信息系统的安全授权》(简称为FedRAMP备忘录)成立。FedRAMP为联邦政府部署、使用云服务提供了一种经济高效、基于风险的方法。FedRAMP授权机构使用现代云技术,同时强调联邦信息的安全和保护。FedRAMP是一个政府范围的计划,为云技术和联邦机构提供标准化的安全和风险评估方法,促进整个联邦政府采用安全云服务。如FedRAMP备忘录中所述,FedRAMP适用于:
执行部门和机构采购信息系统提供的商业和非商业云服务,用于支持部门和机构的运营和资产,包括由其他部门或机构、承包商或其他来源提供或管理的系统;
NIST定义的所有云部署模式(如公共云、社群云、私有云和混合云);
NIST定义的所有云服务模式(如基础设施即服务、平台即服务和软件即服务)。
FedRAMP备忘录进一步要求各执行部门或机构:
在对所有执行部门或机构使用云服务进行风险评估、安全授权和运营授权(ATO)时,使用FedRAMP;
在启动、审查、授予和撤销云服务的安全授权时,使用FedRAMP项目管理办公室(PMO)流程并将联合授权委员会(JAB)批准的FedRAMP安全授权要求作为基线;
确保适用合同合理要求CSP遵守FedRAMP安全授权要求;
根据DHS指南,针对云服务的安全和隐私事件建立并实现事件响应和缓解能力;
确保采办要求与FedRAMP的安全授权要求相一致,对CSP有承包商审查和检查相关的合同规定;
根据DHS指南,要求CSP路由其流量,使服务符合可信互联网连接(TIC)计划的要求;
每年4月30日向联邦首席信息官(CIO)提供(1)执行部门或机构CIO和首席财务官(CFO)的书面证明,以及(2) 机构确定无法满足FedRAMP安全授权要求的所有云服务的列表,附有原因说明和建议的解决方案。
益处
减少重复工作,确保一致性,提升成本效率;
建立公私伙伴关系,促进创新和更安全信息技术的进步;
通过创建透明的安全授权标准和流程,机构可在政府范围内利用安全授权,进而加速联邦政府的云计算实施步伐。
目标
促进政府机构使用安全云技术;
加强政府的云技术保护和授权框架;
与FedRAMP利益相关者建立并培育牢固的伙伴关系;
指导机构和厂商提供如何获取安全的云解决方案。
为实现计划任务,FedRAMP持续寻找现代化和自动化方法。FedRAMP与NIST和业界合作开发了开放式安全控制评估语言(OSCAL),这是一种用XML、JSON和YAML表示的格式。这些格式提供了机器可读的控制目录、控制基线、系统安全计划以及评估计划和结果。FedRAMP基线和安全包材料现使用OSCAL,旨在简化授权包的开发和审查。针对初次使用OSCAL的用户,FedRAMP还发布了开源工具,包括OSCAL生成器和转换工具。基于2021财年成果,FedRAMP将继续重点考虑业务流程的持续改进,覆盖所有利益相关者。
对于主要利益相关群体带来的好处如下:
机构能够更透彻地理解风险管理,从而在授权云服务产品的同时做出更明智的决策,最终加速本组织对新服务的采用;
CSP和第三方评估机构(3PAO)能够自动自测、开发、提交和修正安全包,减少授权工作量和时间;CSP还能自动进行持续监控,更快地解决网络安全威胁;
FedRAMP将在授权生命周期开始时收到改进后的包,以免审查过程被持续打断。通过自动化格式,包审查被简化,对利益相关者来说,减少了麻烦,加速了决策。
3.2.1 FedRAMP利益相关者:角色和责任
FedRAMP有四个利益相关群体:CSP、3PAO、联邦机构和JAB。
云服务商
联邦政府是云技术的最大买家之一,CSP为机构提供创新产品,节省机构的时间和资源,同时满足其关键任务需求。CSP当前若有云服务产品(CSO)被联邦政府使用,应获得FedRAMP授权,在了解FedRAMP的基础上,利用FedRAMP模板与FedRAMP制定的共享责任要求对齐,确保合规性。FedRAMP为所有的云产品和服务提供了已获得全体联邦文职行政部门(FCEB)机构认可的标准化安全框架。CSP只需要为每个CSO走一次FedRAMP授权流程,但要对每个授权服务进行持续监控。所有机构都要审查相同的持续监控交付件,以提高整个政府的效率。FedRAMP项目办为CSP提供培训、指导和咨询支持,帮助他们了解FedRAMP流程及要求。为联邦消费提供CSO的CSP应了解FedRAMP,利用FedRAMP模板与FedRAMP制定的共享责任要求对齐,确保合规性。
第三方评估机构
第三方评估机构(3PAO)评估CSO的安全性,在授权流程中发挥着关键作用。作为独立的第三方,3PAO根据联邦安全要求对云系统进行初步和定期评估。联邦政府基于3PAO评估,对云产品和服务的授权使用进行基于风险的明智决策。在FedRAMP评估期间,3PAO需要按照JAB授权流程提交一份准备度评估报告(RAR)。虽然RAR对于机构授权并非强制要求,但强烈建议使用。对于JAB和机构授权,3PAO编制安全评估计划(SAP)和安全评估报告(SAR)。SAP和SAR须提交给政府授权人(AO)进行授权。
联邦机构
FedRAMP助力联邦机构使用云服务安全地更新其技术并支持其任务。为此目的,机构使用FedRAMP的标准化基线评估云服务安全。机构与CSP合作,评判安全态势,授权CSO使用所需的云服务。为了建立一致的联邦云采用方法,鼓励机构和CSO接受FedRAMP培训,使用FedRAMP模板开发系统级安全工件。一旦CSO安全包在FedRAMP市场(FedRAMP Marketplace)中标记为“已授权”,机构就可以授权使用产品,审查和复用该CSO安全包。得益于FedRAMP的“一次授权,多次使用”原则,机构能够扩大联邦政府可用的安全云服务范围。
联合授权委员会
JAB是FedRAMP的主要治理和决策机构,由国防部、国土安全部和总务署的首席信息官组成。JAB负责:
定义并定期更新FedRAMP安全授权要求;
批准3PAO认证标准;
基于优先级评审云服务授权包;
为云服务授予临时授权,执行部门和机构可基于此进行安全授权及运营授权(ATO);
定期评审、更新临时授权,并在发生变更(包括撤销此类授权)时通知执行部门和机构;
制定和发布授权包评审的优先级要求。JAB章程就委员会的目标和责任做了具体规定。
3.3 FedRAMP的安全考虑因素
FedRAMP旨在为云技术和联邦机构提供标准化的安全和风险评估方法。授权之后,CSP和机构仍要持续关注最新的安全要求和考虑因素。
3.3.1 持续监控
获得授权后,由于云服务产品的硬件或软件发生了变更或者发现了新漏洞,机构系统的安全态势将不可避免地发生变化。通过持续评估和授权,使用云服务的联邦机构能够发现系统安全态势的变化,基于风险做出决策。使用云环境的机构始终负责监控不受CSP监控的环境,通常使用单独授权(参见3.1节有关云服务各层的角色和责任的描述)。
《FedRAMP持续监控策略指南》阐述了CSP在收到FedRAMP授权(通过机构授权或JAB临时授权)后需要遵循的FedRAMP策略。CSP必须持续监控云服务产品,检测系统安全态势的变化,才能基于风险做出明智决策。该指南指导CSP采用FedRAMP策略持续监控其系统。FedRAMP还提供了其他持续监控指导文件,如《FedRAMP多机构持续监控指南》。FedRAMP强烈鼓励各机构利用该指南,分担持续监控责任,减少对初始授权机构的依赖,并与CSP和其他成员机构合作,确保云服务持续满足成员机构的需求。此外,各机构应考虑使用《FedRAMP持续监控绩效管理指南》,通过持续监控统一管理CSO的安全态势。要通过自动化和工具提高效率,在CSP许可的情况下,机构可以将厂商提供的安全工件纳入机构的治理、风险和合规(GRC)能力,确保机构风险管理框架(RMF)利益相关者和授权人了解云服务安全态势。
3.3.2 事件处理
《2014年联邦信息安全现代化法案》(FISMA)(《美国法典》第44编3552(b)(2)款)将“事件”定义为“(A)在没有合法授权的情况下,实际或即将危及信息或信息系统完整性、机密性或可用性的事件;或(B)违反或即将违反法律、安全政策、安全程序或可接受使用政策的威胁”。本文档中,术语“安全事件”和“信息安全事件”与“事件”可互换使用。
CSP为其提供的服务获得FedRAMP机构ATO或临时ATO(P-ATO)后,会进入持续监控阶段。与利益相关者明确、及时地沟通事件是持续监控的重要部分,可以确保事件处理的透明度,让所有利益相关者了解当前状态和补救措施。《FedRAMP事件沟通程序》文档概述了FedRAMP利益相关者上报信息安全事件的步骤,包括对已发布紧急指令的响应。FedRAMP要求CSP上报疑似或确认已导致或可能导致云服务或其存储、处理或传输的数据/元数据机密性、完整性或可用性丧失的任何事件。真实和可疑事件上报后,机构和其他受影响客户可采取措施保护重要数据,维持正常的效率水平,及时、全面地解决问题。
3.3.3 授权范围
NIST将安全授权范围定义为“由授权人授权运营的信息系统的所有组件,不包括与信息系统相连的单独授权的系统”。就如何定义CSO授权范围,FedRAMP为CSP提供指导,以支持其FedRAMP授权包。
FedRAMP当前正在更新授权范围指导文件,以反映与FedRAMP相关的云计算技术和联邦信息安全政策的变化。主要变化包括:
确定和定义云授权范围;
定义数据类型,包括云中的联邦数据和联邦元数据;以及
利用互联连接、外部和公司服务。
FedRAMP对美国/美国领土或美国管辖的地理区域的数据中心提出了要求,但仅适用于高基线。对于FedRAMP低基线和中等基线,机构应意识到,联邦机构没有隐性或明确的保护措施确保其数据仅留在美国境内,或其资源仅建立在美国境内地区。各机构必须与其CSP定义范围和期望,通过SLA或谅解备忘录(MOU)解决美国/美国领土或美国管辖的地理区域之外的任何问题。
4 云迁移
本章介绍了计算面以及机构在设计、实现和维护云数字服务时的考虑事项。要高效、安全地向云服务迁移,各机构应:
设计适用于云的软件:确定哪些服务和功能需要首先实施,为创建安全高效的云环境做好准备。
制定云迁移策略:设计适用于本机构的计划,将数据和服务从内部部署环境迁移到云环境。
采用开发、安全和运营(DevSecOps)方法:利用代码和集成支持人员,创建可靠的自动化数字服务。
集中通用云服务:确定将在整个机构使用的CSP,集中进行采购和管理。
进行人才投资:云迁移要求机构培养专业技能。
4.1 设计适用于云的软件:
机构可以利用云的灵活性,根据任务需要选用服务。在软件开发生命周期(SDLC)中,机构应在基于云的数字服务中尽早实施安全措施。机构若在DevSecOps过程中采用自动化安全测试,可开发出可扩展、可重复且符合零信任理念的可靠架构。这一过程需要跨机构团队协作构建数字服务。DevSecOps可以与IT部门支持的集中式SaaS相结合,对软件进行安全测试后发布。基于云的数字服务包括IaaS、PaaS和SaaS。如第3章所述,这些服务模式以及本地模式在系统架构的不同层次要求不同的负责人。机构必须确认厂商能够提供和不能够提供的服务和功能。
4.1.1. 为什么要将软件迁移到云端
机构将软件和数字服务从本地数据中心迁移到云,可以开发出可靠性、扩展性和可预测性更高的软件。利用云服务,机构可为其他地区提供灾难恢复,根据需要快速扩容,而无需再购买数据中心。在迁移较大服务之前,机构可以首先将较小的内部项目和工具迁移到云,获得新环境运营经验和信心。迁移到云为改造旧数字服务提供了机会,使后续的大踏步前进或现代化成为可能。
云提供了许多众所周知的好处,最明显的是,在云中构建零信任架构和更安全的应用程序会更容易,机构应加以考虑。CSP可以满足身份、设备、网络、应用程序和数据这五大零信任支柱的需求,为跨支柱交互提供必要的可见性。机构若能为云服务确定合适的FedRAMP批准级别,通常可以加快ATO,简化迁移过程。正确配置这些服务、建立有效的ICAM角色以及使用密钥管理系统(KMS)提供的加密保护敏感信息可由DevSecOps团队或其他管理员承担。第5章就云安全态势管理提供了补充指导。
机构应考虑使用API(见第5.3.8节)或数据服务来安全地管理其云部署的安全优势。机构可以通过CSP和第三方厂商提供的服务访问相同数据,而无需构建、验证和维护复杂的软件。由CSP等提供的API通常配有专门的开发人员和专家。在机构内创建同等团队既费钱又耗时,会占用机构的任务资源。
4.2 云迁移策略
云迁移是将业务运营和任务迁移到云中的过程。对许多机构来说,这意味着从无法再支持其需求的传统基础设施转向现代基础设施,为机构的应用程序提供更灵活、更具成本效益的解决方案。从本地方案迁移到云环境,要求思维方式随之改变。某些云功能的运行方式无法在本地实现,如基础设施即代码(IaC)概念。这些概念包括基于弹性服务需求的动态资源调配和停用,出于安全目的替换部分基础设施的定时维护也是此类。
云迁移需要大量准备工作,具体工作量取决于应用程序生态系统的规模、当前应用程序和系统的已使用年限、用户群以及数据量。机构应考虑应用生态系统中数据的保留时间和数量;日积月累,会产生海量数据,给云迁移带来更多挑战。决定将应用生态系统迁移到云时,机构应该权衡采用云技术的好处、风险和挑战。
4.2.1 潜在的云迁移挑战
所有大型软件项目都存在挑战,但从本地部署迁移到云在人员、资金和数据方面的挑战却有其独特之处。表2列出了机构进行云迁移时面临的常见挑战。
表2:云迁移的常见挑战
除了这些常见挑战,各机构还应考虑数据迁移带来的技术挑战。数据量越大,需要的迁移、验证和支持时间就越长。如果还要求应用程序持续运行或仅有短时中断,或底层数据频繁更改,迁移难度就会进一步增加。表3详细介绍了将数据迁移到云的技术挑战。
表3:云迁移的技术挑战
4.2.2 云迁移的好处
云服务可为机构带来许多运营和经济效益,因为许多业务和任务流程本质上都是以云为中心的。NIST SP 800-145总结了云计算的五大基本特征,即按需自助服务、广泛网络访问、资源池化、快速弹性和可计量服务。硬件可根据租户的需求进行配置,与传统硬件采购和管理相比,这是一大巨变。租户可以选择虚拟机(VM),而非保留硬件。此外,租户可以彻底放弃实例化服务器(虚拟机或裸机),而在CSP提供的平台上构建。这样的话,机构可将健康监测和补丁管理的一些日常工作移交给CSP,不过,仍需对系统的安全负责。调配的资源也可能位于区域内的不同地点和可用区(Availability Zone),而不是仅在某处,如本地服务器机房或数据中心。研究云服务时,机构应该考虑自己的资产和需要,确定是否适合实施云服务。表4列出了云迁移带来的部分显著效益。
表4:云迁移的好处
4.2.3 云迁移策略
表5列举了行业合作伙伴宣传的一些主要云迁移策略。机构在迁移应用程序时可能需要使用多种策略。并非所有应用程序都适用于云环境,机构在迁移时必须考虑自己的特定需求。例如,应用程序可能需要使用本地网络,保证低延迟,而CSP可能无法提供这种速度。
表5:云迁移策略
在再托管策略和重构或修改策略之间存在着很多争论,各机构应仔细斟酌,选用适合自己的策略。有些时候,由于弃用了老旧系统,需要将应用程序迁移到云中,但重构又不可行。这种情况下,正确的策略可能是在完成再托管后进行重构。重构仍然值得考虑,因为IaaS或PaaS的云原生服务可以通过多种方式降低复杂性、提高性能并降低托管成本。
将服务迁移到云环境以及在云环境之间迁移服务时,机构可能必须考虑不同类型的服务之间的细微差别。例如,机构可以选择迁移开发过程。在这种情况下,可采用DevSecOps实时维护新集成的云原生解决方案,满足按需基础设施的独特的可扩展性和灵活性需求。例如,机构可能决定利用容器化为每项服务的消费者编排计算资源。
4.3 云迁移场景
应用程序不同,云迁移也不同,因此,很难给出统一的迁移建议。不过,若按以下阶段循序渐进可以提高成功率。
计划:确定选用哪种策略、哪个CSP和哪种服务类型,制定应用程序的路线图。
设计:为应用程序创建架构,重点关注系统的分布式特性。试用CSP的云原生功能。
引导:创建最小可行产品(MVP),证明该应用程序可在云中工作。
迁移:做好准备,生产云版本,包括移植必要数据。
维护:从产品功能角度以及性能角度持续改进云应用程序。
以下各小节概述了机构的常见迁移场景。这些场景侧重于迁移到云环境时应用程序架构的变化方式,未关注环境中的常规安全功能。
4.3.1 场景1—PDF存储上云(IaaS)
在云迁移的第一阶段,该机构希望在云中存储新上传的文件,暂不迁移旧文件。在这种情况下,机构需要额外一层来管理已存储文件位置的标识。机构应研究如何将新上传的文件正确无误地转移到云环境,再加上当前本地和云中都有文件,机构还应通过反向代理将用户重定向到正确的文件位置。最后,机构还需要在开发环境中仔细测试所有假设,为迁移做好准备。图3概要呈现了了第一阶段的架构。
图3:场景1—第一阶段概念性架构
在云迁移的第二阶段,机构希望将旧文件迁移到云存储。他们需要与网络团队协调一个最佳时间,通过网络传输总量达1PB数据。本地部署的应用服务器将收集分布式数据,生成一组完整性校验和以供将来验证,并通过加密链接将流量转发到云环境。机构应尽可能可考虑通过硬盘或其他存储器将所有数据传输至CSP。与通过网络传输所有数据比,这种技术可能效率更高。
两个阶段的不同如图4所示。
图4:场景1—第二阶段带外数据传输的概念性架构
数据进入云存储时要进行验证以确保正确性。一旦数据迁移,机构应确保用户和文件上传者都能无缝使用云环境。这时,本地数据中心就可以停用或改变用途了。
4.3.2 场景2—网站迁移到PaaS服务
在这种情况下,老旧基础设施明显过时,许多网页需要重新设计。机构决定使用PaaS改进CMS。图5显示了迁移和重新设计期间一些网页的架构。
图5:场景2—网站迁移至PaaS的概念性架构
在迁移和重新设计之后,机构认识到,大多数网页内容是公开的,不会频繁更改,因此适用于内容交付网络(CDN)。使用CDN后,机构可将大部分内容缓存在更靠近用户的位置,提高上传速度。机构将进行测试,将文件迭代迁移到CDN,并配置CDN处理用户流量。机构应进行评估,确定将哪些数据缓存在CDN服务中。许多CDN提供了额外的安全功能,如分布式拒绝服务(DDoS)攻击防护和Web应用程序防火墙(WAF),机构可以利用这些功能。大多数数据都是公开的,因此可以在授权范围之外缓存。有些数据有受控非密信息(CUI)要求,因此不应缓存,或者可以使用授权CDN服务商。图6为网站迁移到PaaS的示例。
图6:场景2—使用CDN的网站的概念性架构
预期结果是,停用本地环境,机构网站将在PaaS环境中运行,CDN入口如图7所示。
图7:场景2—新网站的概念性最终架构
4.3.3 场景3—监控面向公众的应用程序
该机构拥有多个网站,位于不同地点,因此需要研究能够处理这种分布式系统的性能监控方案。机构决定进行综合监控,包括自动化潜在用户操作,查看系统如何响应,并根据这些请求收集有关正常运行时间的指标。是在PaaS或IaaS系统中部署自己的监控基础设施抑或设计SaaS系统生成综合流量、收集相关指标?机构考虑了技术因素并权衡了成本,最终决定使用SaaS系统(图8)。
图8:场景3—基于SaaS进行网站监控的概念性部署架构
4.4 培养DevSecOps思维
DevSecOps,指开发、安全和运营,是一种软件开发理念,将代码编写与代码测试、保护和部署紧密结合在一起。传统的DevSecOps循环如图9所示。它可以打破开发人员、安全工程师、运营工程师和质量保证人员等传统角色之间的隔阂,让他们发挥团队作用。这可以通过跨职能团队实现,这些角色并肩工作,对成功开发、启动和维护服务负全权责任。
DevSecOps应该是各机构开发、保护和交付云应用程序的主要方法。DevSecOps通常利用持续集成(CI)、持续交付(CD)、基础设施即代码(IaC)、安全测试和最小权限原则来实现自动化,开发出可扩展、可预测的可靠数字服务。
图9:DevSecOps循环
4.4.1 持续集成和持续交付
有了持续集成,代码集成、构建和测试中的重复活动可以自动化,减少人为错误,加速进程,保证可靠性。持续集成发生在产品生命周期的早期,随着项目的成熟而扩展。有很多工具可用于存储、构建和测试源代码,部分SaaS产品已经FedRAMP批准,开发团队可根据需要选用具体产品。IaaS和PaaS服务商也可以提供这些服务。
源代码管理软件还可以执行代码审查和代码检入程序,进一步减少人为错误,在系统中添加抗抵赖性。
持续交付指使用自动化定期集成、构建和测试代码的过程。它以持续集成管道(CI Pipeline)为基础,确定代码何时可以投入生产。这些过程统称为CI/CD。
通过设置测试的通过/失败标准,在SDLC早期做好部署准备,然后使用自动化流程检查是否满足标准,机构可以生产出更可靠的软件用于部署。这种做法不仅有助于及早发现部署问题,还能够支持敏捷工作流,允许在开发过程中进行更频繁的小改动,向利益相关者演示具有部分功能的产品,从而得到他们的更大支持。
4.4.2 基础设施即代码
除了用代码编写应用程序外,开发团队还可以将基础设施编写为机器可读的定义文件,对数字服务进行自动化配置、运行时更改和停用并进行文字记录。这就是基础设施即代码(IaC),允许团队在检入代码之前审查IaaS或PaaS中所使用资源的更改情况。IaC还能促进云基础设施的批量生产,进而快速应用补丁,使环境可以自动扩展。手动维护的服务器需要一台台单独修补;因此,手动更新后,基础设施容易偏离原始配置。
IaC可以提供多种好处:
无需为每台设备配置用户界面(UI),进一步减少了人为错误的机会;
使用IaaS或PaaS功能自动进行合规性检查,例如对存储容器强制执行静态加密;
自动化ICAM策略的部署以及细粒度访问控制;
简化安全测试、补丁部署和更新;
对网络实施加密以及通过代码进行存储,实现更为成熟的零信任。
与其他软件一样,IaC还可以对环境进行降级更改,可能在以前安全的环境中意外引入新漏洞。为了降低漏洞风险,机构应监控IaC代码,防止出现错误配置,并/或对生产部署执行安全代码审计。
4.4.3 安全测试自动化
DevSecOps流程中的另一因素是应用程序安全测试。作为DevSecOps流程中的一部分,测试应在软件开发生命周期的早期进行,是集成安全的关键方法。应用程序安全测试利用对代码的静态分析来查找常见的编码问题(如潜在的结构化查询语言(SQL)注入漏洞),并利用动态测试来查看代码如何协同工作。通过该测试,机构可在生产之前以及更易修复时修复潜在的安全问题。在整个CI/CD过程中进行测试也会提升零信任成熟度。
开发过程中的自动化安全测试只是针对应用程序漏洞的一层防御措施。人工分析、第三方安全测试、公开漏洞披露程序以及漏洞赏金计划协同工作,构成多层防御,确保应用程序得到执行,提高漏洞在被利用之前的检出率。
图10为CI/CD系统架构示例,其中有两处存在安全测试。开发人员将应用程序和基础设施的代码检入到相关存储库中。构建系统构建应用程序,开始测试。失败的测试记录到监控系统,测试结果(或会带有告警或状态页面)通知开发人员。构建中的所有问题解决后,应用程序就可以部署到开发环境中接受进一步测试。解决所有问题后,应用程序可以升级到生产环境,准备付诸使用。
图10:具有安全测试的构建系统的参考架构
基础设施测试也可以自动化。根据IaC中定义的结构,使用安全扫描器扫描不应开放的端口,以便尽早(最好是在互联网上公开之前)发现潜在问题。
4.4.4 最小权限原则
机构应确保每个DevSecOps团队成员有足够权限完成工作,且权限不超过工作需要的范围。最小权限原则根据任务和角色确定每个人的权限范围和时长。这限制了内外部恶意人员提权或移动的可能性,降低了滥用风险。有些CSP能够根据给定时间范围内的活动在基础设施内提供不同的权限。当有人监督运营时(“轮班”),可以授予他们额外角色,以便访问和更改生产。轮班结束后,移除角色。另一种方法是授予临时紧急访问权限进行故障修复。
通过其他安全最佳实践,可以降低角色不断扩展的风险,例如在整个团队中设置更细粒度的访问权限,并强制定期撤销不必要权限。
员工离开团队后及时删除权限也很重要。
在最小权限方面,兴起了基于属性的访问控制(ABAC)。ABAC比基于角色的控制更进一步,对用户身份、被访问资源的属性和环境进行检查。角色成为用户身份的一个属性。另一个需要检查的同等重要属性是“该用户可以访问数据吗?”此外,基于公共环境的属性检查针对的是用户正在使用的设备的信息:该机构设备是否打了最新补丁?组合多个属性可以提高下述信息的可信度:用户身份与其宣称相符;用户有权执行所请求的操作。ABAC是成熟零信任体系结构的核心组件,在访问决策中涉及多个支柱。
传统上,职责分离被用来阻止内部威胁,重要任务要求多人执行,以便发现无心之失。例如,开发和编码团队与生产部署团队为两个不同团队。这种方法与DevSecOps存在矛盾,因为对于后者,这些责任在同一团队中分担。
替换过程是涉及两人的代码审查,目的是检查代码的完整性。这意味着在提交更改并将其合入主存储库之前,每一代码和配置更改都必须由另一个授权团队成员进行审查和批准。这对于应用程序代码和IaC都很有用,可以在部署前发现问题。许多代码存储库可配置为强制执行代码审查。此外,允许禁用此设置的存储库管理员账号不应用于常规的日常活动。
4.5 集中通用云服务
开发人员将应用程序迁移到云以及在云中创建和部署应用程序时,机构可以通过管理和维护共享服务来提供帮助。通过提供共享服务,开发人员可将更多的时间集中在任务上,不用分散精力考虑开销或维护任务。这些服务分为四个领域:
代理PaaS
开发工具和服务
面向公众的服务
安全服务
在机构级别共享部分服务,省去了管理费用,团队可以加速采用云原生技术,进而可以考虑如何节省其他费用。团队开始可能为Web服务器运行完整的虚拟机,后续可以转移到使用容器运行,再然后从容器转到“功能即服务”。
机构从传统的本地部署服务器转向IaaS,还会导致特定角色的职责发生转变。团队将不再需要专门人员来管理数据库所在服务器,但仍然需要专业知识来理解如何使数据库发挥性能。这种模式下,数据库管理员可以专注于战略运营,同时在机构内提供咨询。
4.5.1 为什么要集中?
在机构内集中IaaS、PaaS和SaaS有两个主要原因:节省资源、构建共享体验。新工具和软件的采购是资源密集型任务。机构可以集中成立一个综合团队来降低总体成本,负责所有团队所使用工具的研究、采购和培训。此外,集中服务(如后续章节所述)有助于理顺维护和合规工作, 达到节省资源的目的。
通过集中服务,机构可以向内部各团队提供通用工具,构建共享体验,实现协作。集中式文档有助于将知识传播到团队外部。使用同一工单、寻呼和监控系统,团队可在云服务中断时协同工作,还有助于让跨团队调动人员快速融入新团队。
有云项目经验的团队还能总结最佳实践和挑战领域并进行分享,其他团队可以从中吸取经验教训。经验丰富的团队可以指导新团队,传授掌握的知识和技能,从而增加对人员的总体投资。节省资源和打破组织中的孤岛是集中云工具的两个重要原因。
4.5.2 机构平台即服务
机构可以批量采购云基础设施,根据需要向各团队分配访问权限,从而集中处理对现有IaaS工具的访问。这样,权限分配就能有理可依,新团队也可以快速使用基础设施。机构的云团队更像是PaaS角色,对操作系统、软件库和日志进行标准化配置。这些原则共同作用,可以加快云化数字服务的发展,节省资源。
集中式IaaS可以建立规范行为,确保合规,同时减轻开发团队的安全文书(如ATO)工作负担。主流IaaS平台支持合规检查,例如当存储容器是公共或未加密时通知团队快速解决问题。各团队共享平台时,可以从组织账号继承NIST SP 800-53控制措施,在其软件支持计划(SSP)协议中使用通用语言,加快文书工作。
机构可以集中“黄金镜像”(Gold Image)虚拟机并建立工件库,这样,团队就可以共享IaC中使用的容器。也可以根据OMB M-21-31中提出的日志标准设置虚拟机和容器。可用性和安全性之间的矛盾是:机构可以在基础镜像(Base Image)上添加安全监控,但同时要保证镜像正常工作,避免系统因进行过多额外处理而过载。在整个环境中强制执行定期修补可以增加额外的安全保护。
在引入IaC的同时使用工件库,开发团队距离“不可变工作负载”(Immutable Workloads)概念就更近了一步。云基础设施和代码部署后就不会再手动升级或更改。任何变更都将通过CI/CD管道进行,系统将重新部署。
加密服务为Web服务器上的应用程序提供证书,确保应用程序使用安全信道(如TLS)。此外,必要时,这些服务可直接或通过托管服务加密静止数据。
对密钥和密码进行管理,要求应用程序定期更改密钥和密码,而不中断应用程序运行。密码泄露后,该服务必须能够使其失效。
4.5.3 开发工具和服务
开发工具和服务是快速高效构建和维护应用程序的关键。本节介绍了应用程序开发中的部分常用工具和服务。
除了DevSecOps,软件开发生命周期也广泛使用协作工具、需求跟踪和文档来共享团队内部和团队之间的当前状态评估结果。在全机构范围内进行合作并统一文档实践造就了共享和协作文化。
源代码控制产品是CI/CD管道的基础,因为它决定了哪些工具可用于构建、测试和部署代码。以“linter”形式执行代码质量控制并检查编码“反模式”也是 CI/CD 的重要组成部分,可以在整个机构内标准化;前者检查代码是否存在妨碍执行或难以读取的问题,后者防止不当编码约定导致不安全或未优化代码。
在CI/CD管道中集成安全测试对于全机构的集中和标准化也很重要,因为统一的安全应用可以改善整体流程。静态和动态安全测试可以达到提前预防的目的,防止将漏洞意外带入生产环境。
4.5.4 面向公众的服务
机构向公众提供的数字服务会从集中化中局部受益。
部署新网站的常规工作包括获取域名、为站点配置域名系统(DNS)条目以及设置超文本传输安全协议(HTTPS)证书。将这些流程集中起来,机构可以准确记录其网络活动。
应用程序和API如果可以通过互联网访问,需要防止恶意流量。可以采用WAF、API网关和内容交付网络(CDN)进行保护,这些措施还可以防护DDoS攻击。WAF通常可以控制对网络的访问,检查发往Web服务器的请求,检测常见的网站攻击。API网关控制特定用户对API的访问,同一网关可以保护多个API。
CDN不仅将缓存数据存储在更靠近用户的位置以加快交付,通常还可以吸收拒绝服务(DoS)攻击中的超常流量,或者通过防火墙限制网络流量。机构的所有互联网财产都需要这种保护,批量购买可以节省成本。
4.5.5 安全服务
各机构应尽可能在全组织范围内部署集中式综合安全服务。同一服务的独立实例越少,机构的攻击面就越小。安全服务提供应用程序保护,如日志记录、身份认证、授权、加密和密钥管理。
集中式日志是改善事件响应的关键,为本地存储的日志实现了冗余,减少了删除日志的影响。集中式日志还减少了事件响应者的调查时间。OMB M-21-31也规定了各部门须与上级部门共享日志,而集中化简化了该过程。集中式日志还有助于跨CSP和本地解决方案查找威胁。
就机构服务而言,可首先从单点登录的ICAM入手,因为首席信息官(CIO)可能已经有能力让员工登录到电子邮件等服务。即使在本地,轻量级目录访问协议(LDAP)也可以代理对云服务的访问,这样,就免去了员工再记一个密码的麻烦。图11为集中式身份和日志的示例配置。
图11:集中式安全服务参考架构
机构在将新的SaaS产品安装到集中式ICAM系统时,应尽量减少冲突。在全面采用和集成服务之前,机构应探索建模或进行试连接,以发现并解决初始性能和安全相关问题,更好地进行后续集成。
授权(即确定用户是否有权执行操作的过程)通常包含在ICAM服务中。但是,有时需要应用程序强制授权。开发团队需要能够持续请求获取授权信息。在机构实现零信任的过程中,授权将从基于角色转向基于属性,并需要包含多个支柱的信息。集中化也有利于授权。
4.6 人为因素
通过CSP构建可扩展、可复用的架构需要对流程和过程进行更改,这不仅适用于部署工具和应用程序的员工,也适用于利益相关者和这些工具的用户。机构需要进行人力投资开展云项目,还需要重新设计流程,开展全员教育,确保访问的可靠性。
4.6.1 进行人才投资
人才投资是云项目成功的关键,包括培训、雇佣和采购。在传统软件开发环境中工作的联邦雇员可以接受云技术方面的再培训,但这需要机构进行相关投资,以获取外部课程、培训和认证,并允许员工利用工作时间学习新技术。这还可以包括现代项目管理方法上的培训。为了加强培训,机构需要为员工提供机会练习新技能(例如,进入沙箱环境对新技术进行实验)。实验、迭代以及允许“快速失败”(Fail Fast)可以帮助刚接触云技术的员工培养技能,提供卓越的数字服务。
雇佣具有云项目经验的新员工是另一种人才投资方式。为新职位招人具有一定难度,因为人才储备通常有限。为高效聘用技术人才,可采用人事管理局(OPM)的主题专家资格评估(SME-QA)流程。使用该方案,需要类似员工(如设计师或产品经理)的机构可共享工作申请,通过技术评估筛选候选人,创建合格候选人库,供各自选择。SME-QA提高了通过竞争性招聘的职位数量,缩短了招聘时间。很难从私营部门吸引有经验的软件开发专业人员。原因有很多,工资是其中之一。
机构可以与人事管理局合作,想办法按照一般俸表(GS)提高工资水平,并提供签约奖金和高质量培训机会。
最后,可以采购承包商服务,开发数字服务和部署CSP产品。TechFAR Hub是一个采购资源中心,采购人员可以获取IT服务采购方法,包括云服务和软件开发承包商。TechFAR Hub推出了一项名为“数字IT采办人员培训”(DITAP)的计划,为采购人员提供培训。
4.6.2 支持人员
机构应提供入职培训和其他书面程序,通过额外培训和及时访问来支持联邦工作人员。所有人员都需要额外培训,学习使用新CSP工具,了解云工具如何改变安全模式。安全培训可包括反钓鱼培训和正确的数据处理。
这种新安全模式要求下述人员做出调整:(1)直接参与数字服务开发的人员(例如DevSecOps工作人员);(2)从非技术角度支持数字服务的人员。开发团队和利益相关者之间加强沟通有助于打破长期以往形成的孤岛。跨部门合作,将开发、安全和运营融为一体,能够促进协作,消除信息孤岛。
提供及时访问还降低了员工开发“影子IT”服务的可能性,这些服务能绕过IT或安全团队的监控,削弱联邦政府的整体网络安全态势。
5 云安全态势管理
本章介绍了云安全态势管理(CSPM)以及相关的安全功能和结果。重点指出了迁移到云时的一些关键注意事项,讨论了配置云服务和缓解云风险的组织需求。此外,还探讨了这些功能如何促进零信任架构的实现。
下节将:
定义CSPM:确定CSPM定义,说明本文定义与其他权威资源的区别。
概述实现需求:主要说明组织为达到预期安全结果而实施CSPM和零信任时的需求和考虑因素。
对齐行政命令目标:介绍CSPM如何支持零信任目标的实现。
5.1 定义CSPM
云采用和运营领域有许多通用网络和网络安全术语。其中一些术语具有标准化或约定俗成的含义和定义,但是有许多存在多种定义,对不同的利益相关者有不同的含义(例如,在特定组织内、联邦政府内、行业内等)。
术语“云安全态势管理”近期刚出现,且不同实体对其定义不同。这些定义大同小异,但措辞明显不同,使得这个词的真正含义含糊不清。就这一术语的不同定义可能需要对利益相关者进一步澄清,确保他们对含义理解一致。
就本文件而言,CSPM是指通过识别、告警和缓解云漏洞来持续监控云环境,降低风险,提高云安全性。这一定义涵盖各种结果(见5.2节)和支持达成这些结果的能力(见5.3节)。
在本文件中,CSPM能力用于支持达成以下活动结果:
治理与合规;
标准和政策;
权限和身份访问管理;
数据保护;
基础设施和应用保护;
系统健康和资源监控;
事件响应和恢复。
这些能力包括:
安全和风险评估;
持续监控和告警;
身份、凭证和访问管理(ICAM);
DevSecOps集成;
5.1.1 为什么需要CSPM?
CSPM为机构提供对云资源、应用程序和数据的访问和管理。机构将数据和应用程序上云后,将会减少对这些已部署资源的物理访问,改变对于应用程序和数据的治理和合规的管理方式。随着云部署的成熟,这些会变得愈加复杂,通常涉及多个厂商和工具。此外,近期发生的网络入侵事件都产生了广泛影响,说明云服务提供的主动管理和监控对于保护联邦政府免受网络威胁非常必要。鉴于威胁迅速演变且CSP不断改变其产品和服务,各机构应持续监控和提高整体网络安全能力,管理风险。
机构迁移到云后,也有机会实施细粒度控制和保护,通过使用自动化工具全面监控云、发现威胁和告警异常,有效管理云安全。CSPM支持机构不断改进网络安全态势和能力,及时了解新威胁,防止错误配置,降低安全事件或数据泄露的风险。纵然各机构在利用这些能力的表现上有好有差,但提前做好准备(如开发温站点,见附录A—场景)对所有机构来说均有好处,能够立即提高安全性和运营韧性,为采用其他能力打好基础。
5.1.2 CSPM如何促进零信任?
正如第14028号行政命令所述,上云机构应采用零信任原则,在可行的情况下,根据风险承受能力将环境过渡到零信任架构。为此,机构应重点加强网络安全能力的基本领域—如身份管理、资产管理、网络安全、应用程序安全和数据保护—在本地和云环境中的集成。此外,机构应在这些领域应用自动化和编排、治理以及可见性。如NIST SP 800-207第3.1节所述,机构可以采用多种方式设计零信任架构,包括增强身份治理、逻辑微分段和网络分段方法。不过,一个完整的零信任方案应包括所有这三种方法要素。机构还可以使用CISA的零信任成熟度模型来制定零信任采用策略。
首先也是最重要的一点,机构应该开发出跨云和本地环境的身份管理方案,为全组织提供身份识别。随着机构将服务上云,机构用户在不同的服务商处将拥有不同的身份。为了有效管理这些身份和相关凭证,整体协调安全保护,机构需要将其本地身份与云环境中的身份进行集成。
机构可以在服务、网络和工作负载的整个身份生命周期中使用CSPM功能,提供监控和分析,确保在跨环境部署的大规模服务中自动配置访问控制。
机构应尽可能使用自动化在所有环境中集成资产和漏洞管理。这要求机构确保访问服务和数据(包括托管在云环境中的服务和数据)的设备的完整性。CSPM工具可用于收集漏洞数据,确保合规。
在本地和云环境中的零信任架构中,机构应对网络进行分段,减少横向移动,限制权限,控制攻击向量。机构应部署工具来监控云资源,保持网络可见。可以使用CSPM功能来管理云网络和可见性。
机构将需要为云部署设计应用程序,对于应用程序的交付,可以考虑云原生产品。应在设计中优先考虑数据和访问需求。为此,机构应根据零信任原则调整应用程序安全保护措施,将安全控制措施与应用程序工作流更紧密地集成,确保保护措施具有充分的可见性和保真度,可以有效保护安全。机构应为部署在云中的所有应用程序和服务执行持续、动态的应用程序健康和安全监控。CSPM功能可用于监控和管理应用程序部署配置。
最后,零信任架构要求机构重新评估如何保护云中数据。机构应始终保护云中的静态数据以及云部署之间传输及储存的数据。CSPM工具持续监控访问日志,对所发现的异常活动进行告警;识别和防止错误配置,避免造成数据泄漏和数据丢失。
5.2 CSPM结果
CSPM可用于支持达成各种网络安全结果,本节详细介绍了部分结果。这些结果大致分为几类,对应于机构应采用的几种安全流程。实现这些结果后,机构可以为云部署安全奠定坚实的基础,在部署、运营期间应用安全措施,在事件发生后进行响应和恢复。
本节主要介绍以下结果:
治理与合规;
标准和政策;
权限和身份访问管理;
数据保护;
基础设施和应用保护;
系统健康和资源监控;
事件响应和恢复。
5.2.1 治理与合规
在开发和实施云治理运营和部署指南的过程中,机构必须遵守监管和治理要求以及内部政策和实践。为此,机构应明了相关法规、条例和具有约束力的政府政策,同时制定内部政策,发展合规评估能力。
机构应将合规扩展到云服务的各个方面,包括采办要求、计费和合同续签以及服务终止,而不仅仅是部署和运营。CSP通常在本地提供满足这些要求的服务,保证最低水平的合规性。许多方案还包括针对这些要求的云部署和环境持续评估工具。服务商实施变更并更新服务条款时,机构应评估这些变更是否支持其满足合规性或导致不合规并需要额外补救。
5.2.2 标准和政策
除了治理和合规性,机构还应考虑行业标准和最佳实践,确保云部署和服务提供基线水平的可操作性。标准和最佳实践可用于各种部署需求,针对物理安全、运营连续性和数据控制等领域各有不同。云本身支持许多这些结果,机构应评估哪些措施满足自身要求以及采取哪些措施解决潜在差距。
根据标准和最佳实践进行的评估不限于评审云部署策略,还适用于如下策略:(1)针对特定云服务的策略;(2)与云部署重叠的非云治理策略;以及(3)相关本地服务策略等等。服务商实施变更和更新后,机构应重新评估并根据需要更新策略。
这一结果以及治理和合规(5.2.1节)有助于各机构根据各自需求定义和制定策略。同样重要的是各机构如何使用这些策略以及如何针对云服务实施这些策略。在部署阶段,CSPM能力可确保遵循这些策略。在设置云基础设施和服务时,可使用IaC或策略即代码等方法监控、纠正并自动执行策略。
部署和实施这些策略会产生较具体的结果,如ICAM、数据保护等。
5.2.3 身份、凭证和访问管理(ICAM)
策略实施中一个特别重要的组成部分是对身份、凭证和访问控制的处理。CSPM工具能够整合整个身份生命周期中的ICAM控制,提供持续的监控和分析。通过监控账号活动日志和分析行为模式,可以检测到异常活动,发现潜在的入侵等问题。通过统一管理和定义ICAM控制措施,CSPM能力可确保服务自动继承相关配置。这就避免了诸如过度许可访问策略和不受限制的代码执行权限等缺点。
CSP也开始构建原生能力,支持零信任,这就提供了更全面的ICAM方法,包括细粒度账号访问控制、目录服务、应用程序和资源授权以及政策合规。有了这些内置功能,CSP就可以推动机构采用零信任方法,利用建立在可扩展基础设施之上的商业标准。通用云方案还有助于促进互操作性、效率和复用以及联合访问。
各机构应确保本地采用了最新的ICAM控制,且与CSP的控制一致。最佳实践(如启用抗钓鱼攻击的MFA和为特权账号设置更细粒度的访问和权限级别)可以缓解网络、目录服务和应用程序中的未授权访问和提权问题。ICAM还包括使用监控分析服务以及审计和报告,以支持合规性。机构可以参考其他架构和治理指南,如GSA管理的联邦身份、凭证和访问管理(FICAM)计划。
5.2.4 数据保护
机构必须与CSP合作,确定数据管理和保护责任。数据保护在所有阶段(创建、存储、访问、漫游、共享和停用)、对所有数据类型(非结构化、结构化、半结构化)以及云中机构数据的各个状态(静态、传输中、使用中)都很必要。CSPM能力会促进策略实施,提供各种形式的数据保护。
数据泄漏和数据丢失是数据保护需要关注的主要问题。数据出入云环境或在云环境内部移动时,机构必须实施、执行数据保护,减少这些风险的潜在影响。机构必须确定(1)需要保护什么;(2)实施何种保护;以及(3)由谁控制数据共享请求并管理对各CSP的访问。此外,云服务不管以何种方式终止,机构都应该制定数据处理策略。要确保已删除的数据、账号和机器镜像得到妥善清理且无法再访问,访问管理同样必不可少。机构的安全团队应进行评估,实施控制,制定数据安全和监控分析方法。这需要了解当前或潜在的威胁、机构策略和管理决策、风险评估以及发现的漏洞。
如5.2.1节和5.2.2节所述,机构应考虑政策、法律、法规和标准,制定妥善的治理方法,有效保护数据。机构应酌情通过数字版权管理保护知识产权,并适当配置密钥管理和PKI或对称加密等加密服务。重新评估时,还要审查与CSP签订的合同协议。可能需要更新新功能和现有功能或更改服务等级协议(SLA)。例如,在重新评估中,如果CSP已经对静态数据进行了完全加密,则机构无需再次加密静态数据,只要这能满足合规和隐私要求。但是,若服务内容发生变化,则需要重新评估服务。
加密是一种密钥数据保护方法。通常会加密静态数据,以避免数据泄漏,在其他安全措施失效时也能起到保护数据的作用。对传输中的数据进行加密,可以保证数据在跨网络传输时避免被未授权用户访问。此外,机构可以根据需要选择使用客户端或服务器端加密方法。在客户端加密中,机构创建自己的密钥,不与他人共享,因此CSP无法查看存储的数据。在服务器端加密中,数据在云端进行加密。机构应遵循安全密钥管理实践,确保加密数据只能由授权方读取(见5.3.10节)。其他数据保护方法包括定期和频繁测试备份、分离资源以避免意外泄漏、管理账号访问以及监控云区域,包括未使用和不支持的云区域。有些新兴的安全计算和运营技术也能支持数据保护。
5.2.5 基础设施和应用保护
基础设施和应用保护为云应用的多个层次提供安全性,包括与机构云资源相关的网络、资源和应用程序。机构应部署漏洞管理程序和工具来扫描其基础设施,包括虚拟机、虚拟网络、应用程序、容器和其他可扫描的服务。CSP已采取措施,将工作负载安全和态势管理日志集成到本地管理仪表盘中,机构可以据此创建告警。有些告警可以自动响应,例如触发后将更改的配置恢复到已建立的安全基线。此外,还可使用第三方工具:
创建仪表盘,用于评估和判断云安全态势;
提供服务配置的上下文;
通过调整资源和应用程序,确定主动响应的优先级。
CSP可使用此类安全管理和风险管理仪表盘和工具进行测量,编制决策有效性报告。
机构可借助于这些仪表盘、工具和报告,根据需要,改进、维持或重新做出决策。其中许多服务具有主动性,可提高防御常见和传统攻击向量的效率。此外,这些基础设施保护措施都支持机构向零信任架构迁移,通过自动化和编排,提供对用户、设备、网络环境、应用程序工作负载和数据的可见性和分析。
网络保护
在网络保护中,正确配置指正确设置了网络权限、分段、防火墙、代理、证书等,可供安全使用。主机、防火墙等策略应支持基于位置、应用程序、环境(如开发或生产)或资源类型等属性隔离系统的能力。为每种服务部署不同的安全策略增强了总体安全态势。此外,机构应在网络访问和网络安全设置方面采取预防措施,例如加密连接、使用防钓鱼的多因素身份认证等。这与零信任原则相一致,将所有通信都进行了保护。
资源保护
资源保护,包括CSP服务配置保护,是基础设施保护的另一关键组件。此处的资源包括CSP提供的供租户使用的任何资源或服务。CSP SLA条款通过实施上述章节中的部分项目(如数据保护)提供保护,并使CSP负责保护所提供的部分资源。SLA可能还会强制实施物理访问保护和监控,在满足某些要求时考虑基础设施所在位置。通过自动执行策略来保护资源访问是零信任架构的一项基本安全功能。
应用保护
应用保护包括:
使用应用层防火墙;
实施DDoS缓解措施;
扫描在平台或中间件上运行的应用程序;
扫描容器;
在生产发布之前或将容器上传到容器存储库时扫描应用程序。
机构应评估并酌情限制其他机构资源可访问的应用程序以及应用程序可访问的机构资源,包括谨慎确认如何管理应用程序账号、为账号分配哪些权限、允许哪些人访问账号以及如何保护账号。通过这些决策和措施,机构可以保护应用程序,更快地应对潜在的误用。强大的应用安全是零信任的另一关键设计原则。
漏洞管理
漏洞、补丁和版本的管理紧密相联。通过定期运行扫描,机构能够系统性地发现和缓解漏洞。这能够保证系统处于最新状态,按要求打补丁,并有助于识别和删除老旧软件。根据管理系统所用的架构,更新可能会有所不同。有些更新可能就地执行,而有一些更新则在有漏洞资源被替换为近期修补资源之后执行。更新时可维持系统访问权限。漏洞管理对于保护零信任架构中的所有资源至关重要,根据CISA的20-01约束性操作指令,还应包括对外的漏洞披露政策(VDP)。
5.2.6 系统健康和资源监控
除了管理恶意用户和活动对云服务部署的威胁之外,CSP工具还对服务的总体操作进行监控,确保系统在妥善利用的同时保持健康。例如,中央处理器(CPU)使用率高或内存不足等指标可能并非恶意所为,而是因为服务和系统配置不当或处于不良状态。这些工具监控安全事件,通知用户或自动采取措施来纠正这种情况。这些自动化操作有助于确保服务的稳健性以及资源的充足性和可访问性。除了直接处理资源需求(如使用负载均衡器调整活动实例的数量)外,这种监控可以覆盖更多的云服务健康指标,如检查计费和支付状态、了解利用率指标以及跟踪用户数量及其活动量。许多服务商工具提供了监控仪表盘,用以可视化最直观或最重要的关注领域,保持资产和应用程序的可见性。监控所有云部署的完整性和安全态势是零信任架构的基本原则。此外,这些信息应用于持续改善机构的安全态势。
可用的工具多种多样,确实带来了一些挑战。厂商不同,提供的解决方案也不一样,若涉及第三方厂商就更复杂,机构必须克服这种情况带来的碎片化问题,同时还要考虑到多云部署可能会使用不同数据来指示系统健康状况。
5.2.7 事件响应和恢复
机构应制定并维护网络安全事件响应和恢复计划。通过管理控制台和CSPM能力,CSP和第三方提供了一系列响应方案,包括对潜在风险触发告警并自动响应。对于关键威胁,这些响应措施能够快速修复,防止进一步升级;对于不太紧迫的威胁,允许安全人员进行更为审慎的应对。后端云基础设施为恢复提供类似支持,资源被入侵后会用新资源替代,确保服务的连续性。立即禁用可能被入侵的实例可确保事后调查时的无污染取证分析。
事件响应和恢复计划对于缓解威胁、确保服务连续性以及为事后取证分析保留工件至关重要。这些计划应考虑本机CSPM工具并利用云功能,具体步骤可包括确保自动响应配置正确、简化对归档云实例的访问以及配合CSP的事件响应计划等。机构应认识并了解与云中事件响应和恢复相关的差异和挑战,例如,机构不太可能访问资源所在的物理硬件。此外,还要做好准备,对被入侵的云资源进行数字取证分析。另外,机构应认识到,数据、应用程序和基础设施不会由于使用云服务而自动备份。
机构应预先部署促进响应和恢复的各种能力,包括稳健的备份政策和程序,并应定期进行审计和检查,保持响应计划与时俱进。
5.3 采用CSPM能力
机构当前可能拥有本地基础设施、数据和流程,希望迁移到一个或多个云。概念上简单直接,但具体方法有细微差别,甚至会很复杂。现有系统对于一般的云环境或以云为中心重构的解决方案可能并不理想。机构需要确定哪些方案最适合自己的云环境,应评估监控、扫描、报告、缓解等方案的能力,确保良好的安全态势。这应包括采用CSPM能力,实现5.2节所列举的结果。
机构可用的一般CSPM能力及其主要功能介绍如下。然而,在转向CSP并采用这些能力时,机构需要考虑自己的特有情况。机构应使用共享责任模式解决跨CSP集成能力的问题,保持对其互连服务安全的态势感知。本节还探讨了如何独立部署安全工具或将其集成到部署环境以支持交付CSPM能力。
本节内容包括:
CSPM能力
独立和集成能力
CSP账号管理层级
身份、凭证和访问管理
边界的演变
可见性与传感器分布
监控
应用程序编程接口
遥测和日志
部署、自动化和编排
5.3.1 CSPM能力
CSP通过本地服务和第三方提供CSPM功能。有些CSP允许将第三方解决方案集成到其服务中,有些CSP却会限制其服务集成到外部第三方中。除了传统的基础设施和服务级配置以及传统的入侵检测和防御系统(IDS/IPS),CSP还能助力机构大规模集成CSPM能力。这些能力包括:
1.安全和风险评估;安全评估能力可测量策略性能、态势和合规性,通过基于风险的自动化上下文提供对身份及其权限集的持续监控和可见性。CSP提供了传统的本地端口、服务和配置扫描等能力,可用于管理账号、检查流量、识别服务中的漏洞和分析代码库。CSP还可能提供集成能力,以提高持续可见性、实现自动化安全和监控合规性。
2.持续监控和告警CSP提供监控能力,以便机构记录事件和其他证据(例如生成和分析来自云环境内部的网络元数据),深入了解系统资源和数据。日志服务应设计为持续诊断报告,最大限度地提高可见性。作为监控服务的一部分,告警可根据指标或异常行为建立。此外,第三方安全信息和事件管理(SIEM)系统可根据CSP提供的日志收集信息,对事件进行监控和告警。
3.ICAM能力:CSP可为机构提供能力,执行重要功能,进行身份认证或连接到第三方身份认证代理。这些功能包括管理和轮换密钥、凭证和证书,以及创建、配置和监视权限提升和资源访问。虽然大部分CSP会提供这些能力,但机构在部署之前应了解这些服务的细微差别和局限性。机构不应默认此类服务安全或满足所有合规要求。
4.DevSecOps集成;将安全集成到DevSecOps流程的各个组件中,就可以通过集中控制实现CI/CD的自动化。还可以通过在特定区域部署安全措施来改进流程,应对正在发生的事件。这包括:
实时监控资产的健康和性能;
纠正用户和自动部署的错误配置;
调整现有基础设施以应对事件;
通过CDN监控和重定向流量,将数据可见性和访问控制扩展到传统网络范围以外;
对网络进行分段,为工作负载、容器和云对象提供分段;
使用基础设施即代码(IaC)来整合流程和程序,最大程度地减少环境漂移。
5.基于AI和ML的安全能力:CSP能够将AI和/或ML与其他安全能力集成,自动化操作、提高性能并分析数据流和数据存储。这些能力可以改进分析和自动化,使机构在深入了解风险的基础上确定优先级,但应进行迭代审查以减少自然偏见和对抗性机器学习的风险。
虽然CSP可以提供上述许多服务,但机构仍有可能需要第三方解决方案来扩展、补充或取代CSP原生产品。除了CSP市场中的专用第三方产品外,机构还可以通过云访问安全代理(CASB)、安全访问服务边缘(SASE)和SECaaS产品等集成外部第三方解决方案。利用这些产品,机构能够将部分安全和监控职责外包给CSP或第三方,以托管方式实现自动化安全。传统能力组合起来有可能实现5.2节中所述结果,而CSP或第三方提供的CSPM能力却能推动实现这些结果。
表6:CSPM结果
机构应考虑如何与所使用的各CSP集成,因为某些能力可能会导致厂商锁定。使用单一CSP的集成服务对于创建和部署服务以及监控和保护云环境都有好处。CSP原生能力受益于CSP自身的内部测试以及与同一CSP其他能力的持续集成。然而,CSP提供的工具有时并不能满足机构的需求。在这些情况下,机构应考虑采用CSP市场的第三方工具或现成的商用解决方案来满足需求。在多云环境中运营的机构可能需要跨CSP账号能力,以实现整体、集成运营。这对于部署和安全运营都很有意义。
5.3.2 独立和集成能力
机构可以通过使用独立能力(即单机或非集成能力)和/或跨云部署的集成能力来提高安全态势,更好地识别现有漏洞和入侵,防止未来发生安全事件。这两种能力都能够在整个服务周期内保护每个组件。此外,这些能力能够根据机构对相关能力的控制水平修改流程组件(共享责任模式见3.1节),因此机构通常使用集成能力对部署流程维持同一水平的控制,但会根据需要通过独立能力来调整控制。
流程中应用的独立功能很少交互,如图12所示,其中上半部分部署流程中的漏洞扫描和评估(VS/A)、CASB和IDS能力各自分离。使用这种方法,机构可以自由选择和部署所需要的能力。然而,要全面了解所部署的能力,机构需要使用第三方工具或开发自己的解决方案。
或者,机构也可以完全基于集成能力(如SIEM)进行部署,以便跨服务统一协调。这种方法可提供跨能力和跨部署流程的增强可见性;然而,可能会降低机构按需部署能力的自由度。图12下半部分的概念部署流程集成了扫描、身份认证和日志功能,可用于机构云部署的不同部分。
图12分别展示了应用于概念部署流程的独立能力和集成能力,用理论上的动作流从概念上演示了安全能力控制上的变化:
已验证(被相关能力捕获);
未验证(尚未被相关能力捕获);
未监控(未被任何能力捕获)。
图12:服务部署和集成解决方案
5.3.3 CSP账号管理层级
许多CSP允许按需注册账号,而有些CSP则要求在创建账号之前协商一致。CSP之间的不同之处在于是否允许一个CSP下的多个账号关联以及如何关联。有些CSP允许使用一个主账号监控租户持有的其他账号。有些CSP则对主账号使用组织结构,允许不同实体使用不同的订阅服务、用户账号和角色。无论CSP如何处理账号层级和联系,使用单个账号监控多个账号可以提供所有账号的整体视图,也能为组织单位的指定账号提供详细视图。本质上,ICAM能力最适合管理CSP账号,这些能力包括审计活动、创建和应用安全规则以及设置账号有效期的能力。安全和风险评估以及持续监控和告警能力也可以审计实时用户活动和确保安全规则的安全性。
机构可能需要考虑有关账号组织和结构的其他因素。需要明确的是,同时提供商业和政府云服务的CSP可能无法在这两个领域之间内部移动数据。这意味着,如果一个机构在某CSP同时拥有一个商业账号和一个政府账号,若希望在某地获得账号的所有日志信息,那么该机构需要支付费用,将日志数据从某个账号(商业账号或政府账号)转移到监控账号。若机构愿意为该能力付费,将所有安全数据传输到现场进行分析和监控,许多CSP还可以提供到现场环境的直接网络连接。
机构应考虑在一个CSP处创建多个账号,或使用CSP的内置账号层级工具来区分组织内的各个实体,限制对给定账号资产的访问。然后,各机构应制定标准,建立账号和授权访问的组织结构。
机构还应制定计划,说明如何在CSP处建立开发和测试账号。例如,通过使用IaC,可以快速复制生产环境,方便开发人员在发布代码之前测试代码。
5.3.4 身份、凭证和访问管理
身份和凭证管理
机构上云时必须首先做出的一个架构决策是如何以及在何处执行身份认证。CSP既提供原生身份认证(隔离形式),也可以与身份服务集成。机构应参考NIST SP 800-63、OMB M-22-09和FICAM手册等文件和资源实现治理和合规,并为身份和访问管理系统的策略和程序提供指导。在许多情况下会使用联合身份服务,以便用户在访问多个CSP时(例如SaaS中托管的电子邮件和机构在IaaS中托管的应用程序)向单个身份服务进行身份认证。
联合身份服务还可以为访问本地资源的用户提供身份认证服务。有关联合身份的更多详细信息,参见附录A中的联合身份场景。有些身份认证服务会集成MFA和/或单点登录。虽然许多身份认证服务提供MFA,但MFA可能无法满足政府系统的要求,如需要启用PIV或具有防钓鱼功能。在某些情况下,第三方MFA应用程序能够添加到身份认证服务中,但这会产生额外成本,有些可能需要购买物理硬件令牌或使用虚拟硬件令牌。
CSP提供的ICAM能力可以将用户管理迁移到本地和多个云基础设施之间的统一环境,改进现有部署。可以使用SIEM集成安全风险和评估与ICAM日志,加强监控和告警能力,在指定用户执行特定操作时触发告警。利用DevSecOps集成和AI/ML能力来处理这些告警,机构可以:
自动纠正CI/CD管道中以及通过IaC中的回滚进行的异常用户行为;
将访问控制集成到服务流程中,应用行为分析来限制用户行为。
机构应严格管理环境中使用的各种身份认证域。身份认证域指允许用户、进程或系统访问另一进程或系统的身份认证形式。例如,在图13中,IaaS云环境中有三种资源:Web服务器、数据库服务器和文件服务器,每种服务器都托管在虚拟机上,云管理员可以通过联合身份服务访问这些资源。这一服务可部署在该云环境中或另一云中或本地。
虚拟机服务器和数据库管理员分别使用用户名和密码访问所管理的服务器和数据库。Web服务器和服务器管理员分别使用证书访问所管理的Web服务器和虚拟机服务器。终端用户使用用户名和密码访问Web服务器。
本例中,有四个不同的身份认证域,在图13中用椭圆标识。由于资源重叠,一个身份认证域内的攻击可能导致域外其他资源中出现恶意活动。
图13:认证域
想要限制认证域数量的机构可以使用PaaS基础设施,去除承载数据库和Web服务器的底层服务器。这种模式下,Web服务器和数据库管理员通过联合身份服务进行身份认证,无需对系统资源进行认证,如图14所示。
图14:PaaS身份认证示例
访问管理
采用零信任安全方法时,机构应在每一身份认证域内执行最小权限原则,对机构资产(如计算机、网络、管理、数据)和个人账号分配履行职责所需的最小访问权限。机构可以在安全和风险评估中使用审计程序,发现权限过高的账号和错误配置的其他账号。
由于云的复杂性和动态性,机构应考虑实施云基础设施权限管理,实施最小权限,监控身份授权。
5.3.5 边界的演变
传统上,本地部署方案依赖于强大的边界防御,如防火墙和访问控制列表。机构入云后,这种“城堡护城河”法无法再为资产提供保护。机构可能会使用多云环境,在这种环境中,它们对边界的控制程度各不相同。在IaaS环境中,机构可能能够模拟传统的网络防御措施,添加基于动作的防御,通过虚假信息和重定向检测攻击;SaaS环境中很可能无法提供这种保护。
对CSP控制台的管理访问权限(例如通过Web或命令行)向互联网开放,机构可能无法对访问CSP控制台的IP或端口应用黑、白名单。不过,机构可以对某CSP下创建的虚拟网络中的资源实施安全控制。
机构在边界演进中,应考虑实施以数据为中心的方法,将数据和资产的保护优先于应用程序和服务。此外,可以在网络中对数据、应用程序和服务进行分区,对这些资源的访问执行更细粒度的安全策略。
通过执行安全扫描(安全和风险评估)和审计(ICAM),机构在迁移到云时既可以分析新的云网络,又可以测试旧网络是否存在新漏洞。边界不再局限于机构拥有、管理或使用的系统,在DevSecOps集成中引入了CDN,扩大了传输数据的攻击面,将运营可视性延伸到了地理区域。对通过扩展边界传输的数据进行分析时可以使用AI/ML能力更有效地判断信息类型和敏感性,检测、预测和跟踪机构和CSP基础设施的数据外泄。另外,AI/ML可以通过自适应负载均衡和自动防火墙管理来保护服务的可用性。机构可将上述所有能力整合到持续监控和告警能力中,提高对现有和基于CSP的基础设施中现有和新威胁的感知能力。
5.3.6 可见性与传感器分布
迁移到云端时,机构需要了解传感器分布的局限性以及这些局限性如何影响机构获取日志数据、事件、攻击和其他事件等信息。传感器含义宽泛,既包括网络分流器,也包括防火墙等工具生成的日志。发往CSP租户的流量会流经由CSP控制的网络。流量通过此路径时,CSP会自行分析,防护或消除潜在威胁,如DDoS攻击。这些CSP的内部保护措施限制了对租户的可见性,会影响机构对其云资源所面临威胁的全面了解。许多CSP提供了镜像网络流量的功能,但只有去往CSP内部虚拟网络的流量才能被镜像。如果CSP出于某种原因丢弃了流量,机构将无法看到该流量。此外,CSP虽然提供保护,但可能不会通知租户其出于保护目的而对恶意或可疑恶意流量采取了什么样的行动。传感器部署和态势感知的限制因服务模式、产品和服务配置而异,机构对抗威胁主体、满足可见性需求的能力可能会因此受到影响。
机构应考虑对出入站流量均设置传感器,并监控网络内服务之间的流量。租户的所有出入站流量均应受到双向监控。此外,机构应考虑监控服务之间的流量,尤其是通过对等互联网络的流量。未经授权或可疑的流量应能触发告警,在可能的情况下重定向至封闭观察环境。对于基于云的大规模基础设施,可以利用虚拟化接口监视器、网络流量传感器和系统日志持续监控和告警功能来获取更多信息。机构要保持对CDN(DevSecOps集成能力的一部分)的控制,通过外部部署的传感器来扩展可见性,有效区分用户流量和攻击流量。
5.3.7 监控
机构可以使用多种CSPM能力,包括持续监控和告警及DevSecOps,进行有效监控。这些能力可以验证合规性、扫描漏洞、验证正常运营和模拟条件下的系统可用性、识别错误配置并辅助修复。更具体地说,这些监控能力可以判断和记录服务正常运行时间、服务质量,通过保证内容完整性来防护恶意行为,让分析师和工程师在事件期间进行调查的同时维持正常运行。有关日志的更多信息,见5.3.9节。
机构可以使用持续监控和告警能力来增强监控方案(如SIEM),并为新兴和传统的日志聚合系统提供可扩展性。在监控应用程序中,机构可以将AI/ML的自动化性能改进和分析服务与身份认证服务(ICAM)相结合,提高服务质量、内容完整性,满足服务的正常运行时间要求。随着边界、可视性和传感器分布的演变,机构可通过DevSecOps集成中的CDN更深入地了解妨碍用户服务的潜在的网络约束,如区域可用性、服务质量和需求。CSP和第三方提供了仪表盘等工具,可用于分析IaC、服务配置和ICAM权限,检测环境中的错误配置。
机构应通过监控来跟踪所使用服务的足迹。这有两个主要目的:
维护和管理CSP、CSP区域运营、服务、应用程序、账号等资产清单;
检测未授权服务的使用情况(如影子IT),这包括员工(1)操作自己在CSP中的账号;(2)在未经批准的地区进行操作。
此外,机构需要根据业务情况选用合适的威胁模型和部署位置,有效监控云资源。如果这种监控能力部署在多个地理区域,机构可以使用统一的CSP接口和/或使用第三方服务聚合多个区域。
配置后,监控服务应确保上报的监控数据与运营周期(如更新和补丁)保持一致。为此,监控服务应确保及时应用补丁并上报跨云部署的状态。与集成功能一样,特定CSP监控可能会加重厂商锁定现象,尽管现有的锁定服务通常只能通过各自的CSP监控服务进行监控。这可能会阻碍机构实现前述监控结果(例如合规性验证、漏洞扫描、错误配置识别和事件修复)。第三方监控服务可提高跨云资源(尤其是多云环境中)的态势感知能力。然而,由于CSP可能不会向用户或第三方提供所有相关监控数据,单个云环境对第三方监控服务的可见性可能不尽相同。
5.3.8 应用程序编程接口
与本地环境相比,云环境中存在大量API,这是两者的显著差异。API提供了增强能力,方便用户使用各种云服务和功能。机构在进行云部署时还可以采用以API为中心的方法和/或微服务,实现自动化和高效控制,应用最佳实践来最大程度地减少环境漂移,方便第三方使用其服务。随着网络的发展,服务会基于用户和后端基础设施扩展,机构需要承担管理相关复杂性的责任。就本节所提建议的详细信息,机构可参考NIST的微服务使用安全策略指南,即NIST SP 800-204和附录A、B和C部分。
通过集成基于CSP的持续监控和告警,机构可实时获取有关API和其他服务使用方面的信息。此外,ICAM能力可集成到API服务中,限制和控制访问,确保应用最小权限策略。CSPM的安全和风险评估能力可确保机构采用API管理基于云的基础设施,同时按要求监控权限和评估漏洞。API应用程序和DevSecOps集成中的CI/CD管道彼此互利:CI/CD管道中的开发过程可确保API的使用经过了相应验证,而在CI/CD管道中使用API可简化服务补丁。
机构采用API可能会扩大攻击面,因为这些API包括外部开发的代码,机构对此既没有控制权,也没有可见性。因此,应妥善实施安全策略,防范使用API带来的潜在网络安全风险。机构应实施API版本控制,持续维护并管理API变更。CSP还应为所提供的API实施版本控制方案,机构应验证这些API服务是否有此类安全措施。通过建立API版本控制,CSP为租户留出了足够的时间进行调整,适配新版本。机构可以利用以下一种或多种技术来改善API相关安全态势。
使用传输中加密来保护API输入和输出的机密性和完整性。
使用API访问密钥作为标识符,记录哪些用户进行了哪些API调用。作为对这种方法的补充,机构还应制定并妥善实施API密钥失效策略以及相应的重新下发密钥策略,有效应对API密钥泄露情况。应对密钥保密,也可以根据需要一次性使用。
实施API授权,用户调用API需要相应授权。
以API为中心的架构
作为基于云的解决方案的一部分,API可用不同方法构建。CSP广泛使用API,将API作为构建块提供给租户,用于管理、日志记录和监控以及设置和连接服务。各机构应评估如何利用CSP的API构建自己的API,用以实施云中服务。
应该谨慎行事,确保足够安全,针对CSP的API以及机构自行构建和实施的API分配合理的访问权限。
在创建面向客户的应用程序或API时,机构应规划如何以及在何处收集遥测数据以及如何提供日志。应考虑遥测的安全性、性能、错误、连接等。机构还应对日志收集API及其使用的日志数据结构进行版本控制。
微服务
机构可选择基于微服务进行开发和生产。这是一种架构性方法,将云原生应用程序作为独立的轻量级服务实现。微服务是从面向服务的架构(SOA)的概念演变而来的,而SOA又是从单体服务(Monolithic Service)部署中发展出来的。虽然单体服务器的应用程序代码通常开发时间短,并且比SOA或微服务更简单,但其进程之间紧密耦合,应用程序出错时很难保持正常运行,扩展性也不好。因此,微服务应运而生,可用来满足基于云的基础设施的需求。更多详细信息,参见附录A中的微服务场景。
微服务消耗的资源少,且易于部署,可与容器技术完美结合。与引入全功能虚拟机或硬件(例如单体部署)相比,资源占用率更低。机构可以使用容器管理系统跟踪组织发展带来的微服务变化。微服务还可以更精细地实现应用程序的扩展性,因为每种服务都可以根据各自负载进行扩展,而不是像单体模式那样就单个瓶颈服务扩展整个应用程序。
微服务使用API进行服务间通信。通常,机构可以将这些通信整合到API网关中;这一层为机构管理安全、部署、分析和其他服务使用提供了统一接口。由于微服务是独立部署和开发的,随着更多微服务的引入,API网关的价值也就愈加凸显。
微服务的一大主要好处是减少了应用程序开发阶段的总时间和工作量,因而是对CSPM的DevSecOps能力的补充。每个微服务都可以单独开发,按CI/CD管道进行开发、部署、测试、安全和自动化。机构在实现云安全监控等功能时也可以采用微服务形式,根据运营需求进行扩展。
机构应意识到,采用微服务架构可能要求技术和文化变革,为此需要开发软件应用程序。除了代码结构的变化外,底层过程还要求对软件开发生命周期转换思维方式,特别是当机构将服务从单体部署转移到其他部署时。机构还应避免通过过度的职能分工来过度简化微服务,因为这会产生更多的开销,影响这种模式的投资回报。同时,微服务会让运营更为复杂,因为单个应用程序将由许多独立服务支持;因此,机构还要了解微服务配置对于监控服务的可见度。
云原生身份认证和授权
部署微服务架构和管理复杂性的常用方法是使用服务网格。服务网格是一个专用的基础设施层,提供独立于应用程序代码的网络策略、流量和服务间通信的配置。服务网格通过“边车代理”(Sidecar Proxy)实现。一个代理针对一个应用程序,与应用程序同时运行。通常,这些代理作为容器部署,与微服务应用程序本身区分开来。服务网格须允许以入口和出口网关的形式或通过边车代理将流量路由到应用程序或从应用程序路由出去。然后,再在运行时通过这些代理执行安全策略。服务网格须充当边车的证书颁发机构(CA),支持X.509证书基础设施;这种设计确保了所有业务流量在传输过程中都进行了加密这一至关重要的安全操作。不过,机构不应使用自签名证书来加密生产云环境中的流量,尽管在某些服务网格实现中提供这种能力。
采用服务网格的云原生部署可以使用基于属性的访问控制(ABAC)框架。ABAC通过多个功能模块实现,这些模块构成清晰定义的架构中,在用户和受保护资源之间设置并实施访问控制。这些模块的核心是基于用户-对象关系定义属性,限制用户与对象的交互方式。
ABAC与服务网格相结合,为应用程序中的数据流定义和实施稳健的细粒度授权和身份认证框架。服务网格应该有一个解耦的控制面,用于编码和下发为微服务架构配置的安全策略。接下来,机构可以通过控制面进行授权和认证。
授权策略可以在服务或最终用户级别或基于服务网格控制面中的访问控制模型配置,然后推送到边车代理执行。这些策略根据请求元数据设置允许或阻止访问的条件,例如基于源或目的的元数据,如IP地址或HTTP请求参数或属性。此外,授权框架必须支持基准监控器(Reference Monitor)概念的三项原则:
对每一次访问均调用授权机制(由入口/出口网关和边车代理提供)
修改保护(由与应用程序逻辑分离且不可变的ABAC模块提供)
正确性(独立测试和验证影子IT和生产中的每个模块)
接下来,可以在服务或最终用户级别进行身份认证。基于服务的身份认证通过服务身份配置文件执行,而最终用户认证通过凭证实现。最终用户认证须由服务网格中的边车代理执行。
各机构应从性能、灵活性、可扩展性、可伸缩性和过程隔离等方面评估访问控制方案,还应考虑每层最适合哪种软件堆栈以实现特定目的。机构将ABAC策略与服务网格相结合,可以更有效地管理微服务架构以及身份认证和授权需求,因为用户和资源可以在云中扩展。
5.3.9 遥测和日志
机构在使用云服务时必须了解可以使用的日志和遥测技术。系统性地审查日志管理过程至关重要,是实现监控和告警的基础。机构应了解:
哪些类型的日志可用;
收集的日志中有哪些数据字段;
日志何时上传;
如何处理、存储和检索收集到的日志。
这可以帮助机构更有效地管理日志记录,方便安全团队更快地访问日志,完成任务。机构还应采取措施验证和核实所采集的日志是否准确,是否妥善存储(例如用于现场分析的温存储与用于长期保存的冷存储)。
机构可以使用持续监控和告警能力来验证日志使用情况,深入了解日志统计信息,确保记录了所有必要数据。此外,机构可以利用这些监控功能来确保传入日志量不会耗尽日志处理资源,并对异常事件创建自定义触发器。机构可以利用云AI/ML能力通过去除干扰数据过滤日志和遥测数据,根据行为和历史数据识别异常流量。云提供的AI工具可以基于从CSP获取的信息(如流量特征和威胁发现)进行训练,改进日志记录功能,根据机构遥测的变化调整响应程序(否则将无法实现)。机构利用DevSecOps集成能力可以通过CDN中的最终用户服务捕获CI/CD管道中预部署的日志。在常规服务开始之前就进行遥测和日志采集,丰富了遥测和日志数据。
从SaaS、PaaS或IaaS云实例收集日志时,机构应遵守OMB M-21-31根据第14028号行政命令第8条发布的日志要求。这些要求旨在提高联邦机构、CISA和联邦调查局(FBI)查找联邦云部署中威胁和漏洞的能力。为达到这一目的,机构可遵循下述通用准则:
合理监控身份服务以防异常身份认证和登录尝试(尤其是对于临时紧急账号)、特权管理/角色更改和密钥/密码库更改。
查看访问策略和告警规则是否存在意外更改,查看API活动日志和服务指标是否存在异常活动。
执行日常系统管理,包括数据泄露防护、日志维护和监控,防止日志策略被意外更改。
通过检测和防护服务、访问管理器、防火墙、Web应用防火墙、流量和DNS记录,监控生产应用程序、数据/日志存储和云网络,检测云环境是否发生变化。
时间同步
机构应确保所有收集的日志符合最低要求,使用的是同一时区和同一同步时钟。这样,同一机构的所有日志可以关联,尽管区域或服务商不同。机构不仅要知道CSP收集及提供日志时存在延时,还要了解具体延迟多长时间。例如,许多CSP的延时长达15分钟,这会影响实时分析,可能进一步放大现有的安全问题。此外,要接收收集的遥测和日志数据,机构可能需要采取措施,例如在虚拟机上安装日志代理。在多个地区和时区收集日志时,机构需要了解每种日志的时间字段含义。机构应在使用和收集日志时确认每种日志所使用的时区。可能需要配置所有日志时间戳使用默认时区。若无法做此配置,可以标准化日志数据处理,确保查询事件的准确性。此外,机构应测试用于创建或报告时间的时钟是否存在漂移(Drift),让CSP了解如何确保日志时间戳的准确性。
合并和集中
机构应关注与所收集日志和遥测相关的版本号,新版本发布后,可以比较分析差异,若需更改,提前进行规划。许多日志应配置为自动收集并传送到存储位置或所集成的监控功能(CSP或第三方提供)。无论日志如何收集,也无论区域或服务商存在何种差异,日志最终都要合并到一个中心位置。有些CSP还允许将多个账号的日志传递到主账号,这样就能从单一位置监视所有账号的日志。有些跨区域集成服务可能会产生额外成本,机构应仔细规划如何处理从多个区域或多个CSP收集的日志。
本地与通过云获取的日志/遥测/取证数据
现场收集的数据和通过云收集的数据之间存在许多差异。CSP传递日志时通常具有15分钟或更长时间的延迟,可能无法为机构提供所有遥测数据用于现场操作。机构有时(可能)无法访问证据工件,例如疑似被入侵机器的内存快照。机构必须了解这些类型的差异及其对其当前安全运营中心(SOC)、威胁狩猎和事件响应流程和程序的影响。
API配置考虑因素
在创建面向客户的应用程序或API时,机构应规划如何以及在何处收集遥测数据以及如何提供日志。应考虑遥测的安全性、性能、错误、连接等。机构还应考虑对日志收集API以及日志数据结构进行版本控制、限制速率以防止DoS攻击、监控API活动以备后续评估和报告。机构可能会考虑设计网络钩子(Webhook),用以减少基础设施基于事件对API的频繁调用。
SaaS考虑因素
SaaS服务商可以使用多种方式收集日志,例如,通过相关的IaaS或PaaS账号、调用API收集日志、使用第三方收集工具以及导出日志等。应尽可能避免使用手动流程导出日志,尽量使用可扩展的日志自动收集方案。由于服务商负责技术堆栈和提供SaaS服务,租户除了服务商提供的服务之外无法为安全目的收集额外的日志数据。SaaS环境中的日志通常在服务商调用API构建SaaS产品的过程中生成,一般按API系列分组。通常需要使用服务商开发的API来访问日志,但有些服务商可能会在管理控制台中嵌入安全仪表盘或日志查看器。许多SaaS服务商将产品构建在其他CSP的产品之上。这可能会限制SaaS服务商所获取的数据,进而限制数据对租户的可用性。
IaaS和PaaS考虑因素
在IaaS和PaaS部署中,CSP提供了许多日志,机构可从中获取对环境的态势感知。这些日志包括网络流日志、API调用日志/服务事件日志、访问和身份日志以及运行状况日志。大多数IaaS和PaaS服务商都有本地工具来捕获日志并将其存放到中心位置。还有一些其他方案,允许跨相关账号收集并共享日志,其中一个账号可以监控机构所使用的多个账号。这意味着可以根据角色或功能创建账号。
5.3.10 部署、自动化和编排
云具有本地所不具备的动态特性,允许机构编排服务,进行自动化部署。机构可以在开发过程中加入DevSecOps,自动部署新软件。采用这种方式可以培养“安全第一”意识,在管理CSP定期更改云服务所带来的挑战时,这种意识尤为必要。
集成DevSecOps
DevSecOps是综合性活动,需要开发、安全和运营团队之间进行协作,在早期代码开发和部署阶段期就内置安全性,而不是在后续阶段添加,这样才能达到最佳效果。DevSecOps传统上面向生产云部署,但这种安全第一的思维模式广泛适用于各种云环境。
开发人员使用CI来构建、测试其部署。运营工程师采用CD机制协调并监控部署,确保所部署软件可用并健康。安全工程师与开发人员合作,开发测试,用于单元集成和/或系统测试,确保新部署符合安全标准。DevSecOps团队的安全人员还要在部署前进行自动化测试,判断是否存在常见的应用程序漏洞。安全人员在设计过程中要与开发人员合作,融入相关安全实践;他们还要与运营人员合作,保证部署的安全性并妥善监控并及时修补软件。在周期性DevSecOps过程中,安全人员全流程监控安全问题。有关DevSecOps的更多信息,详见4.4节。
部署管理
利用虚拟云环境,机构可快速、平滑地更改云部署的组件。在典型的本地部署环境中,需要在现场为操作系统(OS)和应用程序打补丁和进行更新。这通常会导致停机一段时间,需要在非工作时间段执行。许多CSP和第三方厂商提供“零停机”升级工具,改变这一范式,在不停止当前运行的情况下升级系统。自适应AI/ML能力与相关ICAM能力相结合,会缩短机构在部署和协调IaC时的响应时间,提高保真度。
为此目的,机构可创建基础或黄金虚拟机镜像和容器镜像。针对这些镜像,加载所有必要补丁和更新,配置安全策略,安装安全软件。再执行扫描以验证结果,检查镜像是否满足所有相关安全要求。镜像创建后可以放入存储库中,后续用于替换所运行的生产镜像。可定期执行这一过程,按月、周、或小时发布新镜像,或在发现新漏洞后及时发布新镜像。例如,CI/CD管道对使用存在漏洞的配置、包和库,还应进行告警,采取补救措施。此外,应复验系统测试和集成测试,确保黄金镜像上的应用程序(OS)或服务(容器)的新更新不会倒退。
例如,夜间构建容器,纳入运行所需的最新库,然后进行一系列的测试和安全扫描,在通过测试后再部署。之后,所有的新连接可指向新容器。由于前一容器的所有连接终止,该容器将停用。如果新容器未通过部署测试,会将失败的测试通知相关工程师,由工程师解决重点问题。在这一部署过程中,机构应了解开源工具的供应链问题,并应使用审查方案来确保库依赖版本“安全且已更新”。
使用云,机构还可将多个维护任务委托给提供IaaS、PaaS和SaaS计算方案的CSP。这样,机构就可专注于自己的使命任务。在上述容器示例中,机构可使用CSP提供的无服务器平台来部署容器。在这种情况下,机构无需关心部署的各个方面,如服务器获取、安装、配置、操作系统安装、许可、修补、监控、更新以及容器编排软件许可和安装。但机构可能仍需要对容器软件编排应用程序进行一些配置。
机构应考虑以IaC方式进行开发、配置和部署。采用IaC方式,机构可管理和部署从CSP托管服务到虚拟机和网络的所有配置设置。许多CSP提供IaC编写和管理工具,还有一些第三方厂商软件可以跨云运行。机构在使用配置管理工具来存储和管理代码(包括IaC代码)时应采用最佳实践。例如,代码库不应包含密钥、电子邮件和密码等敏感信息,使用版本控制系统进行跨系统异步管理配置等。
密钥管理
将现代云优先策略应用于密钥管理,可以在机构的云部署中实现平滑加密。机构可以选择CSP提供的服务器端加密(SSE)或应用第三方密钥管理服务。建议机构不要自行编写加密软件。不过,在选择关键管理提供商之前,机构应确保该提供商满足其威胁模型要求。一旦发现CSP或第三方提供商不符合要求,机构可寻求替代密钥管理策略。
例如,为确保应用程序所收集数据的安全,机构可能希望只有自己才能打开和查看数据,不允许CSP访问数据。机构应考虑职责分离,防止个人同时具有加密内容、密钥、策略和监控的访问权限。除了密钥之外,服务(例如数据库、网络文件共享、API等)所需的密码应定期轮换。机构可能会使用CSP和第三方厂商提供的产品,对密码、证书和密钥进行轮换。机构还应根据其威胁模型确定将密码存储在硬件(例如硬件安全模块(HSM))还是软件(例如基于时间的一次性密码(TOTP)认证器应用程序)中以及权重选项。
配置管理
针对云上的快速部署,机构应监控环境中的意外配置变化,即漂移(Drift)。较大的配置更改会很快被注意和检测到,但微小的增量更改很容易被忽略。最终,这些漂移会使环境变得更为复杂并发生重大变化,不再符合最初批准的安全计划和ATO。计划内更改必须经过审批,这样才能保证恶意或意外更改被检出并补救。有关配置管理的更多信息,参见4.4节。
6 总结
《云安全技术参考架构》为联邦机构持续推进云技术提供了建议方法,促进云迁移的顺利进行,保护数据安全。这些方法一方面帮助联邦政府识别、检测、防护、应对和恢复网络事件,另一方面可提高整个政府部门的网络安全。此外,机构在演进网络架构时,可使用这些方法了解云服务的优势和固有风险。
“共享服务”部分(第3章)概述了云服务模型,介绍了如何利用FedRAMP服务支持云迁移。云迁移部分(第4章)强调了机构在设计、实施和维护云服务时的各种考虑因素,包括各种场景,确保高效、安全地进行云迁移。最后,云安全态势管理部分(第5章)介绍了CSPM功能、这些功能所支持的各种网络安全结果、可选应用程序等,以支持云资源、应用程序和数据的安全管理,同时促进零信任安全原则的采用。
《云安全技术参考架构》重点关注云现代化,支持联邦机构在快速发展的技术环境中持续发展。
附录A—场景
以下三个云中使用场景分别针对联合身份管理、微服务和温备站点,有意缩小了范围,并未涵盖所有可能的实现。
联合身份管理
身份管理是企业安全的关键组成部分。在云迁移过程中,机构必须决定如何管理所涉及的多个域、服务和应用程序中的身份。
以前,软件多从厂商那里购买,安装在传统的企业环境中。现在,机构正在走出传统的内部环境,购买云服务商或厂商的外部SaaS服务。若缺乏综合身份认证方案,则每一业务环境都需要身份服务,导致机构中的每个用户都具有多个身份。
管理这些身份是一大负担,要减轻这一负担,可采取联合身份管理。使用最新版本的SAML和OpenID等身份认证标准,应用程序和服务可以跨域使用单一身份服务进行身份认证。然而,单一身份服务并不意味着机构可以—或者应该—只使用一种身份服务。应考虑多重因素,确定需要多少身份服务来满足机构的系统要求。认证标准在身份服务和各域或服务商之间建立信任关系。
如图15所示,用户请求访问某服务,该服务与管理身份的身份服务具有信任关系。根据身份认证的实现方式,用户可在服务处输入凭据,服务将凭证传递给身份服务,或者用户被重定向至身份服务,然后再返回服务商处。身份服务和服务商之间存在信任关系,服务商接受用户登录,因为用户凭证已经过身份服务认证。
图15:联合身份管理
实施注意事项:
还可以采用单点登录,减少员工因工作需要在应用程序和服务之间切换而要不停登录的麻烦。
抗网络钓鱼的多因素身份认证可以集成到联合身份管理方案中。
身份管理集中在企业的特定位置,而不是在各域或应用程序中,简化了新员工入职或关闭离职人员访问权限时的身份管理。
查看集中式身份认证日志可以快速分析用户活动,发现可疑的登录或登录尝试,与之相反的是通过部署服务来收集跨域或服务的身份认证日志进行分析。
联合身份认证系统若被攻陷会为攻击者提供便利,例如,他们可以利用获取的用户凭证访问其他服务。
并非所有服务或应用程序都需要使用联合身份管理。某些情况下,最好的办法是为高安全性服务、应用程序或信息提供单独的身份认证域。
微服务
一家拥有成熟开发和DevOps团队的机构在向云迁移时希望实施零信任架构(ZTA),以更好地保护其资产。该机构意欲将这项技术与其现有基础设施相结合,最大限度地降低成本,同时应对日益增长的服务需求,保持对新需求的灵活性。
传统上,此类机构会采用整体架构;添加任何服务都必须修改中央代码库,而中央代码库通常不易更改、扩展。此外,配置的网络策略严格要求在本地手动执行配置。服务配置同样需要在各个设备上分别执行,往往导致一致性错误,加大策略管理难度。采用具有服务网格等补充功能的微服务架构可实现集中配置,根据机构要求将配置统一下发到联网设备或下发到特定设备。
机构决定利用具有安全认证和授权框架的服务网格来管理不同的服务。所有微服务都不受信任,因此带有边车代理的服务网格提供了额外的安全,增强了独立开发和部署:
在这一场景中,网格为IaC和策略即代码(Policy-as-Code)部署DevSecOps管道提供了能力,从一开始就将安全性纳入其中。微服务的本质是“微如原子”,且独立运行。每个微服务执行一项独特的业务功能。因此,微服务的开发具有分散型特点,通常由各自独立的小团队针对不同服务分别开发代码。
网格将数据分析管道划分为不同阶段,弥补了基于微服务的架构的不足。此功能解决了规模化收集和评估各种不同的非结构化数据的难题。这种架构可应用于不同的专业领域,如物联网或SCADA等资源受限环境。
图16为实施示例;服务网格通过每个服务安装的边车代理来实现(图中双向箭头处)。边车代理是从主架构中抽象出某些特性(如服务间通信、监控和安全)的应用程序,从整体上降低应用程序的跟踪和维护难度。通过这种机制,网络和安全策略可以细粒度地推送到微服务。每个微服务都可由不同的开发团队开发,使用自己的专用数据存储。机构可以通过统一管理微服务接口的API网关访问业务功能。
图16:微服务
实施注意事项:
如果机构希望将安全功能集成到微服务中,应考虑每项安全服务的要求,了解引入的风险。例如,通过反向代理在上述基于微服务的架构中引入跨容器TLS加密可能会造成单点故障。因此,应将该措施与传输未加密数据的风险进行权衡。
由于微服务的设计本质上是每个服务独立开发,数据一致性可能成为问题。机构应在数据的可用性和一致性之间做出权衡,根据自己的需要选择合适的策略。为保证一致性,可以采用滚动数据更新策略,使用单独的功能来评估和更新分布式数据库。
温备份
某机构想要在紧急情况和高使用率情况下,根据需要将工作负载无缝切换到云中的温备站点。该温备站点须定期更新,并且在故障切换后尽可能更新现场的在用系统。
图17:云温备站点的同步和故障切换
云温备站点应同步以复制安全管理、网络访问、服务网关和数据存储功能;但数据操作功能不在此列。
通常,要求高可用性(HA)运行的机构会设置一个热备站点,补充主系统故障切换时的性能,接管主系统流量。在这些热备站点中,基础设施的副本会立即同步(注意图17的机构主站点基础设施复制),流量会均匀地分配到所有副本,通过负载均衡提高网络性能。这种负载均衡还通过防护拒绝服务和实施移动目标防御技术来提高安全性。
冷备站点长期存储数据,访问不频繁;热备站点使用完整、即时、镜像的工具,而温备站点可在低可用性或极度不利条件下实现连续操作。这些温备站点所需的容量比典型运行要低:仅处理流量和基本的只读请求,同时恢复系统并生成更多副本。温备站点将安全管理(如防火墙)、网络访问(如路由器)、服务网关(如Web服务器)和服务数据与主站点同步,同步频率依次降低,例如,安全管理系统必须立即更新,以确保正确配置,而服务数据系统不应立即更新,以防止被攻击者破坏的数据得到传播。
除了传统的热备站点故障切换和负载均衡系统之外,可使用基于云的温备站点来管理故障切换,如图17所示。请注意,云环境不应支持数据的计算和操作。在这种情况下,对温备站点使用IaaS,但也可以部署其他服务。
实施注意事项:
温备站点可确保在最坏情况下的运行连续性,同时保留原始配置,让入侵环境保持不变,助力响应和恢复。
对数据应主要开放只读权限,因为写入操作可能会进一步破坏敏感数据,也因为在不同环境中运行而没有实时同步时可能会导致云环境和传统环境存储的数据不一致。
机构可以首先在云环境中实施主从故障切换措施,再利用CSPM功能,如安全和风险评估以及DevSecOps,以此提高安全性而不改变现有基础设施,因为机构网络未来会扩展到云中的温备站点。
要确保紧急情况发生之前和期间进行妥善的配置和管理,机构将需要熟悉同步、访问管理、能力实施以及CSP环境常见漏洞和限制的人员。这些人员能够帮助机构进一步云化系统。
附录B—词汇表和缩略语
本词汇表包含本技术参考架构中使用的云相关术语和定义。
应用程序编程接口(API): 系统接入点或库函数,具有清晰定义的语法,可从应用程序或用户代码访问,提供明确定义的特定功能。
认证域:允许用户、进程或系统访问另一进程或系统的独特身份认证形式。
运营权限(ATO):由组织的高级官员作出的官方管理决定,授权信息系统运营,并明确接受对组织运营(包括使命、职能、形象或声誉)、组织资产、个人、其他组织和国家的风险,前提是实施商定的安全控制措施。
授权范围:由授权人授权运营的信息系统的所有组件,不包括与信息系统相连的单独授权的系统。
云访问安全代理(CASB):用于管理安全数据访问的软件工具,该工具具有记录保存功能,使用更新的加密密钥和日志记录来管理访问。
云安全态势管理(CSPM):监控云环境的连续过程;识别、告警和缓解云漏洞;提升云安全。
云服务商(CSP): 为客户提供平台、基础设施、应用程序和/或存储服务的外部公司。
内容交付网络(CDN): 一种互连网络,将缓存的文件或服务推送到不同位置,实现安全、快速、高效的数据传输。
持续集成(CI):在软件开发中对多个团队代码的修改进行自动化和集成的过程。
持续交付(CD):将新软件快速发送到生产环境中、自动交付应用程序的过程。
持续监控(ConMon):每月一次向联合授权委员会(JAB)和授权人(AO)汇报系统安全情况,确保CSP持续维护其FedRAMP授权系统的安全。
桌面即服务(DaaS):桌面即服务(DaaS)是一种云计算服务,服务商采用按用户订阅许可模式,通过互联网向终端用户提供虚拟桌面。
开发、安全和运营(DevSecOps):一种软件开发理念,将代码编写与代码测试、保护和部署紧密结合在一起。
数字服务:通用术语,指利用各种平台、设备、交付机制(如网站、移动应用程序和社交媒体)交付数字信息(即数据或内容)和/或事务性服务(例如在线表单、福利申请)的应用程序/服务。与CSP服务同义。
联邦文职行政部门(FCEB):美国联邦部门和机构的子集,不包括国防部和情报机构。
身份、凭证和访问管理(ICAM);这是一项基本但关键的网络安全能力,确保正确的人和物在合理的时间以正当的理由访问正确的资源,以支持联邦商业目标。
基础设施即服务(IaaS):提供给消费者处理、存储、网络等基本计算资源,消费者能够在这些资源中部署和运行自己的软件,包括操作系统和应用程序。消费者不管理或控制底层云基础设施,但可以控制操作系统、存储和部署的应用程序;可能对特定网络组件(例如主机防火墙)具有有限的控制权。
基础设施即代码(IaC): 使用机器可读配置文件而非物理硬件配置或交互式配置工具来管理和调配组织的IT基础设施。
入侵检测和防御系统(IDS/IPS):自动监控、分析计算机系统或网络中发生的事件并对检测到的疑似攻击进行拦截的软件。
最小权限:授予各实体执行其功能所需的最少系统资源和最小权限的设计原则。
多因素身份认证(MFA): 要求进行一种以上的认证才能成功认证的认证系统。可以使用多因素认证器或组合使用提供不同认证因素的认证器来实现多因素认证。
平台即服务(PaaS):允许消费者使用服务商支持的编程语言、库、服务和工具在云基础设施上部署自制或获取的应用程序的能力。消费者不管理或控制底层云基础设施,包括网络、服务器、操作系统或存储,但可以控制部署的应用程序,还可能控制应用程序托管环境的配置设置。
公钥基础设施(PKI):共同支持基于证书的公钥密码系统的实现和运行的架构、组织、技术、实践和过程。为颁发、维护和撤销公钥证书而建立的框架。
数据采集与监控系统(SCADA):由计算机、网络数据通信和图形用户界面组成的控制系统架构,对机器和过程进行总体监控。
服务等级协议(SLA):定义了服务商具体责任、设定了客户期望的服务合同。
服务网格:专用的基础设施层,提供独立于应用程序代码的网络策略、流量和服务间通信的配置。服务网格支持微服务架构。
软件即服务(SaaS):允许消费者使用云基础设施上运行的提供商应用程序的能力。这些应用程序可以通过Web浏览器(例如基于Web的电子邮件)之类瘦客户端接或程序接口从各种客户端设备访问。消费者不管理或控制底层云基础设施,包括网络、服务器、操作系统、存储,甚至是单个应用程序功能,但可能对部分用户特定应用程序配置设置具有管理或控制权限。
遥测:衍生自安全功能的工件,提供对安全态势的可见性。
可见性:指技术可见性(例如资产、用户、系统、数据、日志等)、操作可见性(例如使用、关键性、风险等)和组织可见性(例如使命功能、运营、优先级等),尽管可以特指其中之一,但通常关心的是三者组合的情况。
零信任:一整套概念和思想,旨在最大程度地减少网络被入侵时在信息系统和服务中就每一访问请求执行精确、最小权限的决策时的不确定性。
零信任架构:建立在零信任概念上的企业的网络安全计划,包括组件关系、工作流规划和访问策略。因此,零信任企业指企业根据零信任架构计划部署网络基础设施(物理和虚拟)和运营策略。
发布机构:美国网络安全和基础设施安全局&美国数字服务处&联邦风险和授权管理计划
发布日期:2022年6月
免责声明:该文章原文版权归原作者所有。文章内容仅代表原作者个人观点。本译文仅以分享先进网络安全理念为目的,为业内人士提供参考,促进思考与交流,不作任何商用。如有侵权事宜沟通,请联系littlebee@nsfocus.com邮箱。
译者简介:小蜜蜂翻译组公益译文项目,旨在分享国外先进网络安全理念、规划、框架、技术标准与实践,将网络安全战略性文档翻译为中文,为网络安全从业人员提供参考,促进国内安全组织在相关方面的思考和交流。
声明:本文来自网安罗盘,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。