初识现成软件清单(SBOM).docxVIP

  • 168
  • 0
  • 约3.86千字
  • 约 4页
  • 2022-10-23 发布于四川
  • 举报
PAGE2 / NUMPAGES2 初识现成软件清单(SBOM) 【RREFACE】 熟悉《医疗器械网络安全注册审查指导原则》(2022年修订版)1的都知道,该指导原则中明确了医疗器械制造商需要识别的医疗器械网络安全能力应当包括现成软件清单(SBOM),并解释了SBOM是指”产品为用户提供全部现成软件清单的能力”。该网络安全能力为本修订版中新增内容。但是,该指导原则并未就SBOM应该采用什么形式,包括什么内容做进一步的明确。企业在软件开发过程中,对现成软件的使用是比较常见的现象,更准确的说是指开源软件(Open Source Software,缩写OSS)。现代软件系统与日益复杂且动态变化的软件供应链息息相关,而OSS就是软件供应链中最基础的环节。据Synopsys监测,开源代码占代码总量在2019年就接近70%,并以每年3%左右递增。之所以广泛使用OSS,是因为它提供了更快的创新和更高质量的产品。但是,大多数管理者通常不太关注开发团队在开发过程中是否使用OSS,具体使用了哪些OSS,是否存在安全漏洞等。使用OSS缺乏安全评估、法务评估和引入流程,软件供应商无法在开发阶段及时规避这些风险,这无形中给拟开发和待交付给客户的软件带来了难以预知的安全隐患。当有漏洞被揭露时,很少有企业可以快速、准确地定位并响应一些关键性问题。例如,产品是否受到该漏洞的影响,该漏洞影响了哪些产品线,哪些软件的版本是否存在这些问题等。实际上该问题的根源在于未在开发阶段管理软件产品的组成,缺乏对软件系统组件和功能的全局可见性所造成的。从而大幅增加了网络安全及开发、采购、维护与处理的成本。伴随着全球互联网规模的逐渐增加,这些风险对个人用户、相关组织,公共事务甚至国家层面的安全利益影响也越来愈大了。 【HISTORY】2018年6月,美国商务部下属的国家电信和信息管理局(National Telecommunications and Information Administation,NTIA)启动了一项旨在提升软件供应链透明度的项目,其核心理念是建立并推广“软件物料清单(Software Bill of Materials,SBOM)”体系。即通过在软件产品中提供一个技术文档,来体现该产品在开发过程中所采用的所有物料(即现成软件)、来源及供应商关系。NTIA通过成立的4个专项工作组,分别于2019年11月和2021年3月完成了两个阶段的研究报告,明确了上述理念的可行性,提出了SBOM生成和分发的维度框架,以及需要进一步明确的一些信息等。在这期间,2020年12月,还发生了基础网络管理软件供应商SolarWinds的Orion软件更新包中被黑客植入后门,攻击者通过伪造已被信任的SolarWinds令牌,欺骗并绕过防护,在目标网络环境中建立高权限账户,等待时机,以完成攻击。该事件波及范围包括政府部门,关键基础设施以及多家全球500强企业,并由此加强了人们对SBOM的关注。2021年5月12日美国总统拜登签署了旨在加强美国网络安全实践,保护美国联邦政府系统的第14028号行政令《关于改善国家网络安全的行政命令》2,其中明确要求,任何向联邦政府销售软件产品的组织都必须提供SBOM。该法案明确了“SBOM”是一份规范的清单,其中包含构建软件中使用的各种组件的详细信息和层次依赖信息,且这些信息可被机器读取识别。这些组件、库和模块,可以是开源的或私有的、免费的或付费的,并且被广泛应用或受到访问限制使用。软件开发人员和供应商通常通过组装现有的开源和商业软件组件来创建产品。同年10月21日美国联邦政府国家电信和信息管理局(NTIA)公布了《构建软件组件透明度:建立通用软件物料清单(SBOM)》(第二版)。该文件建立了一个通用的、格式化的、可操作的方法,以便识别并列出软件组件及组件信息和关系依赖的清单,从而实现对软件的组成、网络安全和知识产权等方面的有效跟踪。通用SBOM属性的具体描述如下表所示: 基线属性集:包括作者姓名、时间戳、供应商名称、组件名称、版本字符串、组件哈希值、唯一标识符、关系; 未确定的属性值:包括无断言(no assertation)、没有值(no value); 映射现有的格式:基线属性信息映射到SPDX、SWID等现有格式; 组件关系:是基线属性集中“关系”的进一步细化补充,例如:直接包含、通过链接或编译包含、修改后包含等; 附加元素:除了基线属性外,可能还需要额外的元素和组件属性,以支持不同的用例。 【INTRODUCE】软件可表示为由多个可拥有子组件的组件组成的层级树。组件通常是来自其它来源的“第三方“,但可能也是”第一方“即来自同一个供应商但可被唯一识别为独立的可追踪的软件单元。每个组件都应当拥有自己的SBOM,列出自身组件,构建层级树。数据字段

文档评论(0)

1亿VIP精品文档

相关文档