安全建议 - 参考指南

本文列出了 Azure 安全中心可能会显示的建议。 环境中显示的建议取决于要保护的资源和自定义的配置。

安全中心的建议以 Azure 安全基准为基础。 Azure 安全基准是由 Microsoft 创作的特定于 Azure 的一组准则,适用于基于常见合规框架的安全与合规最佳做法。 这一公认的基准建立在 Internet 安全中心 (CIS)国家标准与技术研究院 (NIST) 的控制基础上,重点关注以云为中心的安全性。

若要了解如何响应这些建议,请参阅 Azure 安全中心的修正建议

安全分数基于已完成的安全中心建议的数量。 若要确定首先要解决的建议,请查看每个建议的严重级别及其对安全分数的潜在影响。

提示

如果建议的描述中显示“无相关策略”,通常是因为该建议依赖于另一个建议及其策略。 例如,建议“应修正 Endpoint Protection 运行状况失败...”依赖于建议“应安装 Endpoint Protection 解决方案...”,后者检查 Endpoint Protection 解决方案是否已安装。 基础建议 确实 具有一个策略。 将策略限制为仅限基础建议可简化策略管理。

计算建议

这一类别有 98 条相关建议。

建议 说明 严重性
应在计算机中启用自适应应用程序控制以定义安全应用程序 启用应用程序控制,以定义计算机中正在运行的已知安全应用程序列表,并在其他应用程序运行时向你发出警报。 这有助于强化计算机免受恶意软件的侵害。 为了简化配置和维护规则的过程,安全中心使用机器学习来分析在每台计算机上运行的应用程序,并建议已知安全应用程序的列表。
(相关策略:应在计算机中启用自适应应用程序控制以定义安全应用程序
应更新自适应应用程序控制策略中的允许列表规则 监视配置为供 Azure 安全中心的自适应应用程序控制进行审核的计算机组是否有行为变化。 安全中心使用机器学习来分析计算机上的运行过程,并建议已知安全应用程序的列表。 这些应用程序作为推荐的应用显示,在自适应应用程序控制策略中允许使用。
(相关策略:应更新自适应应用程序控制策略中的允许列表规则
只能通过 HTTPS 访问 API 应用 使用 HTTPS 可确保执行服务器/服务身份验证服务,并保护传输中的数据不受网络层窃听攻击威胁。
(相关策略:应只能通过 HTTPS 访问 API 应用
中型
自动化帐户变量应进行加密 存储敏感数据时,请务必启用自动化帐户变量资产加密。
(相关策略:应加密自动化帐户变量
应为虚拟机启用 Azure 备份 使用 Azure 备份来保护 Azure 虚拟机上的数据。
Azure 备份是一种 Azure 原生且经济高效的数据保护解决方案。
它可创建恢复点,这些恢复点存储在异地冗余的恢复保管库中。
从恢复点还原时,可以还原整个 VM,也可以仅还原特定的文件。
(相关策略:应为虚拟机启用 Azure 备份
应启用适用于容器注册表的 Azure Defender 若要生成安全的容器化工作负载,请确保它们所基于的映像不存在已知漏洞。
适用于容器注册表的 Azure Defender 会扫描注册表中每个推送的容器映像上是否有安全漏洞,并按映像显示详细的发现结果。
若要改进容器的安全状况并保护它们免受攻击,请启用适用于容器注册表的 Azure Defender。

重要说明:修正此建议将导致对容器注册表的保护产生费用。 如果此订阅中没有任何容器注册表,则不会产生任何费用。
如果将来在此订阅中创建任何容器注册表,它将自动受到保护,届时将开始计费。
详细了解适用于容器注册表的 Azure Defender。
(相关策略:应启用适用于容器注册表的 Azure Defender
应启用 Azure Defender for Kubernetes Azure Defender for Kubernetes 为容器化环境提供实时威胁防护,并针对可疑活动生成警报。
可以使用此信息快速补救安全问题,并提高容器的安全性。

重要说明:修正此建议将导致对 Kubernetes 群集的保护产生费用。 如果此订阅中没有任何 Kubernetes 群集,则不会产生任何费用。
如果将来在此订阅中创建任何 Kubernetes 群集,它将自动受到保护,届时将开始计费。
详细了解 Azure Defender for Kubernetes。
(相关策略:应启用 Azure Defender for Kubernetes
应启用适用于服务器的 Azure Defender 适用于服务器的 Azure Defender 可为服务器工作负载提供实时威胁防护,并生成强化建议以及有关可疑活动的警报。
可以使用此信息快速修复安全问题,并提高服务器的安全性。

重要说明:修正此建议将导致对服务器的保护产生费用。 如果此订阅中没有任何服务器,则不会产生任何费用。
如果将来在此订阅中创建任何服务器,它将自动受到保护,届时将开始计费。
详细了解适用于服务器的 Azure Defender。
(相关策略:应启用适用于服务器的 Azure Defender
应在群集上安装并启用适用于 Kubernetes 的 Azure Policy 加载项 适用于 Kubernetes 的 Azure Policy 加载项扩展了 Gatekeeper v3(用于开放策略代理 (OPA) 的许可控制器 Webhook),以集中、一致的方式在群集上应用大规模强制措施和安全措施。

安全中心要求加载项审核并强制实施群集内的安全功能和合规性。 了解详细信息

需要 Kubernetes v1.14.0 或更高版本。


(相关策略:应在群集上安装并启用适用于 Kubernetes 服务 (AKS) 的 Azure Policy 加载项
应强制执行容器 CPU 和内存限制 强制执行 CPU 和内存限制可阻止资源耗尽攻击(一种拒绝服务攻击形式)。

建议为容器设置限制,以确保运行时防止容器使用的资源超过配置的资源限制。


(相关策略:确保容器 CPU 和内存资源限制不超过 Kubernetes 群集中指定的限制
中型
应只从受信任的注册表中部署容器映像 在 Kubernetes 群集上运行的映像应来自已知和监视的容器映像注册表。 受信任的注册表通过限制引入未知漏洞、安全问题和恶意映像的可能性,降低群集暴露风险。
(相关策略:确保只有允许使用的容器映像才在 Kubernetes 群集中运行
应避免使用特权提升的容器 容器在 Kubernetes 群集中不应将特权提升到根目录。
AllowPrivilegeEscalation 属性控制进程是否可以获得比其父进程更多的特权。
(相关策略:Kubernetes 群集不得允许容器特权提升
中型
应避免使用共享敏感主机命名空间的容器 若要防止容器外的特权提升,请避免 Pod 访问 Kubernetes 群集中的敏感主机命名空间(主机进程 ID 和主机 IPC)。
(相关策略:Kubernetes 群集容器不得共享主机进程 ID 命名空间或主机 IPC 命名空间
中型
容器应只侦听允许的端口 要减少 Kubernetes 群集的受攻击面,请限制容器对已配置端口的访问权限,以此限制对群集的访问权限。
(相关策略:确保容器仅侦听 Kubernetes 群集中允许的端口
中型
CORS 不应允许所有资源访问 API 应用 跨源资源共享 (CORS) 不应允许所有域都能访问你的 API 应用。 仅允许所需的域与 API 应用交互。
(相关策略:CORS 不应允许所有资源都能访问 API 应用
CORS 不应允许所有资源都能访问函数应用 跨源资源共享 (CORS) 不应允许所有域都能访问你的函数应用。 仅允许所需的域与函数应用交互。
(相关策略:CORS 不应允许所有资源都能访问函数应用
CORS 不应允许所有资源都能访问你的 Web 应用程序 跨源资源共享 (CORS) 不应允许所有域都能访问你的 Web 应用程序。 仅允许所需的域与 Web 应用交互。
(相关策略:CORS 不应允许所有资源都能访问你的 Web 应用程序
应该在 Azure 流分析中启用诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用 Azure 流分析的诊断日志
应启用 Batch 帐户中的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用 Batch 帐户的诊断日志
应启用事件中心内的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用事件中心的诊断日志
应启用逻辑应用的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用逻辑应用的诊断日志
应启用搜索服务的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用搜索服务的诊断日志
应启用服务总线中的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用服务总线的诊断日志
应启用虚拟机规模集中的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应当启用虚拟机规模集中的诊断日志
应在应用服务中启用诊断日志 审核确认已在应用上启用诊断日志。
如果发生安全事件或网络遭泄露,这样便可以重新创建活动线索用于调查目的
(相关策略:应启用应用程序服务中的诊断日志
中型
应在虚拟机上启用磁盘加密 使用适用于 Windows 和 Linux 虚拟机的 Azure 磁盘加密来加密虚拟机磁盘。 Azure 磁盘加密 (ADE) 利用行业标准 Windows 的 BitLocker 功能和 Linux 的 DM-Crypt 功能提供 OS 磁盘和数据磁盘加密,以帮助保护数据,并实现组织在客户 Azure Key Vault 方面作出的安全性与合规性承诺。 当合规性与安全性政策要求使用加密密钥对数据进行端到端加密(包括加密临时磁盘,即本地附加的临时磁盘)时,请使用 Azure 磁盘加密。 或者,系统默认会使用 Azure 存储服务加密对托管磁盘进行静态加密,其中,加密密钥是 Azure 中的 Microsoft 托管密钥。 如果这符合你的合规性与安全性要求,则可以利用默认托管磁盘加密来满足要求。
(相关策略:应在虚拟机上应用磁盘加密
在虚拟机上启用内置漏洞评估解决方案 安装 Qualys 扩展(内置到 Azure 安全中心标准层中),以在虚拟机上启用业界领先的漏洞评估解决方案。
(相关策略:应在虚拟机上启用漏洞评估解决方案
中型
应在虚拟机规模集上修正 Endpoint Protection 运行状况故障 修复虚拟机规模集上的 Endpoint Protection 运行状况故障,使其免受威胁和漏洞的侵害。
(相关策略:应在虚拟机规模集上安装 Endpoint Protection 解决方案
应在计算机上解决 Endpoint Protection 运行状况问题 解决虚拟机上的 Endpoint Protection 运行状况问题,以保护其免受最新威胁和漏洞的侵害。 此处介绍了 Azure 安全中心受支持的 Endpoint Protection 解决方案 - https://docs.azure.cn/security-center/security-center-services?tabs=features-windows#supported-endpoint-protection-solutions- 此处介绍了 Endpoint Protection 评估 - https://docs.azure.cn/security-center/security-center-endpoint-protection
(相关策略:监视 Azure 安全中心 Endpoint Protection 的缺失情况
中型
应在计算机上解决 Endpoint Protection 运行状况问题 若要实现全面的安全中心保护,请遵照故障排除指南中的说明,解决计算机上的监视代理问题。
(相关策略:监视 Azure 安全中心 Endpoint Protection 的缺失情况
中型
应在计算机上安装 Endpoint Protection 若要保护计算机免受威胁和漏洞的侵害,请安装受支持的 Endpoint Protection 解决方案。
详细了解如何评估计算机的 Endpoint Protection。
(相关策略:监视 Azure 安全中心 Endpoint Protection 的缺失情况
应在虚拟机规模集上安装 Endpoint Protection 解决方案 在虚拟机规模集上安装 Endpoint Protection 解决方案,以保护其免受威胁和漏洞的侵害。
(相关策略:应在虚拟机规模集上安装 Endpoint Protection 解决方案
应仅在 API 应用中要求使用 FTPS 启用 FTPS 强制以实现增强的安全性
(相关策略:应仅在 API 应用中要求使用 FTPS
应仅在函数应用中要求使用 FTPS 启用 FTPS 强制以实现增强的安全性
(相关策略:应仅在函数应用中要求使用 FTPS
应仅在 Web 应用中要求使用 FTPS 启用 FTPS 强制以实现增强的安全性
(相关策略:应仅在 Web 应用中要求使用 FTPS
应该只能通过 HTTPS 访问函数应用 使用 HTTPS 可确保执行服务器/服务身份验证服务,并保护传输中的数据不受网络层窃听攻击威胁。
(相关策略:应只能通过 HTTPS 访问函数应用
中型
确保函数应用已启用“客户端证书(传入客户端证书)” 客户端证书允许应用请求传入请求的证书。 只有具有有效证书的客户端才能访问该应用。
(相关策略:确保函数应用已启用“客户端证书(传入客户端证书)”
中型
应在计算机上安装来宾配置扩展 若要确保安全配置计算机的来宾内设置,请安装来宾配置扩展。 该扩展监视的来宾内设置包括操作系统的配置、应用程序配置或状态以及环境设置。 安装后,来宾内策略将可用,如“应启用 Windows 攻击防护”。 了解详细信息
(相关策略:虚拟机应具有来宾配置扩展
中型
应强制对容器使用不可变(只读)根文件系统 Kubernetes 群集中的容器应使用只读根文件系统。 不可变文件系统将恶意二进制文件添加到路径,可防止容器在运行时更改。
(相关策略:Kubernetes 群集容器应使用只读根文件系统运行
中型
在虚拟机上安装 Endpoint Protection 解决方案 在虚拟机上安装终结点保护解决方案,以保护其免受威胁和漏洞的侵害。
(相关策略:监视 Azure 安全中心 Endpoint Protection 的缺失情况
在计算机上安装终结点保护解决方案 在 Windows 和 Linux 计算机上安装 Endpoint Protection 解决方案,以保护其免受威胁和漏洞的侵害。
(无相关策略)
中型
应将 Java 更新为 API 应用的最新版本 我们定期发布适用于 Java 的更高版本来解决安全漏洞或包含更多功能。
建议使用 API 应用的最新 Python 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作 API 应用一部分的“Java 版本”是最新的
中型
应将 Java 更新为函数应用的最新版本 我们定期发布适用于 Java 软件的更高版本来解决安全漏洞或包含更多功能。
建议使用函数应用的最新 Java 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作函数应用一部分的“Java 版本”是最新的
中型
应将 Java 更新为 Web 应用的最新版本 我们定期发布适用于 Java 软件的更高版本来解决安全漏洞或包含更多功能。
建议使用 Web 应用的最新 Java 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作 Web 应用一部分的“Java 版本”是最新的
中型
Kubernetes 服务管理 API 服务器应配置为受限访问权限 若要确保只有来自允许的网络、计算机或子网的应用程序可以访问群集,请限制对 Kubernetes 服务管理 API 服务器的访问权限。 可以通过定义授权的 IP 范围或将 API 服务器设置为专用群集(如 /aks/private-clusters 中所述)来限制访问权限。
(相关策略:应在 Kubernetes 服务上定义经授权的 IP 范围
Kubernetes 服务应升级到不易受攻击的 Kubernetes 版本 将 Kubernetes 服务群集升级到更高 Kubernetes 版本,以抵御当前 Kubernetes 版本中的已知漏洞。 Kubernetes 版本 1.11.9+、1.12.7+、1.13.5+ 和 1.14.0+ 中已修补漏洞 CVE-2019-9946
(相关策略:Kubernetes 服务应升级到不易受攻击的 Kubernetes 版本
应强制对容器使用最低权限 Linux 功能 为了减少容器的攻击面,请限制 Linux 功能,并向容器授予特定特权,而不授予根用户的所有特权。 建议先删除所有功能,再添加所需的功能
(相关策略:Kubernetes 群集容器只应使用允许的功能
中型
应在计算机上解决 Log Analytics 代理运行状况问题 安全中心使用 Log Analytics 代理,该代理以前称为 Microsoft Monitoring Agent (MMA)。 为了确保成功监视虚拟机,需要确保此代理安装在虚拟机上,并能正确地将安全事件收集到配置的工作区中。
(相关策略:应在计算机上解决 Log Analytics 代理运行状况问题
中型
应在基于 Linux 的 Azure Arc 计算机上安装 Log Analytics 代理 安全中心使用 Log Analytics 代理(也称为 OMS)从 Azure Arc 计算机收集安全事件。 若要在所有 Azure Arc 计算机上部署代理,请遵循修正步骤。
(相关策略:Log Analytics 代理应安装在 Linux Azure Arc 计算机中
应在虚拟机上安装 Log Analytics 代理 安全中心从 Azure 虚拟机 (VM) 收集数据,以监视安全漏洞和威胁。 数据是使用 Log Analytics 代理收集的,该代理以前称为 Microsoft Monitoring Agent (MMA),它从计算机中读取各种安全相关的配置和事件日志,然后将数据复制到 Log Analytics 工作区以用于分析。 如果 VM 由 Azure 托管服务(如 Azure Kubernetes 服务或 Azure Service Fabric)使用,则也需要此代理。 建议配置自动预配来自动部署代理。 如果你选择不使用自动预配,请使用修正步骤中的说明将代理手动部署到 VM。
(相关策略:
Log Analytics 代理应安装在虚拟机上,用于 Azure 安全中心监视
应在虚拟机规模集上安装 Log Analytics 代理 安全中心从 Azure 虚拟机 (VM) 收集数据,以监视安全漏洞和威胁。 数据是使用 Log Analytics 代理收集的,该代理以前称为 Microsoft Monitoring Agent (MMA),它从计算机中读取各种安全相关的配置和事件日志,然后将数据复制到工作区以用于分析。 如果 VM 由 Azure 托管服务(如 Azure Kubernetes 服务或 Azure Service Fabric)使用,那么也需要执行该过程。 无法为 Azure 虚拟机规模集配置代理的自动预配。 若要在虚拟机规模集(包括 Azure Kubernetes 服务和 Azure Service Fabric 等 Azure 托管服务使用的规模集)上部署代理,请按照修正步骤中的过程操作。
(相关策略:Log Analytics 代理应安装在虚拟机规模集上,用于 Azure 安全中心监视
应在基于 Windows 的 Azure Arc 计算机上安装 Log Analytics 代理 安全中心使用 Log Analytics 代理(也称为 MMA)从 Azure Arc 计算机收集安全事件。 若要在所有 Azure Arc 计算机上部署代理,请遵循修正步骤。
(相关策略:Log Analytics 代理应安装在 Azure Arc 计算机中
应在 API 应用中使用托管标识 若要增强身份验证安全性,请使用托管标识。
在 Azure 上,托管标识可为 Azure AD 中的 Azure 资源提供标识并用它来获取 Azure Active Directory (Azure AD) 令牌,从而使开发人员无需管理凭据。
(相关策略:应在 API 应用中使用的托管标识
中型
应在函数应用中使用托管标识 若要增强身份验证安全性,请使用托管标识。
在 Azure 上,托管标识可为 Azure AD 中的 Azure 资源提供标识并用它来获取 Azure Active Directory (Azure AD) 令牌,从而使开发人员无需管理凭据。
(相关策略:应在函数应用中使用托管标识
中型
应在 Web 应用中使用托管标识 若要增强身份验证安全性,请使用托管标识。
在 Azure 上,托管标识可为 Azure AD 中的 Azure 资源提供标识并用它来获取 Azure Active Directory (Azure AD) 令牌,从而使开发人员无需管理凭据。
(相关策略:应在 Web 应用中使用的托管标识
中型
应通过即时网络访问控制来保护虚拟机的管理端口 Azure 安全中心已识别出一些对网络安全组中的管理端口过于宽松的入站规则。 启用实时访问控制,以保护 VM 免受基于 Internet 的暴力攻击。 了解详细信息。
(相关策略:应通过即时网络访问控制来保护虚拟机的管理端口
应在计算机上安装监视代理 此操作在所选虚拟机上安装监视代理。 选择代理要向其报告的工作区。
(无相关策略)
应在 Linux 虚拟机上安装网络流量数据收集代理 安全中心使用 Microsoft Dependency Agent 从 Azure 虚拟机收集网络流量数据,以启用高级网络保护功能,如网络映射上的流量可视化、网络强化建议和特定网络威胁。
(相关策略:应在 Linux 虚拟机上安装网络流量数据收集代理
中型
应在 Windows 虚拟机上安装网络流量数据收集代理 安全中心使用 Microsoft Dependency Agent 从 Azure 虚拟机收集网络流量数据,以启用高级网络保护功能,如网络映射上的流量可视化、网络强化建议和特定网络威胁。
(相关策略:应在 Windows 虚拟机上安装网络流量数据收集代理
中型
应为云服务角色更新 OS 版本 将云服务角色的操作系统(OS)版本更新为适用于 OS 系列的最新版本。
(相关策略:操作系统版本应为云服务角色支持的最新版本
应限制替代或禁用容器 AppArmor 配置文件 在 Kubernetes 集群上运行的容器应仅限使用允许的 AppArmor 配置文件。
AppArmor(应用程序防御)是一种 Linux 安全模块,可保护操作系统及其应用程序免受安全威胁。 为使用此模块,系统管理员需要将 AppArmor 安全配置文件与每个程序相关联。
(相关策略:Kubernetes 群集容器只应使用允许的 AppArmor 配置文件
应将 PHP 更新为 API 应用的最新版本 我们定期发布适用于 PHP 软件的更高版本来解决安全漏洞或包含更多功能。
建议使用 API 应用的最新 PHP 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作 API 应用一部分的“PHP 版本”是最新的
中型
应将 PHP 更新为 Web 应用的最新版本 我们定期发布适用于 PHP 软件的更高版本来解决安全漏洞或包含更多功能。
建议使用 Web 应用的最新 PHP 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作 WEB 应用一部分的“PHP 版本”是最新的
中型
应在 Kubernetes 服务上定义 Pod 安全策略(已弃用) (已弃用)通过删除不必要的应用程序特权,来定义 Pod 安全策略以减少攻击途径。 建议配置 Pod 安全策略,以确保请求你不允许的资源的 Pod 不能在 AKS 群集中运行。
(无相关策略)
应避免特权容器 要防止主机访问不受限制,请尽可能避免使用特权容器。

特权容器具有主机的所有根功能。 它们可用作攻击的入口点,并将恶意代码或恶意软件传播到受攻击的应用程序、主机和网络。


(相关策略:不允许 Kubernetes 群集中有特权容器
中型
应将 Python 更新为 API 应用的最新版本 我们定期发布适用于 Python 软件的更高版本来解决安全漏洞或包含更多功能。
建议使用 API 应用的最新 Python 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作 API 应用一部分的“Python 版本”是最新的
中型
应将 Python 更新为函数应用的最新版本 我们定期发布适用于 Python 软件的更高版本来解决安全漏洞或包含更多功能。
建议使用函数应用的最新 Python 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作函数应用一部分的“Python 版本”是最新的
中型
应将 Python 更新为 Web 应用的最新版本 我们定期发布适用于 Python 软件的更高版本来解决安全漏洞或包含更多功能。
建议使用 Web 应用的最新 Python 版本,以从最新版本的安全修复(若有)和/或新功能中受益。
(相关策略:确保用作 Web 应用一部分的“Python 版本”是最新的
中型
应为 API 应用禁用远程调试 远程调试需要在 API 应用上打开入站端口。 应禁用远程调试。
(相关策略:应为 API 应用禁用远程调试
应对函数应用禁用远程调试 远程调试需要在函数应用上打开入站端口。 应禁用远程调试。
(相关策略:应对函数应用禁用远程调试
应禁用 Web 应用程序的远程调试 远程调试需要在 Web 应用程序上打开入站端口。 远程调试当前已启用。 如果不再需要使用远程调试,则应将其关闭。
(相关策略:应禁用 Web 应用程序的远程调试
应在 Kubernetes 服务上使用基于角色的访问控制 若要对用户可以执行的操作提供粒度筛选,请使用基于角色的访问控制 (RBAC) 来管理 Kubernetes 服务群集中的权限并配置相关授权策略。 有关详细信息,请参阅 Azure 基于角色的访问控制
(相关策略:应在 Kubernetes 服务中使用基于角色的访问控制 (RBAC)
应避免以根用户身份运行容器 在 Kubernetes 群集中应以非根用户身份运行容器。 在容器内以根用户身份运行进程会导致在主机上以根用户身份运行该进程。 如果发生泄漏,攻击者会获得容器中的根权限,任何配置错误都变得更加容易被利用。
(相关策略:Kubernetes 群集 Pod 和容器只应使用批准的用户 ID 和组 ID 运行
应在 Linux 虚拟机上启用安全引导 在虚拟机上启用安全引导有助于减少对引导链的恶意和未经授权的更改。 启用后,将只允许签名代码在 VM 或服务器上运行。
(无相关策略)
Service Fabric 群集应将 ClusterProtectionLevel 属性设置为 EncryptAndSign Service Fabric 使用主要群集证书为节点之间的通信提供三个保护级别(None、Sign 和 EncryptAndSign)。 请设置保护级别,确保节点到节点的所有消息经过加密和数字签名。
(相关策略:Service Fabric 群集应将 ClusterProtectionLevel 属性设置为 EncryptAndSign
Service Fabric 群集只应使用 Azure Active Directory 进行客户端身份验证 在 Service Fabric 中仅通过 Azure Active Directory 执行客户端身份验证
(相关策略:Service Fabric 群集应仅使用 Azure Active Directory 进行客户端身份验证
服务应只侦听允许的端口 要减少 Kubernetes 群集的受攻击面,请限制服务对已配置端口的访问权限,以此限制对群集的访问权限。
(相关策略:确保服务只在 Kubernetes 群集中侦听允许使用的端口
中型
应在虚拟机规模集上安装系统更新 安装缺少的系统安全更新和关键更新,保护 Windows 和 Linux 虚拟机规模集。
(相关策略:应在虚拟机规模集上安装系统更新
应在计算机上安装系统更新 安装缺少的系统安全和关键更新,以保护 Windows 和 Linux 虚拟机与计算机
(相关策略:应在计算机上安装系统更新
应在计算机上安装系统更新(由更新中心提供技术支持) 计算机缺少系统、安全和关键更新。 软件更新通常包括安全漏洞的关键补丁。 恶意软件攻击中经常会利用这些漏洞,因此保持软件更新至关重要。 若要安装所有重要补丁并保护你的计算机,请遵循修正步骤。
(无相关策略)
应将 TLS 更新为 API 应用的最新版本 升级到最新的 TLS 版本
(相关策略:应在 API 应用中使用最新的 TLS 版本
应将 TLS 更新为函数应用的最新版本 升级到最新的 TLS 版本
(相关策略:应在函数应用中使用最新的 TLS 版本
应将 TLS 更新为 Web 应用的最新版本 升级到最新的 TLS 版本
(相关策略:应在 Web 应用中使用最新的 TLS 版本
应限制对主机网络和端口的使用 限制 Pod 在 Kubernetes 群集中对主机网络和允许的主机端口范围的访问。 在启用 hostNetwork 属性的情况下创建的 Pod 将共享该节点的网络空间。 为了避免被泄露的容器侦听网络流量,建议不要将 Pod 置于主机网络上。 如果需要在节点的网络上公开容器端口,并且使用 Kubernetes 服务节点端口不能满足你的需求,另一个可能的做法是在 Pod 规范中为容器指定 hostPort。
(相关策略:Kubernetes 群集 Pod 只应使用批准的主机网络和端口范围
中型
应限制为只有已知列表才能使用 Pod HostPath 卷装载,以限制来自遭入侵容器的节点访问 建议将 Kubernetes 群集中的 pod HostPath 卷装载限制为配置的允许主机路径。 如果遭到入侵,应限制容器的容器节点访问
(相关策略:Kubernetes 群集 Pod hostPath 卷只应使用允许的主机路径
中型
应证明虚拟机的引导完整性运行状况 安全中心无法证明你的虚拟机正在运行已签名的受信任代码。 这可能表示引导链受损,这可能是永久的 bootkit 或 Rootkit 感染的结果。 若要确保 VM 在安全状态下运行,建议调查该计算机,或者从受信任的 OS 映像重新部署它。
(无相关策略)
中型
应将虚拟机迁移到新的 Azure 资源管理器资源 不推荐使用虚拟机(经典),这些 VM 应迁移到 Azure 资源管理器。
由于 Azure 资源管理器现具有完整的 IaaS 功能和其他改进,因此我们在 2020 年 2 月 28 日弃用了通过 Azure Service Manager (ASM) 管理 IaaS 虚拟机 (VM) 的功能。 此功能将于 2023 年 3 月 1 日完全停用。

有关此工具和迁移的可用资源和信息:
1.概述虚拟机(经典)弃用、迁移的逐步过程和可用的 Microsoft 资源。
2.有关迁移到 ARM 迁移工具的详细信息。
3.使用 PowerShell 迁移到 ARM 迁移工具。
(相关策略:应将虚拟机迁移到新的 Azure 资源管理器资源
应使用系统分配的托管标识来部署虚拟机的来宾配置扩展 来宾配置扩展需要系统分配的托管标识。 如果安装了来宾配置扩展,但没有系统分配的托管标识,则此策略作用域内的 Azure 虚拟机是不合规的。 了解详细信息
(相关策略:来宾配置扩展应部署到具有系统分配的托管标识的 Azure 虚拟机
中型
应修正 Azure 容器注册表映像中的漏洞(由 Qualys 提供支持) 容器映像漏洞评估功能会扫描注册表中的安全漏洞,并公开每个映像的详细发现结果。 修复这些漏洞可以极大改善容器的安全状况,并保护其不受攻击影响。
(相关策略:应修正 Azure 容器注册表映像中的漏洞
应该修复容器安全配置中的漏洞 修复安装了 Docker 的计算机上安全配置中的漏洞,使它们免受攻击。
(相关策略:应修正容器安全配置中的漏洞
应该修复计算机上安全配置中的漏洞 修复计算机上安全配置的漏洞,以保护其免受攻击。
(相关策略:应修复计算机上安全配置中的漏洞
应该修复虚拟机规模集上安全配置中的漏洞 修复虚拟机规模集上安全配置中的漏洞,使其免受攻击。
(相关策略:应修复虚拟机规模集上安全配置中的漏洞
应修正虚拟机中的漏洞 监视由 Azure 安全中心的内置漏洞评估解决方案(由 Qualys 提供支持)所发现的虚拟机上的漏洞发现。
(相关策略:应在虚拟机上启用漏洞评估解决方案
应该通过漏洞评估解决方案修复漏洞 会持续评估为其部署了漏洞评估第三方解决方案的虚拟机的应用程序和 OS 漏洞。 只要发现此类漏洞,就会在建议中提供详细信息。
(相关策略:应通过漏洞评估解决方案修复漏洞
应在虚拟机上安装漏洞评估解决方案 在虚拟机上安装漏洞评估解决方案
(相关策略:应通过漏洞评估解决方案修复漏洞
中型
只能通过 HTTPS 访问 Web 应用程序 使用 HTTPS 可确保执行服务器/服务身份验证服务,并保护传输中的数据不受网络层窃听攻击威胁。
(相关策略:只能通过 HTTPS 访问 Web 应用程序
中型
Web 应用应请求一个用于所有传入请求的 SSL 证书 客户端证书允许应用请求传入请求的证书。
只有具有有效证书的客户端才能访问该应用。
(相关策略:确保 WEB 应用的“客户端证书(传入客户端证书)”设置为“打开”
中型
应重启计算机来应用系统更新 重启计算机以应用系统更新并保护计算机免受漏洞攻击。
(相关策略:应在计算机上安装系统更新
中型

容器建议

这一类别有 24 条相关建议。

建议 说明 严重性
应在群集上安装并启用适用于 Kubernetes 的 Azure Policy 加载项 适用于 Kubernetes 的 Azure Policy 加载项扩展了 Gatekeeper v3(用于开放策略代理 (OPA) 的许可控制器 Webhook),以集中、一致的方式在群集上应用大规模强制措施和安全措施。

安全中心要求加载项审核并强制实施群集内的安全功能和合规性。 了解详细信息

需要 Kubernetes v1.14.0 或更高版本。


(相关策略:应在群集上安装并启用适用于 Kubernetes 服务 (AKS) 的 Azure Policy 加载项
应强制执行容器 CPU 和内存限制 强制执行 CPU 和内存限制可阻止资源耗尽攻击(一种拒绝服务攻击形式)。

建议为容器设置限制,以确保运行时防止容器使用的资源超过配置的资源限制。


(相关策略:确保容器 CPU 和内存资源限制不超过 Kubernetes 群集中指定的限制
中型
应只从受信任的注册表中部署容器映像 在 Kubernetes 群集上运行的映像应来自已知和监视的容器映像注册表。 受信任的注册表通过限制引入未知漏洞、安全问题和恶意映像的可能性,降低群集暴露风险。
(相关策略:确保只有允许使用的容器映像才在 Kubernetes 群集中运行
容器注册表应使用客户管理的密钥 (CMK) 进行加密 使用客户管理的密钥来管理注册表内容的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足监管合规标准,通常需要使用客户管理的密钥 (CMK)。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 访问 https://aka.ms/acr/CMK,了解有关 CMK 加密的详细信息。
(相关策略:容器注册表应使用客户管理的密钥 (CMK) 进行加密
中型
容器注册表不得允许无限制的网络访问 默认情况下,Azure 容器注册表接受来自任何网络上的主机的 Internet 连接。 为了防止注册表受到潜在的威胁,只允许来自特定的公共 IP 地址或地址范围的访问。 如果注册表没有 IP/防火墙规则或配置的虚拟网络,它将出现在不正常资源中。 有关容器注册表网络规则的详细信息,请访问 https://aka.ms/acr/portal/public-networkhttps://aka.ms/acr/vnet。
(相关策略:容器注册表不得允许无限制的网络访问
中型
容器注册表应使用专用链接 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。通过将专用终结点映射到容器注册表,而不是整个服务,还可以防范数据泄露风险。 有关详细信息,请访问:https://aka.ms/acr/private-link。
(相关策略:容器注册表应使用专用链接
中型
应避免使用特权提升的容器 容器在 Kubernetes 群集中不应将特权提升到根目录。
AllowPrivilegeEscalation 属性控制进程是否可以获得比其父进程更多的特权。
(相关策略:Kubernetes 群集不得允许容器特权提升
中型
应避免使用共享敏感主机命名空间的容器 若要防止容器外的特权提升,请避免 Pod 访问 Kubernetes 群集中的敏感主机命名空间(主机进程 ID 和主机 IPC)。
(相关策略:Kubernetes 群集容器不得共享主机进程 ID 命名空间或主机 IPC 命名空间
中型
容器应只侦听允许的端口 要减少 Kubernetes 群集的受攻击面,请限制容器对已配置端口的访问权限,以此限制对群集的访问权限。
(相关策略:确保容器仅侦听 Kubernetes 群集中允许的端口
中型
应强制对容器使用不可变(只读)根文件系统 Kubernetes 群集中的容器应使用只读根文件系统。 不可变文件系统将恶意二进制文件添加到路径,可防止容器在运行时更改。
(相关策略:Kubernetes 群集容器应使用只读根文件系统运行
中型
Kubernetes 群集应只可通过 HTTPS 进行访问 使用 HTTPS 可确保执行身份验证,并保护传输中的数据不受网络层窃听攻击威胁。 此功能目前已面向 Kubernetes 服务 (AKS) 正式发布,并面向 AKS 引擎和启用了 Azure Arc 的 Kubernetes 提供预览版。 有关详细信息,请访问 https://aka.ms/kubepolicydoc
(相关策略:在 Kubernetes 群集中强制实施 HTTPS 入口
Kubernetes 服务管理 API 服务器应配置为受限访问权限 若要确保只有来自允许的网络、计算机或子网的应用程序可以访问群集,请限制对 Kubernetes 服务管理 API 服务器的访问权限。 可以通过定义授权的 IP 范围或将 API 服务器设置为专用群集(如 /aks/private-clusters 中所述)来限制访问权限。
(相关策略:应在 Kubernetes 服务上定义经授权的 IP 范围
Kubernetes 服务应升级到不易受攻击的 Kubernetes 版本 将 Kubernetes 服务群集升级到更高 Kubernetes 版本,以抵御当前 Kubernetes 版本中的已知漏洞。 Kubernetes 版本 1.11.9+、1.12.7+、1.13.5+ 和 1.14.0+ 中已修补漏洞 CVE-2019-9946
(相关策略:Kubernetes 服务应升级到不易受攻击的 Kubernetes 版本
应强制对容器使用最低权限 Linux 功能 为了减少容器的攻击面,请限制 Linux 功能,并向容器授予特定特权,而不授予根用户的所有特权。 建议先删除所有功能,再添加所需的功能
(相关策略:Kubernetes 群集容器只应使用允许的功能
中型
应限制替代或禁用容器 AppArmor 配置文件 在 Kubernetes 集群上运行的容器应仅限使用允许的 AppArmor 配置文件。
AppArmor(应用程序防御)是一种 Linux 安全模块,可保护操作系统及其应用程序免受安全威胁。 为使用此模块,系统管理员需要将 AppArmor 安全配置文件与每个程序相关联。
(相关策略:Kubernetes 群集容器只应使用允许的 AppArmor 配置文件
应避免特权容器 要防止主机访问不受限制,请尽可能避免使用特权容器。

特权容器具有主机的所有根功能。 它们可用作攻击的入口点,并将恶意代码或恶意软件传播到受攻击的应用程序、主机和网络。


(相关策略:不允许 Kubernetes 群集中有特权容器
中型
应在 Kubernetes 服务上使用基于角色的访问控制 若要对用户可以执行的操作提供粒度筛选,请使用基于角色的访问控制 (RBAC) 来管理 Kubernetes 服务群集中的权限并配置相关授权策略。 有关详细信息,请参阅 Azure 基于角色的访问控制
(相关策略:应在 Kubernetes 服务中使用基于角色的访问控制 (RBAC)
应避免以根用户身份运行容器 在 Kubernetes 群集中应以非根用户身份运行容器。 在容器内以根用户身份运行进程会导致在主机上以根用户身份运行该进程。 如果发生泄漏,攻击者会获得容器中的根权限,任何配置错误都变得更加容易被利用。
(相关策略:Kubernetes 群集 Pod 和容器只应使用批准的用户 ID 和组 ID 运行
服务应只侦听允许的端口 要减少 Kubernetes 群集的受攻击面,请限制服务对已配置端口的访问权限,以此限制对群集的访问权限。
(相关策略:确保服务只在 Kubernetes 群集中侦听允许使用的端口
中型
应限制对主机网络和端口的使用 限制 Pod 在 Kubernetes 群集中对主机网络和允许的主机端口范围的访问。 在启用 hostNetwork 属性的情况下创建的 Pod 将共享该节点的网络空间。 为了避免被泄露的容器侦听网络流量,建议不要将 Pod 置于主机网络上。 如果需要在节点的网络上公开容器端口,并且使用 Kubernetes 服务节点端口不能满足你的需求,另一个可能的做法是在 Pod 规范中为容器指定 hostPort。
(相关策略:Kubernetes 群集 Pod 只应使用批准的主机网络和端口范围
中型
应限制为只有已知列表才能使用 Pod HostPath 卷装载,以限制来自遭入侵容器的节点访问 建议将 Kubernetes 群集中的 pod HostPath 卷装载限制为配置的允许主机路径。 如果遭到入侵,应限制容器的容器节点访问
(相关策略:Kubernetes 群集 Pod hostPath 卷只应使用允许的主机路径
中型

数据建议

这一类别有 45 条相关建议。

建议 说明 严重性
应在 SQL 托管实例的高级数据安全设置中启用所有高级威胁防护类型 建议在 SQL 托管实例上启用所有高级威胁防护类型。 启用所有类型可以防范 SQL 注入、数据库漏洞和任何其他异常活动。
(无相关策略)
中型
应在 SQL Server 的高级数据安全设置中启用所有高级威胁防护类型 建议在 SQL 服务器上启用所有高级威胁防护类型。 启用所有类型可以防范 SQL 注入、数据库漏洞和任何其他异常活动。
(无相关策略)
中型
应该为 SQL 服务器预配 Azure Active Directory 管理员 预配 SQL Server 的 Azure AD 管理员以启用 Azure AD 身份验证。 使用 Azure AD 身份验证可以简化权限管理,以及集中化数据库用户和其他 Microsoft 服务的标识管理。
(相关策略:应为 SQL Server 预配 Azure Active Directory 管理员
应用程序配置应使用专用链接 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到应用配置实例(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://aka.ms/appconfig/private-endpoint。
(相关策略:应用程序配置应使用专用链接
中型
应将 SQL Server 的审核保留设置为至少 90 天 审核配置的审核保持期少于 90 天的 SQL 服务器。
(相关策略:SQL Server 应配置有 90 天或更长时间的审核保留期。
应启用 SQL 服务器上的审核 在 SQL Server 上启用审核以跟踪服务器上所有数据库的数据库活动,并将其保存在审核日志中。
(相关策略:应对 SQL Server 启用审核
应对订阅启用 Log Analytics 代理自动预配 为了监视安全漏洞和威胁,Azure 安全中心会从 Azure 虚拟机收集数据。 数据是使用 Log Analytics 代理收集的,该代理以前称为 Microsoft Monitoring Agent (MMA),它从计算机中读取各种安全相关的配置和事件日志,然后将数据复制到 Log Analytics 工作区以用于分析。 建议启用自动预配,将代理自动部署到所有受支持的 Azure VM 和任何新创建的 VM。
(相关策略:你的订阅应启用 Log Analytics 代理自动预配
Azure Cache for Redis 应驻留在虚拟网络中 Azure 虚拟网络 (VNet) 部署为 Azure Cache for Redis 以及子网、访问控制策略和其他功能提供增强的安全性和隔离,以进一步限制访问。如果 Azure Cache for Redis 实例配置有 VNet,该实例是不可公开寻址的,只能从 VNet 中的虚拟机和应用程序访问。
(相关策略:Azure Cache for Redis 应驻留在虚拟网络中
中型
Azure Cosmos DB 帐户应使用客户管理的密钥来加密静态数据 使用客户管理的密钥来管理 Azure Cosmos DB 的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足监管合规标准,通常需要使用客户管理的密钥 (CMK)。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 访问 https://aka.ms/cosmosdb-cmk,了解有关 CMK 加密的详细信息。
(相关策略:Azure Cosmos DB 帐户应使用客户管理的密钥来加密静态数据
应启用适用于 Azure SQL 数据库服务器的 Azure Defender Azure Defender for SQL 是提供高级 SQL 安全功能的统一包。
它包括以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对数据库产生威胁的异常活动以及发现敏感数据并对其进行分类。

重要说明:修正此建议将产生 Azure SQL Database 服务器保护费用。 如果此订阅中没有任何 Azure SQL Database 服务器,则不会产生任何费用。
如果以后在此订阅中创建任何 Azure SQL Database 服务器,它们将自动受到保护,并从该时间点开始计费。
详细了解适用于 Azure SQL 数据库服务器的 Azure Defender。
(相关策略:应启用适用于 Azure SQL 数据库服务器的 Azure Defender
Azure 事件网格域应使用专用链接 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。通过将专用终结点映射到事件网格域(而不是整个服务),还可以防范数据泄露风险。有关更多信息,请参阅:https://aka.ms/privateendpoints。
(相关策略:Azure 事件网格域应使用专用链接
中型
Azure 事件网格主题应使用专用链接 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到主题(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://aka.ms/privateendpoints。
(相关策略:Azure 事件网格主题应使用专用链接
中型
Azure 机器学习工作区应使用客户管理的密钥 (CMK) 进行加密 使用客户管理的密钥 (CMK) 管理 Azure 机器学习工作区数据的静态加密。 默认情况下,使用服务管理的密钥对客户数据进行加密,但为了满足监管合规标准,通常需要使用 CMK。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 访问 https://aka.ms/azureml-workspaces-cmk,了解有关 CMK 加密的详细信息。
(相关策略:Azure 机器学习工作区应使用客户管理的密钥 (CMK) 进行加密
中型
Azure 机器学习工作区应使用专用链接 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到 Azure 机器学习工作区(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://aka.ms/azureml-workspaces-privatelink。
(相关策略: Azure 机器学习工作区应使用专用链接
中型
Azure SignalR 服务应使用专用链接 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到 SignalR 资源(而不是整个服务),还可以防范数据泄露风险。有关详细信息,请访问:https://aka.ms/asrs/privatelink。
(相关策略:Azure SignalR 服务应使用专用链接
中型
认知服务帐户应启用使用客户管理的密钥 (CMK) 进行数据加密 客户管理的密钥 (CMK) 通常是满足法规符合性标准所必需的。 CMK 支持使用由你创建并拥有的 Azure Key Vault 密钥对存储在认知服务中的数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 访问 https://aka.ms/cosmosdb-cmk,了解有关 CMK 加密的详细信息。
(相关策略:认知服务帐户应启用使用客户管理的密钥�(CMK) 进行数据加密
中型
容器注册表应使用客户管理的密钥 (CMK) 进行加密 使用客户管理的密钥来管理注册表内容的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足监管合规标准,通常需要使用客户管理的密钥 (CMK)。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 访问 https://aka.ms/acr/CMK,了解有关 CMK 加密的详细信息。
(相关策略:容器注册表应使用客户管理的密钥 (CMK) 进行加密
中型
容器注册表不得允许无限制的网络访问 默认情况下,Azure 容器注册表接受来自任何网络上的主机的 Internet 连接。 为了防止注册表受到潜在的威胁,只允许来自特定的公共 IP 地址或地址范围的访问。 如果注册表没有 IP/防火墙规则或配置的虚拟网络,它将出现在不正常资源中。 有关容器注册表网络规则的详细信息,请访问 https://aka.ms/acr/portal/public-networkhttps://aka.ms/acr/vnet。
(相关策略:容器注册表不得允许无限制的网络访问
中型
容器注册表应使用专用链接 通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。通过将专用终结点映射到容器注册表,而不是整个服务,还可以防范数据泄露风险。 有关详细信息,请访问:https://aka.ms/acr/private-link。
(相关策略:容器注册表应使用专用链接
中型
应启用 Azure Data Lake Store 中的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用 Azure Data Lake Store 的诊断日志
应启用 Data Lake Analytics 中的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用 Data Lake Analytics 的诊断日志
应启用高严重性警报的电子邮件通知 当某个订阅中存在潜在的安全漏洞时,若要确保组织中的相关人员收到通知,请在安全中心为高严重性警报启用电子邮件通知。
(相关策略:应启用高严重性警报的电子邮件通知
应启用向订阅所有者发送高严重性警报的电子邮件通知 当订阅中存在潜在的安全漏洞时,若要确保订阅所有者收到通知,请在安全中心设置向订阅所有者发送高严重性警报的电子邮件通知。
(相关策略:应启用向订阅所有者发送高严重性警报的电子邮件通知
中型
应为 MySQL 数据库服务器启用“强制 SSL 连接” Azure Database for MySQL 支持使用安全套接字层 (SSL) 将 Azure Database for MySQL 服务器连接到客户端应用程序。
通过在数据库服务器与客户端应用程序之间强制实施 SSL 连接,可以加密服务器与应用程序之间的数据流,有助于防止“中间人”攻击。
此配置强制始终启用 SSL 以访问数据库服务器。
(相关策略:应为 MySQL 数据库服务器启用“强制 SSL 连接”
中型
应为 PostgreSQL 数据库服务器启用“强制 SSL 连接” Azure Database for MySQL 支持使用安全套接字层 (SSL) 将 Azure Database for MySQL 服务器连接到客户端应用程序。
通过在数据库服务器与客户端应用程序之间强制实施 SSL 连接,可以加密服务器与应用程序之间的数据流,有助于防止“中间人”攻击。
此配置强制始终启用 SSL 以访问数据库服务器。
(相关策略:应为 PostgreSQL 数据库服务器启用“强制 SSL 连接”
中型
应为 Azure Database for MariaDB 启用异地冗余备份 通过 Azure Database for MariaDB,你可以为数据库服务器选择冗余选项。
它可设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可复制到配对区域,以在发生区域故障时提供恢复选项。
只能在创建服务器时为备份配置异地冗余存储。
(相关策略:应为 Azure Database for MariaDB 启用异地冗余备份
应为 Azure Database for MySQL 启用异地冗余备份 通过 Azure Database for MySQL,你可以为数据库服务器选择冗余选项。
它可设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可复制到配对区域,以在发生区域故障时提供恢复选项。
只能在创建服务器时为备份配置异地冗余存储。
(相关策略:应为 Azure Database for MySQL 启用异地冗余备份
应为 Azure Database for PostgreSQL 启用异地冗余备份 通过 Azure Database for PostgreSQL,你可以为数据库服务器选择冗余选项。
它可设置为异地冗余备份存储,其中数据不仅存储在托管服务器的区域内,还可复制到配对区域,以在发生区域故障时提供恢复选项。
只能在创建服务器时为备份配置异地冗余存储。
(相关策略:应为 Azure Database for PostgreSQL 启用异地冗余备份
应该启用只能通过安全方式连接到 Redis 缓存 仅启用通过 SSL 来与 Redis 缓存建立连接。 使用安全连接可确保服务器和服务之间的身份验证并保护传输中的数据免受中间人攻击、窃听攻击和会话劫持等网络层攻击。
(相关策略:应只启用与 Azure Cache for Redis 的安全连接
应为 MariaDB 服务器启用专用终结点 专用终结点连接通过启用到 Azure Database for MariaDB 的专用连接来加强安全通信。
配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。
(相关策略:应为 MariaDB 服务器启用专用终结点
中型
应为 MySQL 服务器启用专用终结点 专用终结点连接通过启用到 Azure Database for MySQL 的专用连接来加强安全通信。
配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。
(相关策略:应为 MySQL 服务器启用专用终结点
中型
应为 PostgreSQL 服务器启用专用终结点 专用终结点连接通过启用到 Azure Database for PostgreSQL 的专用连接来加强安全通信。
配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。
(相关策略:应为 PostgreSQL 服务器启用专用终结点
中型
应对 SQL 数据库中的敏感数据进行分类 Azure SQL DB 数据发现和分类功能可用于发现、分类、标记和保护数据库中的敏感数据。 将数据进行分类后,可以使用 Azure SQL DB 审核来审核访问和监视敏感数据。 Azure SQL DB 还启用了高级威胁防护功能,这些功能基于对敏感数据的访问模式的改变创建智能警报。
(相关策略:应对 SQL 数据库中的敏感数据进行分类
SQL 托管实例应使用客户管理的密钥进行静态数据加密 使用你自己的密钥实现透明数据加密 (TDE) 可增加透明度和对 TDE 保护器的控制,增强由 HSM 提供支持的外部服务的安全性,并促进职责划分。 此建议适用于具有相关合规性要求的组织。
(相关策略:SQL 托管实例应使用客户管理的密钥进行静态数据加密
SQL Server 应使用客户管理的密钥进行静态数据加密 使用你自己的密钥实现透明数据加密 (TDE) 可增加透明度和对 TDE 保护器的控制,增强由 HSM 提供支持的外部服务的安全性,并促进职责划分。 此建议适用于具有相关合规性要求的组织。
(相关策略:SQL Server 应使用客户管理的密钥进行静态数据加密
存储帐户应使用专用链接连接 专用链接通过与存储帐户建立专用连接来强制实施安全通信
(相关策略:存储帐户应使用专用链接连接
中型
应将存储帐户迁移到新 Azure 资源管理器资源 若要充分利用 Azure 资源管理器中的新功能,可将现有部署从经典部署模型中迁移出来。 Azure 资源管理器启用安全增强功能,例如:更强的访问控制 (RBAC)、更好地审核、基于 ARM 的部署和治理、托管标识访问权限、用于提供机密的密钥保管库的访问权限、基于 Azure AD 的身份验证以及可实现更轻松安全管理的标记和资源组支持。 了解详细信息
(相关策略:应将存储帐户迁移到新的 Azure 资源管理器资源
存储帐户应使用虚拟网络规则来限制网络访问 使用虚拟网络规则作为首选方法(而不使用基于 IP 的筛选),保护存储帐户免受潜在威胁危害。 禁用基于 IP 的筛选可以阻止公共 IP 访问你的存储帐户。
(相关策略:存储帐户应使用虚拟网络规则来限制网络访问
中型
存储帐户应使用客户管理的密钥 (CMK) 进行加密 使用客户管理的密钥 (CMK) 更灵活地保护存储帐户。 指定 CMK 时,该密钥会用于保护和控制对加密数据的密钥的访问。 使用 CMK 可提供附加功能来控制密钥加密密钥的轮换或以加密方式擦除数据。
(相关策略:存储帐户应使用客户管理的密钥 (CMK) 进行加密
中型
订阅应有一个联系人电子邮件地址,用于接收安全问题通知 当某个订阅中存在潜在的安全漏洞时,若要确保组织中的相关人员收到通知,请设置一个安全联系人,以接收来自安全中心的电子邮件通知。
(相关策略:订阅应有一个联系人电子邮件地址,用于接收安全问题通知
应在 SQL 数据库上启用透明数据加密 启用透明数据加密以保护静态数据并满足合规性要求
(相关策略:应对 SQL 数据库启用透明数据加密
应修正关于 SQL 数据库的漏洞评估结果 SQL 漏洞评估会扫描数据库中的安全漏洞,并显示与最佳实践之间的任何偏差,如配置错误、权限过多和敏感数据未受保护。 解决发现的漏洞可以极大地改善数据库安全态势。 了解详细信息
(相关策略:应修正 SQL 数据库中的漏洞
应修正关于计算机上 SQL 服务器的漏洞评估结果 SQL 漏洞评估会扫描数据库中的安全漏洞,并显示与最佳实践之间的任何偏差,如配置错误、权限过多和敏感数据未受保护。 解决发现的漏洞可以极大地改善数据库安全态势。 了解详细信息
(相关策略:应修正计算机上 SQL 服务器的漏洞
应对 SQL 托管实例启用漏洞评估 漏洞评估可发现、跟踪和帮助你修正潜在数据库漏洞。
(相关策略:应对 SQL 托管实例启用漏洞评估
应对 SQL Server 启用漏洞评估 漏洞评估可发现、跟踪和帮助你修正潜在数据库漏洞。
(相关策略:应对 SQL Server 启用漏洞评估

IdentityAndAccess 建议

这一类别有 14 条相关建议。

建议 说明 严重性
只多只为订阅指定 3 个所有者 为了降低所有者帐户遭受泄露的可能性,建议将所有者帐户的数量限制为最多 3 个
(相关策略:最多只能为订阅指定 3 个所有者
应从订阅中删除弃用的帐户 应从订阅中删除已被阻止登录的用户帐户。
这些帐户可能会成为攻击者的目标,攻击者会设法在不被发现的情况下访问你的数据。
(相关策略:应从订阅中删除弃用的帐户
应从订阅中删除拥有所有者权限的已弃用帐户 应从订阅中删除已被阻止登录的用户帐户。
这些帐户可能会成为攻击者的目标,攻击者会设法在不被发现的情况下访问你的数据。
(相关策略:应从订阅中删除拥有所有者权限的已弃用帐户
应启用 Key Vault 中的诊断日志 启用日志并将其保留长达一年。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。
(相关策略:应启用 Key Vault 中的诊断日志
应从订阅中删除拥有所有者权限的外部帐户 应从订阅中删除拥有所有者权限的具有不同域名的帐户(外部帐户)。 这可防止不受监视的访问。 这些帐户可能会成为攻击者的目标,攻击者会设法在不被发现的情况下访问你的数据。
(相关策略:应从订阅中删除拥有所有者权限的外部帐户
应从订阅中删除拥有读取权限的外部帐户 应从订阅中删除拥有读取权限的具有不同域名的帐户(外部账户)。 这可防止不受监视的访问。 这些帐户可能会成为攻击者的目标,攻击者会设法在不被发现的情况下访问你的数据。
(相关策略:应从订阅中删除拥有读取权限的外部帐户
应从订阅中删除具有写入权限的外部帐户 应从订阅中删除拥有写入权限的具有不同域名的帐户(外部账户)。 这可防止不受监视的访问。 这些帐户可能会成为攻击者的目标,攻击者会设法在不被发现的情况下访问你的数据。
(相关策略:应从订阅中删除具有写入权限的外部帐户
密钥保管库应启用清除保护 恶意删除密钥保管库可能会导致永久丢失数据。 你组织中的恶意内部人员可能会删除和清除密钥保管库。 清除保护通过强制实施软删除密钥保管库的强制保留期来保护你免受内部攻击。 你的组织内的任何人都无法在软删除保留期内清除你的密钥保管库。
(相关策略:密钥保管库应启用清除保护
中型
密钥保管库应启用软删除 在未启用软删除的情况下删除密钥保管库,将永久删除密钥保管库中存储的所有机密、密钥和证书。 意外删除密钥保管库可能会导致永久丢失数据。 软删除允许在可配置的保持期内恢复意外删除的密钥保管库。
(相关策略:密钥保管库应启用软删除
应在对订阅拥有所有者权限的帐户上启用 MFA 为了防止帐户或资源出现违规问题,应为所有拥有所有者权限的订阅帐户启用多重身份验证 (MFA)。
(相关策略:应在对订阅拥有所有者权限的帐户上启用 MFA
应在对订阅拥有读取权限的帐户上启用 MFA 为了防止帐户或资源出现违规问题,应为所有拥有读取特权的订阅帐户启用多重身份验证 (MFA)。
(相关策略:应在对订阅拥有读取权限的帐户上启用 MFA
应在对订阅拥有写入权限的帐户上启用 MFA 为了防止帐户或资源出现违规问题,应为所有拥有写入特权的订阅帐户启用多重身份验证 (MFA)。
(相关策略:应在对订阅拥有写入权限的帐户上启用 MFA
应使用服务主体(而不是管理证书)来保护你的订阅 通过管理证书,任何使用它们进行身份验证的人员都可管理与它们关联的订阅。 为了更安全地管理订阅,建议将服务主体和资源管理器结合使用来限制证书泄露所造成的影响范围。 这也可以使资源管理自动进行。
(相关策略:应使用服务主体(而不是管理证书)来保护你的订阅
中型
应该为你的订阅分配了多个所有者 指定多个订阅所有者,以实现管理员访问权限冗余。
(相关策略:应向订阅分配多个所有者

网络建议

这一类别有 14 条相关建议。

建议 说明 严重性
应限制对具有防火墙和虚拟网络配置的存储帐户的访问 查看存储帐户防火墙设置中的网络访问设置。 建议配置网络规则,以便只有来自许可网络的应用程序才能访问存储帐户。 若要允许来自特定 Internet 或本地客户端的连接,可以向来自特定 Azure 虚拟网络或到公共 Internet IP 地址范围的流量授予访问权限。
(相关策略:存储帐户应限制网络访问
应在面向内部的虚拟机上应用自适应网络强化建议 Azure 安全中心已分析下面列出的虚拟机的 Internet 流量通信模式,并确定与它们关联的 NSG 中的现有规则过于宽松,导致潜在攻击面增加。 这可能是由于端口/协议元组或特定 IP 上的流量不足,这些 IP 已被安全中心的威胁情报源标记为恶意。
(无相关策略)
中型
应在面向 Internet 的虚拟机上应用自适应网络强化建议 Azure 安全中心已分析下面列出的虚拟机的 Internet 流量通信模式,并确定与它们关联的 NSG 中的现有规则过于宽容,导致潜在攻击面增加。
这通常在此 IP 地址不会定期与此资源通信的情况下发生。 或者,该 IP 地址已被安全中心的威胁情报源标记为恶意 IP。 (相关策略:应在面向 Internet 的虚拟机上应用自适应网络强化建议
应限制在与虚拟机关联的网络安全组上使用所有网络端口 Azure 安全中心已识别到网络安全组的某些入站规则过于宽松。 入站规则不应允许从“任何”或“Internet”范围进行访问。 这有可能使得攻击者能够将你的资源定为攻击目标。
(相关策略:应在与虚拟机关联的网络安全组上限制所有网络端口
应启用 Azure DDoS 防护标准 安全中心发现了应用程序网关资源不受 DDoS 保护服务保护的虚拟网络。 这些资源包含公共 IP。 缓解网络容量和协议攻击。
(相关策略:应启用 Azure DDoS 防护标准
中型
面向 Internet 的虚拟机应使用网络安全组进行保护 使用网络安全组 (NSG) 限制对 VM 的访问,以此防范 VM 遭受潜在威胁。 NSG 包含一系列访问控制列表 (ACL) 规则,这些规则允许或拒绝来自同一子网内外的其他实例到 VM 的网络流量。
请注意,为了使计算机尽可能安全,必须限制 VM 对 Internet 的访问权限,并且应在子网上启用 NSG。
严重性为“高”的 VM 是面向 Internet 的 VM。
(相关策略:面向 Internet 的虚拟机应使用网络安全组进行保护
应禁用虚拟机上的 IP 转发 Azure 安全中心发现在某些虚拟机上已启用 IP 转发。 在虚拟机的 NIC 上启用 IP 转发可让该计算机接收发往其他目标的流量。 极少需要启用 IP 转发(例如,将 VM 用作网络虚拟设备时),因此,此策略应由网络安全团队评审。
(相关策略:应禁用虚拟机上的 IP 转发
中型
应通过即时网络访问控制来保护虚拟机的管理端口 Azure 安全中心已识别出一些对网络安全组中的管理端口过于宽松的入站规则。 启用实时访问控制,以保护 VM 免受基于 Internet 的暴力攻击。 了解详细信息。
(相关策略:应通过即时网络访问控制来保护虚拟机的管理端口
应关闭虚拟机上的管理端口 打开远程管理端口会使 VM 暴露在较高级别的 Internet 攻击风险之下。 此类攻击试图暴力破解凭据,来获取对计算机的管理员访问权限。
(相关策略:应关闭虚拟机上的管理端口
中型
应在 Linux 虚拟机上安装网络流量数据收集代理 安全中心使用 Microsoft Dependency Agent 从 Azure 虚拟机收集网络流量数据,以启用高级网络保护功能,如网络映射上的流量可视化、网络强化建议和特定网络威胁。
(相关策略:应在 Linux 虚拟机上安装网络流量数据收集代理
中型
应在 Windows 虚拟机上安装网络流量数据收集代理 安全中心使用 Microsoft Dependency Agent 从 Azure 虚拟机收集网络流量数据,以启用高级网络保护功能,如网络映射上的流量可视化、网络强化建议和特定网络威胁。
(相关策略:应在 Windows 虚拟机上安装网络流量数据收集代理
中型
应使用网络安全组来保护非面向 Internet 的虚拟机 使用网络安全组 (NSG) 限制对 VM 的访问,以此防范非面向 Internet 的 VM 遭受潜在威胁。 NSG 包含一系列访问控制列表 (ACL) 规则,这些规则允许或拒绝从其他实例到 VM 的网络流量,无论它们是否位于同一子网中。
请注意,为了使计算机尽可能安全,必须限制 VM 对 Internet 的访问权限,并且应在子网上启用 NSG。
(相关策略:应使用网络安全组来保护非面向 Internet 的虚拟机
应该启用安全传输到存储帐户 安全传输选项会强制存储帐户仅接受来自安全连接 (HTTPS) 的请求。 使用 HTTPS 可确保服务器和服务之间的身份验证并保护传输中的数据免受中间人攻击、窃听攻击和会话劫持等网络层攻击。
(相关策略:应启用到存储帐户的安全传输
子网应与网络安全组关联 使用网络安全组 (NSG) 限制对 VM 的访问,以此防范子网遭受潜在威胁。 NSG 包含一系列访问控制列表 (ACL) 规则,这些规则可以允许或拒绝流向子网的网络流量。 当 NSG 与子网关联时,ACL 规则适用于该子网中的所有 VM 实例和集成服务,但不适用于子网内的内部流量。 若要确保同一子网中的资源彼此之间的安全,请直接在资源上启用 NSG。
(相关策略:子网应与网络安全组关联

弃用的建议

建议 说明及相关策略 严重性
应限制对应用服务的访问 通过更改网络配置来限制对应用服务的访问,以拒绝来自过大范围的入站流量。
(相关策略:[预览]:应限制对应用服务的访问)
应强化 IaaS NSG 上 Web 应用的规则 如果运行 Web 应用程序的虚拟机的网络安全组 (NSG) 所包含的 NSG 规则对于 Web 应用程序端口而言过于宽松,应强化该安全组。
(相关策略:应该强化 IaaS 上 Web 应用程序的 NSG 规则)
应定义 Pod 安全策略,通过删除不必要的应用程序特权来减少攻击途径。 通过删除不必要的应用程序特权,来定义 Pod 安全策略以减少攻击途径。 建议配置 pod 安全策略,以便 pod 只能访问其有权访问的资源。
(相关策略:[预览]:应在 Kubernetes 服务上定义 Pod 安全策略)
中型
安装适用于 IoT 的 Azure 安全中心安全模块,以更深入地了解 IoT 设备 安装适用于 IoT 的 Azure 安全中心安全模块,以更深入地了解 IoT 设备。
应重启计算机来应用系统更新 重启计算机以应用系统更新并保护计算机免受漏洞攻击。 (相关策略:应在计算机上安装系统更新) 中型
应在计算机上安装监视代理 此操作在所选虚拟机上安装监视代理。 选择代理要向其报告的工作区。 (无相关策略)

后续步骤

若要详细了解建议,请参阅以下内容: