美国《关键软件定义规范》简析 – 作者:绿盟科技

2021年6月25日,美国国家标准与技术研究院(NIST)正式发布《关键软件定义规范》,对“关键软件”的内涵、外延进行了界定和说明,成为美国加强软件供应链管理的一项重要依据。

一、背景简述

从微观行为看,发布该规范是为落实总统令要求而开展的一项具体工作。5月12日,美国总统拜登签发了《改进国家网络安全行政令》(Executive Order on Improving the Nation’s Cybersecurity,以下简称EO),其中明确要求商务部在45天内制定发布“关键软件”的定义文件,以此作为加强美国联邦软件供应链安全管理工作的基础。并以此推开,逐步建立健全美国联邦政府软件供应链安全管理的制度和规范体系。

从宏观态势看,该规范的发布也反映了当前美国正部署应对网络安全形势的新变化。即:网络安全攻击在攻击对象、攻击手段上不断拓展。从攻击对象看,网络攻击行为除了持续青睐关键基础设施以谋求扩大声势、获取高额经济收益外,还加大了对关键供应链环节的攻击,如针对某些通用性较强的关键软件产品发起网络攻击,可以产生巨大连带作用和级联效应,使攻击获得事半功倍的效果。

二、基本原则和思路

从规范文件内容和制定过程来看,NIST作为美国联邦负责标准工作的专业机构,在推进“关键软件”定义文件制定过程中,主要遵循了以下原则和思路。

一是协同合作的工作原则。按照EO的要求,定义“关键软件”是开展软件供应链安全管理的第一步,是诸多部门协同工作的一个环节。因此,按照部门职责分工推进就成为定义“关键软件”工作的首要原则。在文件起草过程中,NIST通过主办虚拟研讨会,广泛收集、听取和磋商意见,参与部门包括网络与基础设施安全局(CISA)、国家情报总监办公室(ODNI)、国家安全局(NSA)等;在文件内容衔接上,NIST在《关键软件定义规范》中明确该定义的内涵和外延作为“初始阶段”,后续软件产品“权威列表”由CISA制定;在后续工作开展上,该文件提出的关键软件定义将依托CISA和OMB起草的附加指南予以实施。

二是清晰可行的内容原则。NIST将“清晰”和“可行”作为定义“关键软件”时应把握的两大标准。所谓“清晰”是指定义要明确易懂,方便“软件业和政府使用”;所谓“可行”是指要充分考虑到软件产品采购、开发、部署方式,以及软件产品的模块化、组件化等特点。

三是阶段化的实施原则。NIST基于“软件市场的规模、范围和复杂性,以及政府内部实施所需的基础设施情况”的考虑,通过与相关部门协商明确了“阶段化推进”的实施原则。如此一来,既能够照顾到软件安全管理工作基础,又能够通过及时反馈的方式最大限度确保“关键软件”定义的科学性。

三、内容要点

《关键软件定义规范》从内涵、适用范围和外延三个方面,对“关键软件”进行了界定。

(一)内涵

《关键软件定义规范》采用特征描述的方式,对“关键软件”的五个主要属性进行了列举。即:关键软件是指具有或直接依赖于一个或多个组件的软件,这些组件须满足以下至少一种属性:

设计之初就能够以提升的权限或管理权限运行;

具备对网络或计算资源的直接访问或特权访问权限;

旨在控制对数据或操作技术的访问;

执行的功能对信任至关重要

运行时具有正常信任边界之外的访问特权。

在这五个特征属性中,“对信任至关重要”主要是指涵盖安全功能的软件类别,例如网络控制、端点安全和网络保护等;其余四个属性主要是从软件所具有的相关特殊权限角度进行描述。

(二)适用范围

一是关于软件类别的适用范围。《关键软件定义规范》对于“关键软件”的适用范围进行了限定,即“该定义适用于为生产系统(production systems)购买或部署,并用于操作目的的所有形式的软件(例如,独立软件、与特定设备或硬件组件集成的软件、基于云的软件等)”。此处强调的“生产系统(production systems)”主要是用于区别那些“未部署在生产系统中的仅用于研究或测试的软件”。同时,即使部署在“生产系统”中,但不是出于“操作目的”运行的软件,也不是关键软件,如“用作研究主题的软件和收集用于存档的软件”等。

二是关于软件形式的适用范围。《关键软件定义规范》建议最初的阶段侧重于具有安全关键功能或在受到威胁时会造成类似重大危害的独立、本地软件。后续阶段可能涉及其他类别的软件,包括(但不限于):

控制数据访问的软件;

基于云的混合软件;

软件开发工具,例如代码存储库系统、开发工具、测试软件、集成软件、打包软件和部署软件;

引导级固件中的软件组件;

运营技术(OT)中的软件组件;等。

(三)外延

为了便于理解,《关键软件定义规范》还提出了一个关键软件功能描述及产品类型对应表,对符合当前“关键软件”定义的软件及其对应软件产品类型、纳入关键软件的理由等进行了分项说明。该“关键软件类别及产品类型表”归纳了8类关键软件,分解为对应的45种软件产品(详见下表1)。

《关键软件定义规范》特别强调之处在于,本表旨在说明关键软件的定义,涉及到的产品列表仅作为初始实施阶段的范围参考,软件产品类别的权威列表将由CISA在稍后提供。

1627528625_61021db1cbe7e9a7a233e.png!small

1627528664_61021dd83373d99bb37a1.png!small

1627528682_61021deabed35423b43bb.png!small

四、后续展望

《关键软件定义规范》的发布,是美国提升软件供应链安全系列行动的一个环节。该规范发布后,将会呈现两类工作并行开展的软件供应链安全管理格局。

一方面,按照EO的要求,美国相关主管部门还将陆续发布一系列标准规范,全面加强对以“关键软件”为核心的供应链安全规范指导(详见下表2)。

图片[4]-美国《关键软件定义规范》简析 – 作者:绿盟科技-安全小百科

另一方面,在行政令要求的范围之外,NIST原本也已确立了一个长期项目,专注于为网络供应链风险管理、软件质量和安全控制等实践提供标准和规范指南。并规划了关键成果时间表(详见下表3)。

图片[5]-美国《关键软件定义规范》简析 – 作者:绿盟科技-安全小百科

不难预见,美国在“关键软件”供应链安全管理方面,将会有多个职能部门持续、高频推出系列管理标准依据。在规范对象、适用范围、管理手段等诸多方面也将呈现多种创新。其更为深远的意义在于,美国对于软件供应链安全管理方面的实践,也将会在世界范围内产生示范效应,推进各国完善相关管理机制和规范、并加强相应供给能力建设。

来源:freebuf.com 2021-07-29 11:22:24 by: 绿盟科技

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论