面向 NVIDIA AI Enterprise 的容器安全开发生命周期#

NVIDIA 的产品生命周期管理 (PLC) 是一个内部设计的框架,涵盖了每个产品、服务、功能和组件的基本安全活动。这些已建立的软件开发实践确保符合行业标准,并包含明确定义的阶段:计划、需求收集、设计、编码、验证、发布和运营。每个阶段都强制执行特定的工作流程、可交付成果和评审。PLC 概述了一系列旨在降低整个生命周期风险的安全要求。这些要求会定期更新,以应对新兴的安全威胁和趋势。手动和自动化流程,包括威胁和漏洞分析、安全评估和持续安全扫描,都是 PLC 不可或缺的一部分。这些流程会持续监控,以确保产品和服务在发布前达到既定的安全目标。

漏洞扫描#

NVIDIA 对容器镜像使用行业标准的漏洞扫描方法。所有已识别的软件包都会根据安全信息源进行扫描,以准确检测已知漏洞。为了减少此类扫描工作固有的噪音,使用了以下应用严重性评分的逻辑

  1. 对于非操作系统软件包(例如 Python),GitHub Advisory (GHSA) 匹配和严重性确定适用于软件包中给定的已知漏洞。

  2. 对于操作系统软件包(例如 Debian),将应用特定发行版安全信息源(容器镜像基于该信息源)确定的严重性评分,例如 Ubuntu 安全公告。

  3. 对于镜像中上述 1 和 2 中没有匹配项的任何剩余软件包,将应用 NIST 国家漏洞数据库 (NVD) 及其严重性评分。

NVIDIA 的漏洞扫描在产品生命周期的三个不同阶段进行:开发期间的迭代扫描、发布到 NGC Catalog 过程中的扫描(发布不允许存在严重或高危漏洞),以及随后作为 NGC Catalog 上已发布容器的持续扫描的一部分。随着新漏洞的报告,这些问题会被跟踪并包含在NVIDIA 安全风险评分中。

在无法解决漏洞的情况下,例如当漏洞是最近发现的或没有可用的修复程序时,会使用带有文档的例外流程。有关更多详细信息,请参阅本文档的漏洞可利用性交换 (VEX)部分。

此外,我们在容器中的应用程序开发逻辑也遵循领先的安全实践,作为我们 PLC 的一部分,以进一步降低易受攻击代码的风险。

漏洞补丁#

在 NVIDIA,我们优先在任何发布之前修补根据通用漏洞评分系统 (CVSS) 和我们的扫描逻辑分类为严重和高危级别的漏洞。我们的补丁策略适应特定的分支类型,为功能分支提供前滚修复,并为生产分支提供计划更新(每月一次或长期支持分支每季度一次),同时确保 API 稳定性。对于某些 OSS 软件包,NVIDIA 与 Canonical 合作,为企业容器提供漏洞补丁支持。

容器构建生命周期管理#

容器构建生命周期管理是定义、部署和维护容器设置和参数的过程。NVIDIA 为我们内部使用和外部交付的各种软件产品利用开放容器倡议 (OCI) 容器。

在 NVIDIA,我们通过以下方式执行安全的构建生命周期管理

  • 应用最小特权原则,包括在容器内使用非 root 用户和限制文件系统权限

  • 定期使用最新的补丁更新容器镜像,扫描漏洞,并使用可信来源的镜像仓库

我们对构建和强化这些类别的 OCI 容器使用不同的要求集,以平衡安全风险及其预期用例的价值。

软件物料清单 (SBOM)#

软件物料清单 (SBOM) 是构成软件产品的组件和依赖项列表。SBOM 帮助软件开发人员、供应商和用户识别和管理与软件组件相关的安全和许可风险。NVIDIA AI Enterprise 容器在发布过程中会进行 SBOM 审查,以帮助维护构建中包含的组件的准确列表。

企业容器的 SBOM 可通过 NGC Catalog 下载。

_images/ai-enterprise-security-02.png

图 2. NGC Catalog 上企业容器的 SBOM#

容器签名#

对容器镜像进行签名会向镜像添加数字签名。这是一项关键的安全措施,可确保容器的完整性和真实性。它表明容器源自可信来源,并且未被篡改。对于客户而言,在部署之前验证这些签名对于防止将恶意或受损代码引入其环境至关重要。此过程有助于维护对供应链的信任,并降低与部署不受信任的软件相关的风险。

NGC Catalog 上发布的所有 NVIDIA 容器镜像均由 NVIDIA 签名。可以使用 标准开源工具使用 NVIDIA 的公钥进行验证

漏洞可利用性交换 (VEX)#

NVIDIA 通过在漏洞可利用性交换 (VEX) 文档中提供详细的建议和可利用性信息,扩展了其对安全的承诺。与 CVE 条目不同,VEX 文档提供了关于漏洞的特定于上下文的见解,识别了它们在 AI 堆栈特定组件中的相关性和可利用性。在 CyclonDX 格式的促进下,这实现了有效、机器可读的通信,增强了我们客户的安全态势。

NVIDIA 在以下情况下发布 VEX 文档

  • NVIDIA 已修补开源软件组件。但是,客户的容器扫描器可能仍将此组件识别为易受攻击,因此这在 VEX 文档中注明。

  • 检测到的漏洞无法被利用,因为存在缓解情况。

  • 检测到的漏洞是误报。

_images/ai-enterprise-security-03.png

图 3. NGC Catalog 上企业容器的 VEX#

协同漏洞披露#

NVIDIA 产品安全事件响应团队 (PSIRT) 管理与 NVIDIA 产品相关的潜在安全漏洞的接收、调查、内部协调、修复和披露。该团队的目标是通过及时通知、指导和修复我们产品和服务中的漏洞,最大限度地降低客户与安全漏洞相关的风险。PSIRT 遵循 ISO/IEC 29147/30111。

安全事件监控#

客户应联系 NVIDIA 企业支持,以正确路由 NVIDIA 产品中的安全相关问题。

NGC 通知服务#

NGC 通知服务功能使 NVIDIA AI Enterprise 用户能够订阅电子邮件通知,以接收服务变更事件。通过订阅通知,用户可以随时了解 NGC 云平台及其服务的最新变更和发展。NGC 客户可以获知以下类型的变更

  • 影响客户的服务增强功能(发行说明)

  • 安全漏洞 (CVE) 和扫描报告

  • 软件生命周期结束公告

  • 计划的 NGC 属性 Web 门户维护

_images/ai-enterprise-security-04.png

图 4. NGC Catalog 上企业用户的可用通知服务#