• 关键技术领域 – 有效采用领域 o 可信人工智能和自主性 o 集成网络系统 o 微电子 o 空间技术 o 可再生能源发电和存储 o 先进计算和软件 o 人机界面 – 新兴机遇的种子领域 o 生物技术 o 量子科学 o 未来一代无线技术 (FutureG) o 先进材料 – 国防专用领域 o 定向能 o 高超音速 o 集成传感和网络
鉴于关键基础设施中软件的使用和依赖日益增加,本报告确定了几个需要紧急采取行动的领域。为了解决这些领域,总统应该成立一个工作组,负责制定一项公私合作计划,重点关注软件保证和软件供应链的关键领域。与之前在 NIST 网络安全框架 (CSF) 3 上的公私合作努力一样,此类计划可以解决激励机制的根本错位、保证方法的多样性以及软件供应链的复杂性。这种性质的努力可以将迫切的行动需求转化为可实施的框架。
1.3 软件保障计划确定了团队将采取的步骤,以确保“在整个生命周期中,软件能够按预期运行,并且不存在有意或无意设计或作为软件一部分插入的漏洞” [软件保障定义,P.L. 112-239 § 933, 2013]。6 有时,软件保障计划是总体程序保护计划 (PPP) 文档中的一个部分。无论是 PPP 内部的一个部分还是其自己的文档,软件保障计划都应包括防止漏洞在系统中持续存在的对策。应根据明确的定义对安全关键系统和组件进行识别和分类,该定义确定了系统或组件安全关键性的原因。应根据通用漏洞枚举 (CVE ® )、7 通用弱点枚举 (CWE ™ )、8 通用攻击模式枚举和分类 (CAPEC ™ ) 9 和 CERT 规则和建议对这些组件和系统进行评估。10 存在弱点的安全组件和系统的解决方案或缓解策略应记录在软件保证计划中。在整个生命周期中,参考软件保证计划非常重要,以确保记录的步骤得到实施、准确且相关,以适当避免漏洞,并且不会产生负面影响
软件保障是指有理由相信软件在整个产品生命周期内按预期运行且没有漏洞。虽然“没有漏洞”是理想状态,但实际上目标是管理与漏洞相关的风险。为此,本指南帮助软件开发人员了解对软件保障的期望。由于开发人员需要了解其项目所处的监管背景,本指南总结了影响软件保障决策的标准和要求,并提供了开发人员应参考的关键资源的指示。它包括软件漏洞检测、测试和评估最新资源 (SOAR) 报告的摘要,以及其选择工具的方法。还提供了一种自下而上的工具选择方法,该方法考虑了在开发或产品生命周期的不同阶段通常适合哪些活动和工具。提供了针对特殊生命周期考虑因素(例如新开发和系统再造)的建议,并讨论了在开发过程中选择和应用工具或技术可能有用的指标。专门章节介绍了软件维持和软件采购的保障。附录中提供了补充材料。