你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft Foundry 的漏洞管理

注释

本文档仅指的是 Microsoft Foundry (经典) 门户。

本文档还特定于 基于中心的项目,不适用于 Foundry 项目。 请参阅 如何知道我拥有哪种类型的项目?创建基于中心的项目

漏洞管理是检测、评估、缓解和报告组织系统和软件中的安全漏洞的过程。 你和Microsoft分担这一责任。

本文介绍 Foundry 提供的责任和漏洞管理控制。 了解如何使用最新的安全更新使服务实例和应用保持最新状态,并减少网络攻击者的机会窗口。

先决条件

若要管理 Foundry 环境中的漏洞,需要:

  • Azure 订阅服务
  • 铸造厂中心或项目
  • 在 Foundry 中心或项目中负责管理计算资源的“参与者”或“所有者”角色
  • Azure CLI 或访问 Foundry 门户进行计算管理
  • 对于重新创建计算实例:创建和删除计算实例的权限(Microsoft.MachineLearningServices/workspaces/computes/writeMicrosoft.MachineLearningServices/workspaces/computes/delete

Microsoft 管理的 VM 映像

Microsoft 会管理计算实例和无服务器计算群集的主机 OS 虚拟机 (VM) 映像。 更新每月进行,包括以下详细信息:

  • 对于每个新的 VM 映像版本,Microsoft 从原始发布者处获取最新的操作系统更新。 使用最新更新有助于确保获取所有适用的 OS 修补程序。 对于 Foundry,Canonical 发布所有 Ubuntu 映像。

  • VM 映像每月更新一次。

  • 除了发布者的修补程序外,Microsoft 会在更新可用时更新系统包。

  • Microsoft 会检查并验证任何可能需要升级的机器学习包。 在大多数情况下,新的 VM 映像包含最新的包版本。

  • 所有 VM 映像构建在定期运行漏洞扫描的安全订阅基础之上。 Microsoft 会标记任何未修复的漏洞,并在下一版本中对其进行修复。

  • 大多数映像使用每月发布节奏。 对于计算实例,映像发布与环境中预装的 Azure 机器学习 SDK 发布频率保持一致。

Microsoft 还会在漏洞出现时应用修补程序。 Microsoft 会在 72 小时内为无服务器计算群集推出修补程序,计算实例则是一周内。

注释

主机 OS 不是你训练或部署模型时为环境指定的 OS 版本。 环境在 Docker 内运行。 Docker 在主机 OS 上运行。

Microsoft 管理的容器映像

Microsoft 维护的用于 Foundry 的基本 Docker 映像接收频繁的安全补丁,以修复新发现的漏洞。

Microsoft 每两周更新一次支持的映像来修复漏洞。 目标是在最新支持的映像中,零个超过 30 天的漏洞。

Microsoft 发布带有新的不可变标记和更新的 :latest 标记的修补映像。 使用 :latest 标记或固定特定映像版本是机器学习作业在安全性和环境可重现性之间的权衡。

管理环境和容器映像

在 Foundry 门户中,Docker 映像为 Prompt Flow 部署提供了运行环境。 这些映像从 Foundry 基础映像开始。

尽管 Microsoft 每次发布都会修补基础映像,但使用最新映像是可重现性和漏洞管理之间的权衡。 你负责为作业或模型部署选择环境版本。

默认情况下,生成映像时,依赖项分层在基础映像之上。 在 Microsoft 提供的映像上安装额外的依赖项后,你负责漏洞管理。

中心包含用于缓存容器映像的 Azure 容器注册表实例。 生成映像时,将其推送到容器注册表。 部署相应环境时,工作区使用缓存的映像。

该中心不会从容器注册表中删除任何映像。 查看一段时间内每个映像的需求。 若要监视和维持环境的清洁状况,请使用适用于容器注册表的 Microsoft Defender 来扫描映像中的漏洞。 若要基于 Microsoft Defender 触发器自动执行进程,请参阅自动修正响应

计算主机上的漏洞管理

Foundry 门户中的托管计算节点使用Microsoft托管的 OS VM 镜像。 预配节点时,它会拉取最新的 VM 映像。 此行为适用于计算实例、无服务器计算群集和托管推理计算。

尽管Microsoft定期修补 OS VM 映像,但在使用时,它不会主动扫描计算节点是否存在漏洞。 如需额外的保护层,请考虑计算节点的网络隔离。

确保环境保持最新并且计算节点使用最新 OS 版本是你与 Microsoft 之间的共同责任。 该服务不会将繁忙节点更新到最新的 VM 映像。 针对每种计算类型的注意事项略有不同,具体请参阅以下部分。

计算实例

预配时,计算实例会获取最新的 VM 映像。 Microsoft 每月发布新的 VM 映像。 部署计算实例后,它不会收到正在进行的映像更新。 若要随时了解最新的软件更新和安全修补程序,请使用以下方法之一:

  • 重新创建计算实例以获取最新的 OS 映像(推荐)。

    如果使用此方法,则会丢失存储在实例 OS 磁盘和临时磁盘上的数据和自定义项(如已安装的包)。

    有关映像版本的详细信息,请参阅 Azure 机器学习计算实例映像发行说明

  • 定期更新 OS 和 Python 包。

    连接到计算实例终端并运行以下命令以更新包:

    • 使用最新版本更新包列表:

      sudo apt-get update
      

      预期输出:从存储库刷新包列表。

    • 将包升级到最新版本。 使用这种方法时,可能会发生软件包冲突:

      sudo apt-get upgrade
      

      预期输出:下载并安装包。 系统可能会提示你确认安装。

    • 检查过时的 Python 包:

      pip list --outdated
      

      预期输出:具有可用更新的包列表,如果所有包都是最新的,则为空输出。

    参考apt-get 文档pip list 文档

    若要验证是否已成功应用更新,请运行:

    # Check for remaining upgradable packages
    sudo apt list --upgradable
    

    预期输出:未列出任何包意味着将应用所有更新。

在计算实例上安装并运行其他扫描软件以扫描安全问题:

  • 使用 Trivy 发现 OS 和 Python 包级别的漏洞。 有关快速入门和用法示例,请参阅 Trivy 文档
  • 使用 ClamAV 发现恶意软件。 它预安装在计算实例上。 有关使用指南,请参阅 ClamAV 文档

有关合并 Trivy 和 ClamAV 的自动化示例,请参阅 计算实例示例设置脚本

不支持安装 Microsoft Defender for Servers 代理。

端点

终结点自动接收具有漏洞修复的 OS 主机映像更新。 Microsoft 每月至少更新一次映像。

计算节点在发布时自动升级到最新的 VM 映像版本。 你不必执行任何操作。