医疗器械 SBOM 与威胁建模
Sytance · 更新于
SBOM 识别软件组件和依赖关系。威胁模型则说明攻击者如何针对器械、软件系统、用户、环境或更新路径发起攻击,以及攻击对器械安全、性能或网络安全有何影响。
SBOM 和威胁模型是不同记录
了解组件在器械中的作用后,才能分析组件漏洞对具体器械的影响。网络解析器可能直接接收不可信输入;同一库在构建时排除受影响功能后,暴露情况可能不同。SBOM 识别组件,威胁模型则提供调查这些差异所需的架构信息。
NTIA 将 SBOM 定义为机器可读的软件组件及其关系清单。在器械评估中,它帮助确认实际包含哪些软件,以及应从何处查找供应商或漏洞信息。
SBOM
记录组件名称、供应商、版本、标识符、哈希、依赖关系和作者信息,供制造商和客户跟踪组件可能受到的威胁及其支持状态。
威胁模型
记录资产、参与者、信任边界、数据流、接口、攻击路径、威胁、缓解措施、假设和剩余风险决定。
安全架构
显示认证、授权、加密、日志、更新保护和恢复等控制如何布置在系统和相关服务中。
风险管理
决定剩余风险是否可接受,以及网络安全发现如何影响安全、性能、标签、上市后监督和补救。
上市前文件需要把记录连接起来
FDA 当前上市前指南期望结合 SBOM、威胁模型、网络安全风险评估、架构和测试证据开展评估。对于第 524B 条所称的 cyber device,SBOM 是法定申报内容,必须包括商业、开源和现成软件组件。
- 威胁模型应覆盖器械系统、外部实体、部署、互操作、维护、更新、供应链假设和退役。
- SBOM 应包括制造商开发和第三方组件、上游依赖、支持状态,以及评估已知漏洞所需信息。
- 架构视图应说明接口、协议、信任边界、用户、控制、相关系统和更新路径。
- 测试应验证所选安全控制和威胁缓解措施是否有效,并在相关时采用漏洞测试和渗透测试。
SBOM 条目应能追溯到组件在架构中的位置和相关漏洞分析。通过这些关联,组件清单才能用于威胁建模、测试、标签信息和上市后管理。
上市后记录用于实际运行
发布后,SBOM 和威胁模型用于评估在用器械。供应商、开源包、商业组件或操作系统依赖发生变化时,SBOM 帮助识别器械可能受到的影响。威胁模型则用于判断,在实际器械架构和使用环境中,这些影响是否可能造成患者伤害。
先确认器械是否包含受影响的版本和代码,再分析攻击者如何触达它们。评估现有措施与可能的患者伤害。结论适用于已分析的配置,仍在使用的其他版本可能需要单独评估。
当新漏洞、新攻击技术、部署假设变化、新接口、新云服务或更新路径改变风险情况时,应更新威胁模型。
漏洞可利用性交换信息(VEX)用于传达特定漏洞对指定产品的影响判断。应明确涉及的版本与配置,以及接收方需要维持的条件。需要处置时,说明用户可以采用的更新或其他措施。
保持记录可用
SBOM 和威胁模型应明确对应的产品版本,并在发布后保持更新。SBOM 还需要采用机器可读格式。两类记录都应与风险管理文件关联。
NTIA 2021 年基线列出供应商名称、组件名称、版本字符串、组件标识符、依赖关系、作者名称和时间戳等数据元素。FDA 还期望提供与具体器械有关的信息,例如软件支持状态、已知漏洞,以及组件与器械风险控制的关系。
模型应说明攻击者如何触达器械功能,以及哪些措施能够阻止或限制相关操作。先描述器械与连接系统,再将每个攻击场景与成立条件、所选措施及剩余风险关联。
- 离线器械仍可能通过更新或维护接口接收恶意输入,威胁模型需要分析这些路径。
- SBOM 未列出已知严重 CVE,并不能说明是否存在设计缺陷或访问控制缺失。仍需结合架构分析这些威胁。
- 渗透测试报告适用于注明的范围与配置。应结合设计分析及后续维护措施使用这些结果。
- 防护依赖客户网络时,应明确所需措施并检查其能否处理相应威胁,同时告知客户需要维持的条件。