你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
数据安全建议
本文列出了 Microsoft Defender for Cloud 中可能会显示的所有数据安全建议。
环境中显示的建议基于要保护的资源和自定义配置。
若要了解可以针对这些建议采取的操作,请参阅 Defender for Cloud 修正建议。
提示
如果建议的描述中显示“无相关策略”,通常是因为该建议依赖于另一个建议。
例如,建议“应修正 Endpoint Protection 运行状况失败”依赖于建议“应安装 Endpoint Protection 解决方案”,后者检查 Endpoint Protection 解决方案是否已安装。 基础建议确实具有一个策略。 将策略限制为仅用于基本建议可简化策略管理。
Azure 数据建议
Azure Cosmos DB 应禁用公用网络访问
说明:禁用公用网络访问可确保 CosmosDB 帐户不会在公共 Internet 上公开,从而提高安全性。 创建专用终结点可限制 Cosmos DB 帐户公开。 了解详细信息。 (相关策略:Azure Cosmos DB 应禁用公用网络访问)。
严重性:中等
(必要时启用)Azure Cosmos DB 帐户应使用客户管理的密钥来加密静态数据
说明:默认情况下,不会评估使用客户管理的密钥来加密静态数据的建议,但仍会显示这些建议,以便为适用的方案启用。 将会使用平台管理的密钥自动对数据进行加密,因此,只有在合规性或限制性策略要求强制时,才应应用客户管理的密钥。 若要启用此建议,请导航到适用作用域的安全策略,并更新相应策略的 Effect 参数以审核或强制使用客户管理的密钥。 有关详细信息,请参阅管理安全策略。 使用客户管理的密钥来管理 Azure Cosmos DB 的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足监管合规标准,通常需要使用客户管理的密钥 (CMK)。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 访问 https://aka.ms/cosmosdb-cmk,了解有关 CMK 加密的详细信息。 (相关策略:Azure Cosmos DB 帐户应使用客户管理的密钥对数据进行静态加密)。
严重性:低
(必要时启用)Azure 机器学习工作区应使用客户管理的密钥 (CMK) 进行加密
说明:默认情况下,不会评估使用客户管理的密钥来加密静态数据的建议,但仍会显示这些建议,以便为适用的方案启用。 将会使用平台管理的密钥自动对数据进行加密,因此,只有在合规性或限制性策略要求强制时,才应应用客户管理的密钥。 若要启用此建议,请导航到适用作用域的安全策略,并更新相应策略的 Effect 参数以审核或强制使用客户管理的密钥。 有关详细信息,请参阅管理安全策略。 使用客户管理的密钥 (CMK) 管理 Azure 机器学习工作区数据的静态加密。 默认情况下,使用服务管理的密钥对客户数据进行加密,但为了满足监管合规标准,通常需要使用 CMK。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 访问 https://aka.ms/azureml-workspaces-cmk,了解有关 CMK 加密的详细信息。 (相关策略:应使用客户管理的密钥 (CMK) 对 Azure 机器学习工作区进行加密)。
严重性:低
Azure SQL 数据库应运行 TLS 版本 1.2 或更高版本
说明:将 TLS 版本设置为 1.2 或更高版本可以确保只能从使用 TLS 1.2 或更高版本的客户端访问 Azure SQL 数据库,从而提高安全性。 不建议使用低于 1.2 的 TLS 版本,因为它们存在有据可查的安全漏洞。 (相关策略:Azure SQL 数据库应运行 TLS 版本 1.2 或更高版本)。
严重性:中等
Azure SQL 托管实例应禁用公用网络访问
说明:在 Azure SQL 托管实例上禁用公用网络访问(公共终结点)可确保只能从其虚拟网络内部或专用终结点访问这些实例,以提高安全性。 详细了解公用网络访问权限。 (相关策略:Azure SQL 托管实例应禁用公用网络访问)。
严重性:中等
Cosmos DB 帐户应使用专用链接
说明:通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 将专用终结点映射到 Cosmos DB 帐户时,会降低数据泄露风险。 详细了解专用链接。 (相关策略:Cosmos DB 帐户应使用专用链接)。
严重性:中等
(必要时启用)MySQL 服务器应使用客户管理的密钥来加密静态数据
说明:默认情况下,不会评估使用客户管理的密钥来加密静态数据的建议,但仍会显示这些建议,以便为适用的方案启用。 将会使用平台管理的密钥自动对数据进行加密,因此,只有在合规性或限制性策略要求强制时,才应应用客户管理的密钥。 若要启用此建议,请导航到适用作用域的安全策略,并更新相应策略的 Effect 参数以审核或强制使用客户管理的密钥。 有关详细信息,请参阅管理安全策略。 使用客户管理的密钥来管理 MySQL 服务器的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足监管合规标准,通常需要使用客户管理的密钥 (CMK)。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 (相关策略:应为 MySQL 服务器启用自带密钥数据保护)。
严重性:低
(必要时启用)PostgreSQL 服务器应使用客户管理的密钥来加密静态数据
说明:默认情况下,不会评估使用客户管理的密钥来加密静态数据的建议,但仍会显示这些建议,以便为适用的方案启用。 将会使用平台管理的密钥自动对数据进行加密,因此,只有在合规性或限制性策略要求强制时,才应应用客户管理的密钥。 若要启用此建议,请导航到适用作用域的安全策略,并更新相应策略的 Effect 参数以审核或强制使用客户管理的密钥。 有关详细信息,请参阅管理安全策略。 使用客户管理的密钥来管理 PostgreSQL 服务器的静态加密。 默认情况下,使用服务管理的密钥对数据进行静态加密,但为了满足监管合规标准,通常需要使用客户管理的密钥 (CMK)。 CMK 允许使用由你创建并拥有的 Azure Key Vault 密钥对数据进行加密。 你可以完全控制并负责关键生命周期,包括轮换和管理。 (相关策略:应为 PostgreSQL 服务器启用自带密钥数据保护)。
严重性:低
(必要时启用)SQL 托管实例应使用客户管理的密钥来加密静态数据
说明:默认情况下,不会评估使用客户管理的密钥来加密静态数据的建议,但仍会显示这些建议,以便为适用的方案启用。 将会使用平台管理的密钥自动对数据进行加密,因此,只有在合规性或限制性策略要求强制时,才应应用客户管理的密钥。 若要启用此建议,请导航到适用作用域的安全策略,并更新相应策略的 Effect 参数以审核或强制使用客户管理的密钥。 有关详细信息,请参阅管理安全策略。 使用你自己的密钥实现透明数据加密 (TDE) 可增加透明度和对 TDE 保护器的控制,增强由 HSM 提供支持的外部服务的安全性,并促进职责划分。 此建议适用于具有相关合规性要求的组织。 (相关策略:SQL 托管实例应使用客户管理的密钥对数据进行静态加密)。
严重性:低
(必要时启用)SQL 服务器应使用客户管理的密钥来加密静态数据
说明:默认情况下,不会评估使用客户管理的密钥来加密静态数据的建议,但仍会显示这些建议,以便为适用的方案启用。 将会使用平台管理的密钥自动对数据进行加密,因此,只有在合规性或限制性策略要求强制时,才应应用客户管理的密钥。 若要启用此建议,请导航到适用作用域的安全策略,并更新相应策略的 Effect 参数以审核或强制使用客户管理的密钥。 有关详细信息,请参阅管理安全策略。 使用你自己的密钥实现透明数据加密 (TDE) 可增加透明度和对 TDE 保护器的控制,增强由 HSM 提供支持的外部服务的安全性,并促进职责划分。 此建议适用于具有相关合规性要求的组织。 (相关策略:SQL Server 应使用客户管理的密钥对数据进行静态加密)。
严重性:低
(必要时启用)存储帐户应使用客户管理的密钥 (CMK) 进行加密
说明:默认情况下,不会评估使用客户管理的密钥来加密静态数据的建议,但仍会显示这些建议,以便为适用的方案启用。 将会使用平台管理的密钥自动对数据进行加密,因此,只有在合规性或限制性策略要求强制时,才应应用客户管理的密钥。 若要启用此建议,请导航到适用作用域的安全策略,并更新相应策略的 Effect 参数以审核或强制使用客户管理的密钥。 有关详细信息,请参阅管理安全策略。 使用客户管理的密钥 (CMK) 更灵活地保护存储帐户。 指定 CMK 时,该密钥会用于保护和控制对加密数据的密钥的访问。 使用 CMK 可提供附加功能来控制密钥加密密钥的轮换或以加密方式擦除数据。 (相关策略:存储帐户应使用客户管理的密钥 (CMK) 进行加密)。
严重性:低
应在 SQL 托管实例的高级数据安全设置中启用所有高级威胁防护类型
说明:建议在 SQL 托管实例上启用所有高级威胁防护类型。 启用所有类型可以防范 SQL 注入、数据库漏洞和任何其他异常活动。 (无相关策略)
严重性:中等
应在 SQL Server 的高级数据安全设置中启用所有高级威胁防护类型
说明:建议在 SQL 服务器上启用所有高级威胁防护类型。 启用所有类型可以防范 SQL 注入、数据库漏洞和任何其他异常活动。 (无相关策略)
严重性:中等
API 管理服务应使用虚拟网络
说明:Azure 虚拟网络部署提供了增强的安全性和隔离性,并允许将 API 管理服务放置在控制访问权限的非 Internet 可路由的网络中。 然后,可以使用各种 VPN 技术将这些网络连接到本地网络,这样就能够访问网络中的和/或本地的后端服务。 可以将开发人员门户和 API 网关配置为可以从 Internet 访问或只能在虚拟网络内访问。 (相关策略:API 管理服务应使用虚拟网络)。
严重性:中等
应用程序配置应使用专用链接
说明:通过 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 代理自动预配
说明:若要监视安全漏洞和威胁,Microsoft Defender for Cloud 会从 Azure 虚拟机 (VM) 收集数据。 数据是使用 Log Analytics 代理收集的,该代理以前称为 Microsoft Monitoring Agent (MMA),它从计算机中读取各种安全相关的配置和事件日志,然后将数据复制到 Log Analytics 工作区以用于分析。 建议启用自动预配,将代理自动部署到所有受支持的 Azure VM 和任何新创建的 VM。 (相关策略:应为订阅启用自动预配 Log Analytics 代理)。
严重性:低
Azure Cache for Redis 应驻留在虚拟网络中
说明:Azure 虚拟网络 (VNet) 部署为 Azure Cache for Redis 缓存以及子网、访问控制策略和其他功能提供增强的安全性和隔离,以进一步限制访问。 为 Azure Redis 缓存实例配置了 VNet 后,该实例不可公开寻址,而只能从 VNet 中的虚拟机和应用程序进行访问。 (相关策略:Azure Cache for Redis 应驻留在虚拟网络中)。
严重性:中等
Azure Database for MySQL 应预配 Azure Active Directory 管理员
说明:为 Azure Database for MySQL 预配 Azure AD 管理员,以启用 Azure AD 身份验证。 Azure AD 身份验证可简化权限管理和数据库用户和其他 Microsoft 服务的集中标识管理(相关策略:应为 MySQL 服务器预配 Azure Active Directory 管理员)。
严重性:中等
Azure Database for PostgreSQL 应预配 Azure Active Directory 管理员
说明:为 Azure Database for PostgreSQL 预配 Azure AD 管理员,以启用 Azure AD 身份验证。 使用 Azure AD 身份验证可以简化权限管理,以及集中化数据库用户和其他 Microsoft 服务的标识管理
(相关策略:应为 PostgreSQL 服务器预配 Azure Active Directory 管理员)。
严重性:中等
Azure Database for PostgreSQL 灵活服务器应仅启用Microsoft Entra 身份验证
说明:禁用本地身份验证方法和要求Microsoft Entra 身份验证可提高安全性,方法是确保只能通过Microsoft Entra 标识访问 Azure Database for PostgreSQL 灵活服务器(相关策略: Azure PostgreSQL 灵活服务器应已启用Microsoft仅 Entra 身份验证)。
严重性:中等
Azure Cosmos DB 帐户应有防火墙规则
说明:应在 Azure Cosmos DB 帐户上定义防火墙规则,以防止来自未经授权的源的流量。 至少定义了一个 IP 规则且启用了虚拟网络筛选器的帐户才会被视为合规。 禁用公共访问的帐户也被视为合规。 (相关策略:Azure Cosmos DB 帐户应有防火墙规则)。
严重性:中等
Azure 事件网格域应使用专用链接
说明:通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到事件网格域(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://aka.ms/privateendpoints。 (相关策略:Azure 事件网格域应使用专用链接)。
严重性:中等
Azure 事件网格主题应使用专用链接
说明:通过 Azure 专用链接,在没有源位置或目标位置的公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到主题(而不是整个服务),还可以防范数据泄露风险。 有关详细信息,请访问:https://aka.ms/privateendpoints。 (相关策略:Azure 事件网格主题应使用专用链接)。
严重性:中等
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 服务应使用专用链接)。
严重性:中等
Azure Spring Cloud 应使用网络注入
说明:Azure Spring Cloud 实例应使用虚拟网络注入实现以下目的:1。 将 Azure Spring Cloud 与 Internet 隔离。 2. 使 Azure Spring Cloud 能够与本地数据中心内的系统和/或其他虚拟网络中的 Azure 服务内的系统进行交互。 3. 授权客户控制 Azure Spring Cloud 的入站和出站网络通信。 (相关策略:Azure Spring Cloud 应使用网络注入)。
严重性:中等
应为 SQL Server 预配 Azure Active Directory 管理员
说明:为 SQL Server 预配 Azure AD 管理员,以启用 Azure AD 身份验证。 使用 Azure AD 身份验证可以简化权限管理,以及集中化数据库用户和其他 Microsoft 服务的标识管理。 (相关策略:应为 SQL Server 预配 Azure Active Directory 管理员)。
严重性:高
Azure Synapse 工作区身份验证模式应已为仅 Azure Active Directory
说明:Azure Synapse 工作区身份验证模式应为仅限 Azure Active Directory。仅限 Azure Active Directory 身份验证方法通过确保 Synapse 工作区仅要求 Azure AD 标识进行身份验证来提高安全性。 了解详细信息。 (相关策略:Synapse 工作区应仅使用 Azure Active Directory 标识进行身份验证)。
严重性:中等
代码存储库应处理代码扫描结果
说明:Defender for DevOps 在代码存储库中发现了漏洞。 若要改善存储库的安全状况,强烈建议修复这些漏洞。 (无相关策略)
严重性:中等
代码存储库应处理 Dependabot 扫描结果
说明:Defender for DevOps 在代码存储库中发现了漏洞。 若要改善存储库的安全状况,强烈建议修复这些漏洞。 (无相关策略)
严重性:中等
与处理代码扫描结果一样,代码存储库应处理基础结构调查结果
说明:Defender for DevOps 发现基础结构是存储库中的代码安全配置问题。 在模板文件中已检测到以下问题。 若要改善相关云资源的安全状况,强烈建议修复这些问题。 (无相关策略)
严重性:中等
代码存储库应处理机密扫描结果
说明:Defender for DevOps 在代码存储库中发现了机密。 应立即修正此问题以防止安全漏洞。 在存储库中发现的机密可能会被泄露或被攻击者发现,导致应用程序或服务遭到入侵。 对于 Azure DevOps,Microsoft Security DevOps CredScan 工具仅扫描它配置为运行的生成。 因此,结果可能无法反映存储库中机密的完整状态。 (无相关策略)
严重性:高
认知服务帐户应启用数据加密
说明:此策略审核未使用数据加密的任何认知服务帐户。 对于具有存储的各个帐户,应启用使用客户管理的密钥或 Microsoft 管理的密钥的数据加密。 (相关策略:认知服务帐户应启用数据加密)。
严重性:低
认知服务帐户应使用客户自有存储或启用数据加密
说明:此策略审核未使用客户自有存储或数据加密的任何认知服务帐户。 对于具有存储的各个认知服务帐户,应使用客户自有存储或启用数据加密。 与 Microsoft 云安全基准保持一致。 (相关策略:认知服务帐户应使用客户自有存储或启用数据加密。)
严重性:低
应启用 Azure Data Lake Store 的诊断日志
说明:启用日志并将其保留长达一年的时间。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。 (相关策略:应启用 Azure Data Lake Store 中的诊断日志)。
严重性:低
应启用 Data Lake Analytics 的诊断日志
说明:启用日志并将其保留长达一年的时间。 这样便可以在发生安全事件或网络遭泄露时,重新创建活动线索用于调查目的。 (相关策略:应启用 Data Lake Analytics 中的诊断日志)。
严重性:低
应启用高严重性警报的电子邮件通知
说明:请在 Defender for Cloud 中启用对高严重性警报的电子邮件通知,以确保在其中一个订阅存在潜在安全漏洞时,组织中的相关人员会收到通知。 (相关策略:应启用高严重性警报的电子邮件通知)。
严重性:低
应启用向订阅所有者发送高严重性警报的电子邮件通知
说明:请在 Defender for Cloud 中设置对订阅所有者的高严重性警报的电子邮件通知,以确保在订阅所有者的订阅存在潜在安全漏洞时,向其发出通知。 (相关策略:应启用发送给订阅所有者的高严重性警报的电子邮件通知)。
严重性:中等
应为 MySQL 数据库服务器启用“强制 SSL 连接”
说明:Azure Database for MySQL 支持使用安全套接字层 (SSL) 将 Azure Database for MySQL 服务器连接到客户端应用程序。 通过在数据库服务器与客户端应用程序之间强制实施 SSL 连接,可以加密服务器与应用程序之间的数据流,有助于防止“中间人”攻击。 此配置强制始终启用 SSL 以访问数据库服务器。 (相关策略:应为 MySQL 数据库服务器启用强制执行 SSL 连接)。
严重性:中等
应为 PostgreSQL 数据库服务器启用“强制 SSL 连接”
说明:Azure Database for PostgreSQL 支持使用安全套接字层 (SSL) 将 Azure Database for PostgreSQL 服务器连接到客户端应用程序。 通过在数据库服务器与客户端应用程序之间强制实施 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 启用异地冗余备份)。
严重性:低
GitHub 存储库应启用代码扫描
说明:GitHub 使用代码扫描分析代码,以便查找代码中的安全漏洞和错误。 代码扫描可用于查找、会审和优先排列代码中现有问题的修复。 代码扫描还可防止开发人员引入新问题。 扫描可安排在特定的日期和时间,也可以在存储库中发生特定事件(例如推送)时触发。 如果代码扫描发现代码中的潜在漏洞或错误,GitHub 会在存储库中显示警报。 漏洞是项目代码中的问题,可能被人利用来损害项目的机密性、完整性或可用性。 (无相关策略)
严重性:中等
GitHub 存储库应启用 Dependabot 扫描
说明:GitHub 在检测到影响存储库的代码依赖项中的漏洞时发送 Dependabot 警报。 漏洞是项目代码中的问题,可能被利用来损害机密性、完整性或者该项目或其他使用其代码的项目的可用性。 漏洞的类型、严重性和攻击方法各不相同。 代码依赖于具有安全性漏洞的包时,这种易受攻击的依赖项会导致一系列问题。 (无相关策略)
严重性:中等
GitHub 存储库应启用机密扫描
说明:GitHub 扫描存储库中已知类型的机密,以防止对意外提交到存储库的机密的欺诈性使用。 机密扫描将扫描 GitHub 存储库中存在的所有分支上的整个 Git 历史记录,以查找任何机密。 机密的示例包括服务提供程序为进行身份验证而颁发的令牌和私钥。 如果将机密签入存储库,任何对存储库具有读取权限的人都可以使用该机密和这些权限访问外部服务。 机密应存储在项目存储库外部的专用、安全位置。 (无相关策略)
严重性:高
应启用适用于 Azure SQL 数据库服务器的 Microsoft Defender
说明:Microsoft Defender for SQL 是提供高级 SQL 安全功能的统一包。 它包括以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对数据库产生威胁的异常活动以及发现敏感数据并对其进行分类。
此计划的保护按 Defender 计划页上所示收费。 如果此订阅中没有任何 Azure SQL Database 服务器,则无需付费。 如果以后在此订阅上创建 Azure SQL 数据库服务器,则这些服务器将自动受到保护,并开始计费。 详细了解各区域的定价详细信息。
有关详细信息,请参阅 Microsoft Defender for SQL 简介。 (相关策略:应启用用于 Azure SQL 数据库服务器的 Azure Defender)。
严重性:高
应启用适用于 DNS 的 Microsoft Defender
说明:Microsoft Defender for DNS 通过持续监视所有来自 Azure 资源的 DNS 查询,为云资源额外提供保护层。 Defender for DNS 会向你发出有关 DNS 层的可疑活动的警报。 有关详细信息,请参阅 Microsoft Defender for DNS 简介。 启用此 Defender 计划会产生费用。 了解 Defender for Cloud 定价页上每个区域的定价详细信息:Defender for Cloud 定价。 (无相关策略)
严重性:高
应启用适用于开源关系数据库的 Microsoft Defender
说明:适用于开源关系数据库的 Microsoft Defender 可以检测异常活动,这些活动指示有人企图以非寻常或可能有害的方式访问或恶意利用数据库。 有关详细信息,请参阅适用于开源关系数据库的 Microsoft Defender 简介。
启用此计划会产生保护开源关系数据库的费用。 如果在此订阅中没有任何开源关系数据库,则不会产生任何费用。 如果以后在此订阅中创建任何开源关系数据库,它们将自动受到保护,并从该时间点开始计费。 (无相关策略)
严重性:高
应启用适用于资源管理器的 Microsoft Defender
说明:适用于资源管理器的 Microsoft Defender 会自动监视组织中的资源管理操作。 Defender for Cloud 会检测威胁,并向你发出有关可疑活动的警报。 有关详细信息,请参阅适用于资源管理器的 Microsoft Defender 简介。 启用此 Defender 计划会产生费用。 了解 Defender for Cloud 定价页上每个区域的定价详细信息:Defender for Cloud 定价。 (无相关策略)
严重性:高
应在工作区中的计算机上启用 Microsoft Defender for SQL
说明:适用于服务器的 Microsoft Defender 带来了适用于 Windows 和 Linux 计算机的威胁检测和高级防护功能。 如果订阅上启用了此 Defender 计划,但工作区上未启用,则需要为适用于服务器的 Microsoft Defender 的全部功能付费,但会错过某些权益。 在工作区上启用了适用于服务器的 Microsoft Defender 时,向该工作区报告的所有计算机都将为适用于服务器的 Microsoft Defender 付费,即使它们位于未启用 Defender 计划的订阅中。 除非还在订阅上启用了适用于服务器的 Microsoft Defender,否则这些计算机将无法利用实时 VM 访问、自适应应用程序控制和 Azure 资源的网络检测。 有关详细信息,请参阅适用于服务器的 Microsoft Defender 简介。 (无相关策略)
严重性:中等
应启用适用于计算机上的 SQL Server 的 Microsoft Defender
说明:Microsoft Defender for SQL 是提供高级 SQL 安全功能的统一包。 它包括以下功能:呈现和缓解潜在数据库漏洞、检测可能指示对数据库产生威胁的异常活动以及发现敏感数据并对其进行分类。
修正此建议将导致保护计算机上的 SQL 服务器产生费用。 如果此订阅中没有任何计算机 SQL Server,则不会产生任何费用。 如果以后在此订阅中创建任何计算机上的 SQL Server,它们将自动受到保护,并从该时间点开始计费。 详细了解适用于计算机上的 SQL 服务器的 Microsoft Defender。 (相关策略:应启用计算机上用于 SQL Server 的 Azure Defender)。
严重性:高
应为未受保护的 Azure SQL 服务器启用 Microsoft Defender for SQL
说明:Microsoft Defender for SQL 是提供高级 SQL 安全功能的统一包。 它可呈现和减少潜在数据库漏洞,以及检测可能表明数据库有威胁的异常活动。 Microsoft Defender for SQL 按各区域的定价详细信息所示计费。 (相关策略:应在 SQL Server 上启用高级数据安全)。
严重性:高
应为未受保护的 SQL 托管实例启用 Microsoft Defender for SQL
说明:Microsoft Defender for SQL 是提供高级 SQL 安全功能的统一包。 它可呈现和减少潜在数据库漏洞,以及检测可能表明数据库有威胁的异常活动。 Microsoft Defender for SQL 按各区域的定价详细信息所示计费。 (相关策略:应在 SQL 托管实例上启用高级数据安全)。
严重性:高
应启用适用于存储的 Microsoft Defender
说明:Microsoft Defender for Storage 检测到访问或利用存储帐户的异常和潜在有害尝试。
此计划的保护按 Defender 计划页上所示收费。 如果在此订阅中没有任何 Azure 存储帐户,则无需付费。 如果以后在此订阅上创建 Azure 存储帐户,则这些帐户将自动受到保护,并开始计费。 详细了解各区域的定价详细信息。 有关详细信息,请参阅 Microsoft Defender for Storage 简介。 (相关策略: 应启用 Azure Defender for Storage。
严重性:高
应启用网络观察程序
说明:网络观察程序是一个区域性服务,可用于在网络方案级别监视和诊断 Azure 内部以及传入和传出 Azure 的流量的状态。 利用方案级监视,你可以在端到端网络级别视图中诊断问题。 借助网络观察程序随附的网络诊断和可视化工具,可以了解、诊断和洞察 Azure 中的网络。 (相关策略:应启用网络观察程序)。
严重性:低
应启用 Azure SQL 数据库上的专用终结点连接
说明:专用终结点连接通过启用到 Azure SQL 数据库的专用连接来加强安全通信。 (相关策略:应启用 Azure SQL 数据库上的专用终结点连接)。
严重性:中等
应为 MariaDB 服务器启用专用终结点
说明:专用终结点连接通过启用到 Azure Database for MariaDB 的专用连接来加强安全通信。 配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。 (相关策略:应为 MariaDB 服务器启用专用终结点)。
严重性:中等
应为 MySQL 服务器启用专用终结点
说明:专用终结点连接通过启用到 Azure Database for MySQL 的专用连接来加强安全通信。 配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。 (相关策略:应为 MySQL 服务器启用专用终结点)。
严重性:中等
应为 PostgreSQL 服务器启用专用终结点
说明:专用终结点连接通过启用到 Azure Database for PostgreSQL 的专用连接来加强安全通信。 配置专用终结点连接,以启用对仅来自已知网络的流量的访问,并防止访问所有其他 IP 地址,包括 Azure 内的地址。 (相关策略:应为 PostgreSQL 服务器启用专用终结点)。
严重性:中等
应禁用 Azure SQL 数据库上的公用网络访问
说明:禁用公用网络访问属性可确保只能从专用终结点访问 Azure SQL 数据库,从而提高安全性。 此配置拒绝所有符合基于 IP 或虚拟网络的防火墙规则的登录。 (相关策略:应禁用 Azure SQL 数据库上的公用网络访问)。
严重性:中等
应为认知服务帐户禁用公用网络访问
说明:此策略审核启用了公用网络访问的环境中的任何认知服务帐户。 应禁用公用网络访问,仅允许来自专用终结点的连接。 (相关策略:应为认知服务帐户禁用公用网络访问)。
严重性:中等
应为 MariaDB 服务器禁用公用网络访问
说明:禁用公用网络访问属性以提高安全性,并确保只能从专用终结点访问 Azure Database for MariaDB。 此配置严格禁止访问 Azure IP 范围之外的任何公共地址空间,并拒绝与 IP 或基于虚拟网络的防火墙规则匹配的所有登录。 (相关策略:应为 MariaDB 服务器禁用公用网络访问)。
严重性:中等
应为 MySQL 服务器禁用公用网络访问
说明:禁用公用网络访问属性以提高安全性,并确保只能从专用终结点访问 Azure Database for MySQL。 此配置严格禁止访问 Azure IP 范围之外的任何公共地址空间,并拒绝与 IP 或基于虚拟网络的防火墙规则匹配的所有登录。 (相关策略:应为 MySQL 服务器禁用公用网络访问)。
严重性:中等
应为 PostgreSQL 服务器禁用公用网络访问
说明:禁用公用网络访问属性以提高安全性,并确保只能从专用终结点访问 Azure Database for PostgreSQL。 此配置禁止访问 Azure IP 范围之外的任何公共地址空间,并拒绝与 IP 或基于虚拟网络的防火墙规则匹配的所有登录。 (相关策略:应为 PostgreSQL 服务器禁用公用网络访问)。
严重性:中等
Redis Cache 应仅允许通过 SSL 访问
说明:仅启用通过 SSL 来与 Redis 缓存建立连接。 使用安全连接可确保服务器和服务之间的身份验证并保护传输中的数据免受中间人攻击、窃听攻击和会话劫持等网络层攻击。 (相关策略:应只启用与 Azure Cache for Redis 的安全连接)。
严重性:高
SQL 数据库应已解决漏洞结果
说明:SQL 漏洞评估会扫描数据库中的安全漏洞,并显示与最佳做法之间的任何偏差,如配置错误、权限过多和敏感数据未受保护。 解决发现的漏洞可以极大地改善数据库安全态势。 了解详细信息(相关策略:应修正 SQL 数据库上的漏洞)。
严重性:高
SQL 托管实例应配置了漏洞评估
说明:漏洞评估可发现、跟踪和帮助修正潜在数据库漏洞。 (相关策略:应在 SQL 托管实例上启用漏洞评估)。
严重性:高
计算机上的 SQL Server 应已解决漏洞结果
说明:SQL 漏洞评估会扫描数据库中的安全漏洞,并显示与最佳做法之间的任何偏差,如配置错误、权限过多和敏感数据未受保护。 解决发现的漏洞可以极大地改善数据库安全态势。 了解详细信息(相关策略:应修正计算机上 SQL 数据库上的漏洞)。
严重性:高
应为 SQL Server 预配 Azure Active Directory 管理员
说明:为 SQL Server 预配 Azure AD 管理员,以启用 Azure AD 身份验证。 使用 Azure AD 身份验证可以简化权限管理,以及集中化数据库用户和其他 Microsoft 服务的标识管理。 (相关策略:应为 SQL Server 预配 Azure Active Directory 管理员)。
严重性:高
SQL 服务器应配置了漏洞评估
说明:漏洞评估可发现、跟踪和帮助修正潜在数据库漏洞。 (相关策略:应在 SQL Server 上启用漏洞评估)。
严重性:高
存储帐户应使用专用链接连接
说明:专用链接通过向存储帐户提供专用连接来强制安全通信(相关策略:存储帐户应使用专用链接连接)。
严重性:中等
存储帐户应迁移到新的 Azure 资源管理器资源
说明:若要充分利用 Azure 资源管理器中的新功能,可将现有部署从经典部署模型中迁移出来。 资源管理器启用安全增强功能,例如:更强的访问控制 (RBAC)、更好的审核、基于 ARM 的部署和治理、托管标识访问权限、用于提供机密的密钥保管库的访问权限、基于 Azure AD 的身份验证以及可实现更轻松安全管理的标记和资源组支持。 了解详细信息(相关策略:应将存储帐户迁移到新的 Azure 资源管理器资源)。
严重性:低
存储帐户应阻止共享密钥访问
说明:审核 Azure Active Directory (Azure AD) 的要求,以授权对存储帐户的请求。 默认情况下,可以使用 Azure Active Directory 凭据对请求进行授权,或使用帐户访问密钥对其进行共享密钥授权。 在这两种类型的授权中,与共享密钥相比,Azure AD 提供更高级别的安全性和易用性,是 Microsoft 推荐的授权方法。 (相关策略:策略)
严重性:中等
存储帐户应使用虚拟网络规则来限制网络访问
说明:使用虚拟网络规则作为首选方法(而不使用基于 IP 的筛选),保护存储帐户免受潜在威胁危害。 禁用基于 IP 的筛选可以阻止公共 IP 访问你的存储帐户。 (相关策略:存储帐户应使用虚拟网络规则来限制网络访问)。
严重性:中等
订阅应有一个联系人电子邮件地址,用于接收安全问题通知
说明:请在 Defender for Cloud 中设置一个用于接收电子邮件通知的安全联系人,以确保在其中一个订阅存在潜在安全漏洞时,组织中的相关人员会收到通知。 (相关策略:订阅应有一个联系人电子邮件地址,用于接收安全问题通知)
严重性:低
应在 SQL 数据库上启用透明数据加密
说明:启用透明数据加密来保护静态数据,并满足合规性要求(相关策略:应启用 SQL 数据库上的透明数据加密)。
严重性:低
VM 映像生成器模板应使用专用链接
说明:审核没有配置虚拟网络的 VM 映像生成器模板。 当没有配置虚拟网络时,就会改为创建并使用公共 IP,这样可能会直接向 Internet 公开资源,并扩大潜在攻击面。 (相关策略:VM 映像生成器模板应使用专用链接)。
严重性:中等
应为应用程序网关启用 Web 应用程序防火墙 (WAF)
说明:将 Azure Web 应用程序防火墙 (WAF) 部署在面向公众的 Web 应用程序的前面,以便对传入流量进行额外检查。 Web 应用程序防火墙 (WAF) 为 Web 应用程序提供集中保护,使其免受常见攻击和漏洞的侵害,例如 SQL 注入、跨站脚本以及本地和远程文件执行。 还可以通过自定义规则,按国家/地区、IP 地址范围和其他 http(s) 参数限制对 Web 应用程序的访问。 (相关策略:应为应用程序网关启用 Web 应用程序防火墙 (WAF))。
严重性:低
应为 Azure Front Door 服务启用 Web 应用程序防火墙 (WAF)
说明:将 Azure Web 应用程序防火墙 (WAF) 部署在面向公众的 Web 应用程序的前面,以便对传入流量进行额外检查。 Web 应用程序防火墙 (WAF) 为 Web 应用程序提供集中保护,使其免受常见攻击和漏洞的侵害,例如 SQL 注入、跨站脚本以及本地和远程文件执行。 还可以通过自定义规则,按国家/地区、IP 地址范围和其他 http(s) 参数限制对 Web 应用程序的访问。 (相关策略:应为 Azure Front Door 服务启用 Web 应用程序防火墙 (WAF))
严重性:低
AWS 数据建议
Amazon Aurora 群集应已启用回溯
说明:此控件检查 Amazon Aurora 群集是否已启用回溯。 备份有助于更快地从安全事件中恢复。 它们还可以增强系统的复原能力。 Aurora 回溯可减少将数据库恢复到某个时间点的时间。 它不需要进行数据库还原。 有关 Aurora 中回溯的详细信息,请参阅 Amazon Aurora 用户指南中的 Aurora DB 群集上的回溯。
严重性:中等
Amazon EBS 快照应不可公开恢复
说明:除非明确允许,否则 Amazon EBS 快照不应被所有人公开还原,以避免意外泄露数据。 此外,更改 Amazon EBS 配置的权限应该仅限于授权的 AWS 帐户。
严重性:高
Amazon ECS 任务定义应具有安全网络模式和用户定义
说明:此控件检查具有主机网络模式的活动 Amazon ECS 任务定义是否也具有特权或用户容器定义。 对于具有主机网络模式的任务定义和 privileged=false 或为空,user=root 或为空的容器定义,此控件失败。 如果任务定义具有提升的权限,是因为客户专门选择了该配置。 当任务定义启用了主机网络,但客户未选择提升的权限时,此控件将检查意外的特权升级。
严重性:高
Amazon Elasticsearch Service 域应加密在节点之间发送的数据
说明:此控件检查 Amazon ES 域是否已启用节点到节点加密。 可以使用 HTTPS (TLS) 来帮助防止潜在攻击者使用用户中间人或类似的攻击来窃听或操作网络流量。 应仅允许通过 HTTPS (TLS) 进行加密连接。 为 Amazon ES 域启用节点到节点加密可确保在传输中加密群集内通信。 此配置可能会对性能产生负面影响。 启用此选项前,应注意并测试性能权衡。
严重性:中等
Amazon Elasticsearch Service 域应启用静态加密
说明:启用 Amazon ES 域的其余部分加密以保护敏感数据非常重要
严重性:中等
应使用客户管理的密钥对 Amazon RDS 数据库进行加密
说明:此检查标识使用默认 KMS 密钥而不是客户托管密钥加密的 RDS 数据库。 作为一种先进的做法,请使用客户管理的密钥加密 RDS 数据库中的数据,并保持对敏感工作负载上的密钥和数据的控制。
严重性:中等
应使用自动备份设置配置 Amazon RDS 实例
说明:此检查标识未使用自动备份设置设置设置的 RDS 实例。 如果设置了自动备份,RDS 将创建数据库实例的存储卷快照,即备份整个数据库实例,而不仅仅是单个数据库,这样可以提供时间点恢复。 自动备份发生在指定的备份时段时间,并将备份保留期中定义的有限时间段内。 建议为关键 RDS 服务器设置自动备份,以帮助数据还原过程。
严重性:中等
Amazon Redshift 群集应启用审核日志记录
说明:此控件检查 Amazon Redshift 群集是否已启用审核日志记录。 Amazon Redshift 审核日志记录提供有关群集中连接和用户活动的附加信息。 此数据可在 Amazon S3 中进行存储和保护,对安全审核和调查非常有用。 有关详细信息,请参阅 Amazon Redshift 群集管理指南中的数据库审核日志记录。
严重性:中等
Amazon Redshift 群集应启用自动快照
说明:此控件检查 Amazon Redshift 群集是否启用了自动快照。 它还检查快照保持期是否大于或等于 7。 备份有助于更快地从安全事件中恢复。 它们增强了系统的复原能力。 默认情况下,Amazon Redshift 定期拍摄快照。 此控件检查是否已启用自动快照并且至少保留 7 天。 有关 Amazon Redshift 自动快照的详细信息,请参阅 Amazon Redshift 群集管理指南中的自动快照。
严重性:中等
Amazon Redshift 群集应禁止公共访问
说明:建议 Amazon Redshift 群集通过评估群集配置项目中的“publiclyAccessible”字段来避免公共可访问性。
严重性:高
Amazon Redshift 应启用自动升级到主版本
说明:此控件检查是否为 Amazon Redshift 群集启用了自动主版本升级。 启用主版本自动升级可确保在维护时段内安装 Amazon Redshift 群集的最新主版本更新。 这些更新可能包括安全修补程序和 bug 修补程序。 使用修补程序安装保持最新版本是保护系统的一个重要步骤。
严重性:中等
Amazon SQS 队列应静态加密
说明:此控件检查 Amazon SQS 队列是否静态加密。 服务器端加密 (SSE) 使你能够在加密队列中传输敏感数据。 为了保护队列中的消息内容,SSE 使用 AWS KMS 中管理的密钥。 有关详细信息,请参阅 Amazon Simple Queue Service 开发人员指南中的 静态加密。
严重性:中等
应为重要群集事件配置 RDS 事件通知订阅
说明:此控件检查 Amazon RDS 事件订阅是否存在为以下源类型启用了通知:事件类别键值对。 DBCluster:[维护和故障]。 RDS 事件通知使用 Amazon SNS 让你了解 RDS 资源的可用性或配置发生的更改。 这些通知允许快速响应。 有关 RDS 事件通知的更多信息,请参阅 Amazon RDS 用户指南中的“使用 Amazon RDS 事件通知”。
严重性:低
应为重要数据库实例事件配置 RDS 事件通知订阅
说明:此控件检查 Amazon RDS 事件订阅是否存在,并启用以下源类型的通知:事件类别键值对。 DBInstance
:[维护、配置更改和失败]。
RDS 事件通知使用 Amazon SNS 让你了解 RDS 资源的可用性或配置发生的更改。 这些通知允许快速响应。
有关 RDS 事件通知的更多信息,请参阅 Amazon RDS 用户指南中的“使用 Amazon RDS 事件通知”。
严重性:低
应为关键数据库实例参数组配置 RDS 事件通知订阅
说明:此控件检查 Amazon RDS 事件订阅是否存在,并启用以下源类型的通知:事件类别键值对。 DBParameterGroup: ["configuration"、"change"]。 RDS 事件通知使用 Amazon SNS 让你了解 RDS 资源的可用性或配置发生的更改。 这些通知允许快速响应。 有关 RDS 事件通知的更多信息,请参阅 Amazon RDS 用户指南中的“使用 Amazon RDS 事件通知”。
严重性:低
应为关键数据库安全组事件配置 RDS 事件通知订阅
说明:此控件检查 Amazon RDS 事件订阅是否存在,并启用以下源类型的通知:事件类别键值对。DBSecurityGroup:[配置、更改、失败]。 RDS 事件通知使用 Amazon SNS 让你了解 RDS 资源的可用性或配置发生的更改。 这些通知允许快速响应。 有关 RDS 事件通知的更多信息,请参阅 Amazon RDS 用户指南中的“使用 Amazon RDS 事件通知”。
严重性:低
应启用 API Gateway REST 和 WebSocket API 日志记录
说明:此控件检查 Amazon API 网关 REST 或 WebSocket API 的所有阶段是否已启用日志记录。 如果没有为某一阶段的所有方法启用日志记录,或者日志记录级别既不是 ERROR 也不是 INFO,则此控件失败。 API Gateway REST 或 WebSocket API 阶段应启用相关日志。 API Gateway REST 和 WebSocket API 执行日志记录提供对 API Gateway REST 和 WebSocket API 阶段发出的请求的详细记录。 这些阶段包括 API 集成后端响应、Lambda 授权者响应以及 AWS 集成终结点的 requestId。
严重性:中等
API Gateway REST API 缓存数据应进行静态加密
说明:此控件检查是否已加密已启用缓存的 API 网关 REST API 阶段中的所有方法。 如果 API Gateway REST API 阶段中的任一方法配置为缓存且未加密缓存,则此控件失败。 静态加密数据可降低未通过 AWS 身份验证的用户访问磁盘上存储的数据的风险。 它添加了另一组访问控制,以限制未经授权的用户访问数据。 例如,需要在读取数据之前使用 API 权限对数据进行解密。 API Gateway REST API 缓存应该静态加密,以提供额外的安全层。
严重性:中等
API Gateway REST API 阶段应配置为使用 SSL 证书进行后端身份验证
说明:此控制检查 Amazon API 网关 REST API 阶段是否配置了 SSL 证书。 后端系统使用这些证书对 API Gateway 中传入的请求进行身份验证。 API Gateway REST API 阶段应配置 SSL 证书,以允许后端系统对来自 API Gateway 的请求进行身份验证。
严重性:中等
API Gateway REST API 阶段应启用 AWS X-Ray 跟踪
说明:此控件检查是否为 Amazon API 网关 REST API 阶段启用了 AWS X-Ray 活动跟踪。 使用 X Ray 活动跟踪可以更快地响应底层基础结构中的性能变化。 性能的变化可能会导致 API 的可用性不足。 X-Ray 活动跟踪提供流经 API Gateway REST API 操作和连接服务的用户请求的实时指标。
严重性:低
API Gateway 应与 AWS WAF Web ACL 相关联
说明:此控件检查 API 网关阶段是否使用 AWS WAF Web 访问控制列表(ACL)。 如果 AWS WAF Web ACL 未连接到 REST API 网关阶段,则此控件失败。 AWS WAF 是一种 Web 应用程序防火墙,可帮助防止 Web 应用和 API 遭受攻击。 它使你能够配置 ACL,该 ACL 是一组规则,根据你定义的可自定义 Web 安全规则和条件允许、阻止 Web 请求,或对 Web 请求进行计数。 确保 API Gateway 阶段与 AWS WAF Web ACL 相关联,以帮助防止其受到恶意攻击。
严重性:中等
应启用应用程序和传统负载均衡器日志记录
说明:此控件检查应用程序负载均衡器和经典负载均衡器是否已启用日志记录。 如果 access_logs.s3.enabled
为 false,则控件将失败。
弹性负载均衡提供访问日志,捕获有关发送到负载均衡器的请求的详细信息。 每个日志都包含一些信息,例如收到请求的时间、客户端的 IP 地址、延迟、请求路径和服务器响应。 可以使用访问日志来分析流量模式并解决问题。
若要了解详细信息,请参阅传统负载均衡器用户指南中的访问传统负载均衡器的日志。
严重性:中等
附加的 EBS 卷应进行静态加密
说明:此控件检查处于附加状态的 EBS 卷是否已加密。 要通过此检查,EBS 卷必须处于使用中状态且已加密。 如果未附加 EBS 卷,则不受此检查的约束。 应静态加密 EBS 以实现 EBS 卷中敏感数据的额外安全层。 Amazon EBS 加密为 EBS 资源提供了一个简单的加密解决方案,无需构建、维护和保护你自己的密钥管理基础结构。 创建加密卷和快照时,它使用 AWS KMS 客户主密钥 (CMK)。 若要了解有关 Amazon EBS 加密的详细信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南中的 AMAZON EBS 加密。
严重性:中等
AWS 数据库迁移服务复制实例不得为公共实例
说明:保护复制的实例免受威胁。 专用复制实例应该具有无法在复制网络外部访问的专用 IP 地址。 当源数据库和目标数据库位于同一网络中时,复制实例应具有专用 IP 地址,并且可使用 VPN、AWS Direct Connect 或 VPC 对等互连将网络连接到复制实例的 VPC。 还应确保仅向授权用户授予对 AWS DMS 实例配置的访问权限。 为此,请限制用户的 IAM 权限以修改 AWS DMS 设置和资源。
严重性:高
传统负载均衡器侦听器应配置 HTTPS 或 TLS 终止
说明:此控件检查经典负载均衡器侦听器是否为前端(客户端到负载均衡器)连接配置了 HTTPS 或 TLS 协议。 如果传统负载均衡器具有侦听器,则该控件适用。 如果传统负载均衡器未配置侦听器,则该控件不会报告任何发现。 如果为传统负载均衡器侦听器配置了 TLS 或 HTTPS 进行前端连接,则此控件通过。 如果没有为侦听器配置 TLS 或 HTTPS 机芯前端连接,则此控件失败。 开始使用负载均衡器之前,必须添加一个或多个侦听器。 侦听器是使用配置的协议和端口来检查连接请求的进程。 侦听器可以同时支持 HTTP 和 HTTPS/TLS 协议。 应始终使用 HTTPS 或 TLS 侦听器,以使负载均衡器在传输过程中执行加密和解密操作。
严重性:中等
传统负载均衡器应启用连接排出
说明:此控件检查经典负载均衡器是否已启用连接清空。 在经典负载均衡器上启用连接清空可确保负载均衡器停止向正在取消注册或运行不正常的实例发送请求。 这会使现有连接保持打开状态。 这对于自动缩放组中的实例很有用,以确保不会突然断开连接。
严重性:中等
CloudFront 分发应启用 AWS WAF
说明:此控件检查 CloudFront 分发是否与 AWS WAF 或 AWS WAFv2 Web ACL 相关联。 如果分发不与 Web ACL 相关联,则此控件失败。 AWS WAF 是一种 Web 应用程序防火墙,可帮助防止 Web 应用和 API 遭受攻击。 它允许配置一组名为 Web 访问控制列表 (Web ACL) 的规则,可根据你定义的可自定义 Web 安全规则和条件允许、阻止 Web 请求,或对 Web 请求进行计数。 确保 CloudFront 分布与 AWS WAF web ACL 相关联,帮助防止恶意攻击。
严重性:中等
CloudFront 分发应启用日志记录
说明:此控件检查是否在 CloudFront 分发版上启用了服务器访问日志记录。 如果没有为分发启用访问日志记录,则此控件将失败。 CloudFront 访问日志提供 CloudFront 接收的每个用户请求的详细信息。 每个日志都包含收到请求的日期和时间、发出请求的查看器的 IP 地址、请求的源以及查看器发出的请求的端口号等信息。 这些日志适用于安全和访问审核以及取证调查等应用程序。 有关如何分析访问日志的详细信息,请参阅 Amazon Athena 用户指南中的查询 Amazon CloudFront 日志。
严重性:中等
CloudFront 分发要求在传输过程中加密
说明:此控件检查 Amazon CloudFront 分发是否要求查看者直接使用 HTTPS,还是使用重定向。 对于 defaultCacheBehavior 或 cacheBehaviors,如果将 ViewerProtocolPolicy 设置为 allow-all,则此控件失败。 HTTPS (TLS) 可用于帮助防止潜在攻击者使用中间人或类似的攻击来窃听或操作网络流量。 应仅允许通过 HTTPS (TLS) 进行加密连接。 加密传输中的数据可能会影响性能。 你应利用此功能对应用程序进行测试,以了解性能配置文件和 TLS 的影响。
严重性:中等
应使用 KMS CMK 对 CloudTrail 日志进行静态加密
说明:建议配置 CloudTrail 以使用 SSE-KMS。 将 CloudTrail 配置为使用 SSE-KMS 提供针对日志数据的其他机密性控制,因为给定用户必须对相应的日志存储桶具有 S3 读取权限,并且必须通过 CMK 策略授予其解密权限。
严重性:中等
应在传输过程中加密与 Amazon Redshift 群集的连接
说明:此控件检查与 Amazon Redshift 群集的连接是否需要在传输中使用加密。 如果 Amazon Redshift 群集参数require_SSL未设置为 1,则检查将失败。 TLS 可用于帮助防止潜在攻击者使用中间人或类似的攻击来窃听或操作网络流量。 应只允许使用通过 TLS 加密的连接。 加密传输中的数据可能会影响性能。 你应利用此功能对应用程序进行测试,以了解性能配置文件和 TLS 的影响。
严重性:中等
应使用 TLS 1.2 加密与 Elasticsearch 域的连接
说明:此控件检查是否需要使用 TLS 1.2 连接到 Elasticsearch 域。 如果 Elasticsearch 域 TLSSecurityPolicy 不是 Policy-Min-TLS-1-2-2019-07,则该检查失败。 HTTPS (TLS) 可用于帮助防止潜在攻击者使用中间人或类似的攻击来窃听或操作网络流量。 应仅允许通过 HTTPS (TLS) 进行加密连接。 加密传输中的数据可能会影响性能。 你应利用此功能对应用程序进行测试,以了解性能配置文件和 TLS 的影响。 TLS 1.2 在以前的 TLS 版本上提供了多项安全增强功能。
严重性:中等
DynamoDB 表应启用时间点恢复
说明:此控件检查是否为 Amazon DynamoDB 表启用了时间点恢复(PITR)。 备份有助于更快地从安全事件中恢复。 它们还可以增强系统的复原能力。 DynamoDB 时点恢复自动执行 DynamoDB 表的备份。 它可减少从意外删除或写入操作中恢复的时间。 启用了 PITR 的 DynamoDB 表可以还原到过去 35 天内的任何时间点。
严重性:中等
应启用 EBS 默认加密
说明:此控制检查默认情况下是否为 Amazon Elastic Block Store(Amazon EBS)启用帐户级加密。 如果未启用帐户级别的加密,则此控件失败。 为帐户启用加密时,Amazon EBS 卷和快照副本将静态加密。 这会为数据添加另一层保护。 有关详细信息,请参阅适用于 Linux 实例的 Amazon EC2 用户指南中的默认加密。
以下实例类型不支持加密:R1、C1 和 M1。
严重性:中等
Elastic Beanstalk 环境应启用增强型运行状况报告
说明:此控件检查是否为 AWS Elastic Beanstalk 环境启用了增强的运行状况报告。 通过 Elastic Beanstalk 增强运行状况报告,可以更快地响应底层基础结构的运行状况更改。 这些更改可能导致应用程序的可用性不足。 Elastic Beanstalk 增强运行状况报告提供状态描述符来衡量已识别问题的严重性,并确定要调查的可能原因。 受支持的 Amazon Machine Image (AMI) 中包含的 Amazon Beanstalk 运行状况代理可评估 EC2 实例环境的日志和指标。
严重性:低
应启用 Elastic Beanstalk 托管平台更新
说明:此控件检查是否为 Elastic Beanstalk 环境启用了托管平台更新。 启用托管平台更新可确保安装了适用于环境的最新可用平台修补程序、更新和功能。 使用修补程序安装保持最新版本是保护系统的一个重要步骤。
严重性:高
弹性负载均衡器不应具有已过期或在 90 天内过期的 ACM 证书。
说明:此检查标识使用 ACM 证书的弹性负载均衡器(ELB)在 90 天内过期或过期。 AWS 证书管理器 (ACM) 是预置、管理和部署服务器证书的首选工具。 使用 ACM。 可以请求证书或将现有的 ACM 或外部证书部署到 AWS 资源。 作为最佳做法,建议重新导入即将过期/过期的证书,同时保留原始证书的 ELB 关联。
严重性:高
应启用 Elasticsearch 域错误日志记录到 CloudWatch Logs
说明:此控件检查 Elasticsearch 域是否已配置为将错误日志发送到 CloudWatch 日志。 应为 Elasticsearch 域启用错误日志,并将这些日志发送到 CloudWatch Logs 以进行保留和响应。 域错误日志可帮助进行安全和访问审核,有助于诊断可用性问题。
严重性:中等
Elasticsearch 域应至少配置三个专用主节点
说明:此控件检查 Elasticsearch 域是否配置了至少三个专用主节点。 如果域不使用专用主节点,此控件将失败。 如果 Elasticsearch 域有五个专用主节点,则此控件通过。 但是,可能不需要使用三个以上主节点来缓解可用性风险,这会产生更高的成本。 Elasticsearch 域至少需要三个专用主节点,确保高可用性和容错能力。 在数据节点蓝/绿部署期间,专用主节点资源可能会受到压力,因为需要管理更多节点。 部署至少包含三个专用主节点的 Elasticsearch 域可确保在节点发生故障时有足够的主节点资源容量和群集操作。
严重性:中等
Elasticsearch 域应至少有三个数据节点
说明:此控件检查 Elasticsearch 域是否配置了至少三个数据节点,zoneAwarenessEnabled 是否为 true。 Elasticsearch 域至少需要三个数据节点,确保高可用性和容错能力。 部署至少包含三个数据节点的 Elasticsearch 域可确保在节点发生故障时执行群集操作。
严重性:中等
Elasticsearch 域应启用审核日志记录
说明:此控件检查 Elasticsearch 域是否已启用审核日志记录。 如果 Elasticsearch 域未启用审核日志记录,则此控件失败。 审核日志高度可自定义。 它们允许你跟踪 Elasticsearch 群集上的用户活动,包括身份验证成功和失败、请求OpenSearch、索引更改和传入搜索查询。
严重性:中等
应为 RDS DB 实例和群集配置增强监视
说明:此控件检查是否为 RDS DB 实例启用了增强型监视。 在 Amazon RDS 中,增强型监视可以更快速响应底层基础结构中的性能变化。 这些性能更改可能会导致数据可用性不足。 增强型监视提供运行 RDS DB 实例的操作系统的实时指标。 在实例上安装代理。 代理可以获取比虚拟机监控程序层中的指标更准确的指标。 当你想要了解 DB 实例上的不同进程或线程如何使用 CPU 时,增强型监视指标非常有用。 有关详细信息,请参阅 Amazon RDS 用户指南中的增强型监视。
严重性:低
请确保为客户创建的 CMK 启用了轮换
说明:AWS 密钥管理服务(KMS)允许客户轮换后盾密钥,这是存储在 KMS 中的密钥材料,该密钥与客户创建的客户主密钥(CMK)的密钥 ID 相关联。 它是用于执行加密操作(如加密和解密)的后备密钥。 自动密钥轮换当前保留所有以前的后备密钥,因此可以透明方式解密加密数据。 建议启用 CMK 密钥轮换。 轮换加密密钥有助于降低已泄露密钥的潜在影响,因为使用新密钥加密的数据无法使用可能公开的前一个密钥进行访问。
严重性:中等
请确保在 CloudTrail S3 存储桶上启用了 S3 存储桶访问日志记录
说明:S3 存储桶访问日志记录生成一个日志,其中包含访问记录,确保针对向 S3 存储桶发出的每个请求在 CloudTrail S3 存储桶上启用 S3 存储桶访问日志记录。 访问日志记录包含有关请求的详细信息,例如请求类型、请求中指定的资源以及处理请求的时间和日期。 建议在 CloudTrail S3 存储桶上启用存储桶访问日志记录。 通过在目标 S3 存储桶上启用 S3 存储桶日志记录,可以捕获所有事件,这可能会影响目标存储桶中的对象。 将日志配置为放置在单独的存储桶中后,可以访问日志信息,这些信息在安全和事件响应工作流中非常有用。
严重性:低
确保用于存储 CloudTrail 日志的 S3 存储桶不可公开访问
说明:CloudTrail 记录 AWS 帐户中发出的每个 API 调用的记录。 这些日志文件存储在 S3 存储桶中。 建议将存储桶策略或访问控制列表(ACL)应用于 CloudTrail 日志的 S3 存储桶,以防止公共访问 CloudTrail 日志。 允许公共访问 CloudTrail 日志内容可能有助于攻击者识别受影响帐户使用或配置中的弱点。
严重性:高
IAM 不应具有过期的 SSL/TLS 证书
说明:此检查标识过期的 SSL/TLS 证书。 要在 AWS 中启用与你的网站或应用程序的 HTTPS 连接,需要 SSL/TLS 服务器证书。 可以使用 ACM 或 IAM 来存储和部署服务器证书。 删除过期的 SSL/TLS 证书可消除将无效证书意外部署到 AWS 弹性负载均衡器 (ELB) 等资源的风险,这可能会损害基于 ELB 的应用程序/网站的可信度。 如果 AWS IAM 中存储了任何过期的 SSL/TLS 证书,这项检查将生成警报。 作为最佳做法,建议删除过期的证书。
严重性:高
应在指定的时间段后续订导入的 ACM 证书
说明:此控件检查帐户中的 ACM 证书是否在 30 天内标记为过期。 它检查导入的证书和 AWS 证书管理器提供的证书。 ACM 可以自动续订使用 DNS 验证的证书。 对于使用电子邮件验证的证书,必须响应域验证电子邮件。 ACM 不会自动续订导入的证书。 必须手动续订导入的证书。 有关 ACM 证书托管续订的详细信息,请参阅 AWS 证书管理器用户指南中的 ACM 证书的托管续订。
严重性:中等
应调查帐户中的过度预配标识,以减少权限蠕变索引 (PCI)
说明:应调查订阅中的过度预配标识,以减少权限蠕变指数 (PCI),并保护基础结构。 通过移除未使用的高风险权限分配来减少 PCI。 高 PCI 反映了与具有超出正常或所需使用权限的标识相关的风险。
严重性:中等
应启用 RDS 自动次要版本升级
说明:此控件检查是否为 RDS 数据库实例启用了自动次要版本升级。 启用自动次要版本升级可确保已安装关系数据库管理系统 (RDBMS) 的最新次要版本更新。 这些升级可能包括安全修补程序和 bug 修复。 使用修补程序安装保持最新版本是保护系统的一个重要步骤。
严重性:高
应静态加密 RDS 群集快照和数据库快照
说明:此控件检查 RDS DB 快照是否已加密。 此控件适用于 RDS DB 实例。 但是,它还可生成有关 Aurora DB 实例、Neptune DB 实例和 Amazon DocumentDB 群集的快照的发现结果。 如果这些发现没有用,可以禁止显示它们。 静态加密数据可以降低未经身份验证的用户访问存储在磁盘上的数据的风险。 RDS 快照中的数据应进行静态加密,以实现额外的安全层。
严重性:中等
RDS 群集应启用删除保护
说明:此控制检查 RDS 群集是否已启用删除保护。 此控件适用于 RDS DB 实例。 但是,它还可生成有关 Aurora DB 实例、Neptune DB 实例和 Amazon DocumentDB 群集的发现结果。 如果这些发现没有用,可以禁止显示它们。 启用群集删除保护是防止未经授权的实体意外删除或删除数据库的另一层保护。 启用删除保护后,无法删除 RDS 群集。 必须先禁用删除保护,然后才能成功执行删除请求。
严重性:低
应为多个可用性区域配置 RDS DB 群集
说明:应为存储的多个数据配置 RDS DB 群集。 部署到多个可用性区域,允许自动化可用性区域,以确保发生可用性区域可用性问题时和常规 RDS 维护事件期间进行故障转移的可用性。
严重性:中等
应将 RDS DB 群集配置为将标记复制到快照
说明:识别和库存 IT 资产是治理和安全的关键方面。 你需要了解所有 RDS DB 群集,以便评估其安全状况,并采取潜在漏洞措施。 快照的标记方式应与它们的父 RDS 数据库群集相同。 启用此设置可确保快照继承其父数据库群集的标记。
严重性:低
应配置 RDS DB 实例,将标记复制到快照
说明:此控件检查 RDS DB 实例是否已配置为在创建快照时将所有标记复制到快照。 标识和盘存 IT 资产是治理和安全性的一个重要方面。 你需要了解所有 RDS DB 实例,以便评估其安全状况,并针对潜在的漏洞区域采取措施。 快照的标记方式应与它们的父 RDS 数据库实例相同。 启用此设置可确保快照继承其父数据库实例的标记。
严重性:低
RDS DB 实例应配置多个可用性区域
说明:此控件检查是否为 RDS DB 实例启用了高可用性。 应为多个可用性区域 (AZ) 配置 RDS DB 实例。 这可确保存储数据的可用性。 如果可用性区域可用性和常规 RDS 维护期间出现问题,多 AZ 部署允许自动故障转移。
严重性:中等
RDS DB 实例应启用删除保护
说明:此控件检查使用其中一个列出的数据库引擎的 RDS DB 实例是否已启用删除保护。 启用实例删除保护是防止未经授权的实体意外删除或删除数据库的另一层保护。 启用删除保护时,无法删除 RDS DB 实例。 必须先禁用删除保护,然后才能成功执行删除请求。
严重性:低
RDS DB 实例应启用静态加密
说明:此控件检查是否为 Amazon RDS DB 实例启用了存储加密。 此控件适用于 RDS DB 实例。 但是,它还可生成有关 Aurora DB 实例、Neptune DB 实例和 Amazon DocumentDB 群集的发现结果。 如果这些发现没有用,可以禁止显示它们。 对于 RDS DB 实例中的敏感数据的额外安全层,应将 RDS DB 实例配置为静态加密。 若要静态加密 RDS DB 实例和快照,请为 RDS DB 实例启用加密选项。 静态加密的数据包括 DB 实例的基础存储、自动备份、只读副本和快照。 RDS 加密的 DB 实例使用开放标准 AES-256 加密算法来加密托管 RDS DB 实例的服务器上的数据。 加密数据后,Amazon RDS 会以透明方式处理对数据的访问和解密,同时对性能的影响最小。 无需修改数据库客户端应用程序就可以使用加密。 Amazon RDS 加密当前适用于所有数据库引擎和存储类型。 Amazon RDS 加密适用于大多数 DB 实例类。 若要了解不支持 Amazon RDS 加密的 DB 实例类,请参阅Amazon RDS 用户指南中的加密 Amazon RDS 资源。
严重性:中等
RDS DB 实例应禁止公共访问
说明:建议还通过限制用户的 IAM 权限来修改 RDS 实例的设置和资源,确保仅对 RDS 实例配置的访问权限限制为已授权用户。
严重性:高
RDS 快照应禁止公共访问
说明:建议仅允许授权主体访问快照并更改 Amazon RDS 配置。
严重性:高
删除未使用的 Secrets Manager 机密
说明:此控件检查你的机密是否已在指定的天数内访问。 默认值为 90 天。 如果在定义的天数内未访问密钥,则此控件失败。 删除未使用的机密与轮换机密一样重要。 未使用的机密可能会被不再需要访问这些机密的前用户滥用。 此外,随着越来越多的用户获得对机密的访问权限,有人可能会处理不当,将其泄漏给未经授权的实体,这会增加滥用的风险。 删除未使用的机密有助于对不再需要密钥访问权限的用户撤销密钥的访问权限。 它还有助于降低使用 Secrets Manager 的成本。 因此,必须定期删除未使用的机密。
严重性:中等
S3 存储桶应启用跨区域复制
说明:启用 S3 跨区域复制可确保不同区域提供多个版本的数据。 这使你可以针对 DDoS 攻击和数据损坏事件保护 S3 存储桶。
严重性:低
S3 存储桶应启用服务器端加密
说明:启用服务器端加密来保护 S3 存储桶中的数据。 如果数据被破坏,对数据进行加密可防止对敏感数据的访问。
严重性:中等
配置了自动轮换的机密管理器机密应能成功轮换
说明:此控件检查 AWS 机密管理器机密是否根据轮换计划成功轮换。 如果RotationOccurringAsScheduled 为 false,则此控件失败。 该控件不会评估未配置轮换的机密。 Secrets Manager 有助于提高组织的安全状况。 机密包含数据库凭据、密码和第三方 API 密钥。 你可以使用 Secrets Manager 集中存储机密、自动加密机密、控制对机密的访问,以及安全地自动轮换机密。 Secrets Manager 可以轮换机密。 可以使用轮换将长期机密替换为短期机密。 轮换机密会限制未经授权的用户可以使用已泄露机密的时间。 出于此原因,你应该经常轮换机密。 除了将机密配置为自动轮换,还应确保这些机密根据轮换计划成功轮换。 若要详细了解轮换,请参阅 AWS Secrets Manager 用户指南中的轮换 AWS Secrets Manager 机密。
严重性:中等
Secrets Manager 机密应在指定天数内轮换
说明:此控件检查机密是否已在 90 天内至少轮换一次。 轮换密钥可以帮助降低 AWS 帐户中未经授权使用机密的风险。 示例包括数据库凭据、密码、第三方 API 密钥,甚至任意文本。 如果你长时间未更改机密,则机密更有可能受到入侵。 当更多用户访问某个机密时,可能更可能有人将其处理不当并泄漏给未经授权的实体。 可以通过日志和缓存数据泄露机密。 它们可出于调试目的而共享,并且在调试完成后不会更改或撤消。 出于上述所有原因,机密应该经常轮换。 你可以在 AWS Secrets Manager 中配置机密以进行自动轮换。 通过自动轮换,你可以将长期机密替换为短期机密,从而大大降低泄露的风险。 Security Hub 建议为 Secrets Manager 机密启用轮换。 若要详细了解轮换,请参阅 AWS Secrets Manager 用户指南中的轮换 AWS Secrets Manager 机密。
严重性:中等
应使用 AWS KMS 对 SNS 主题进行静态加密
说明:此控件使用 AWS KMS 检查 SNS 主题是否静态加密。 静态加密数据可降低未通过 AWS 身份验证的用户访问磁盘上存储的数据的风险。 它还添加另一组访问控制,以限制未经授权的用户访问数据的能力。 例如,需要在读取数据之前使用 API 权限对数据进行解密。 应 对 SNS 主题进行静态 加密,以增加安全层。 有关详细信息,请参阅 Amazon Simple Notification Service 开发人员指南中的 静态加密。
严重性:中等
应在所有 VPC 中启用 VPC 流日志记录
说明:通过VP 传递的网络流量提供对网络流量的可见性,并可用于检测安全事件期间的异常流量或见解。
严重性:中等
GCP 数据建议
确保将 Cloud SQL SQL Server 实例的“3625 (trace flag)”数据库标志设置为“off”
说明:建议将云 SQL Server 实例的“3625(跟踪标志)”数据库标志设置为“off”。跟踪标志通常用于诊断性能问题或调试存储过程或复杂计算机系统,但也可能建议Microsoft 支持部门来解决对特定工作负荷产生负面影响的行为。 当按照指示使用时,所有记录的跟踪标志和 Microsoft 支持部门推荐的跟踪标志在生产环境中都完全受支持。 “3625(跟踪日志)”通过使用“******屏蔽某些错误消息的参数,限制返回给不是 sysadmin 固定服务器角色成员的用户的信息量。 这可以帮助阻止披露敏感信息。 因此,建议禁用此标志。 此建议适用于 SQL Server 数据库实例。
严重性:中等
确保将 Cloud SQL SQL Server 实例的“external scripts enabled”数据库标志设置为“off”
说明:建议将 Cloud SQL Server 实例的“已启用外部脚本”数据库标志设置为关闭。 “external scripts enabled”允许执行包含某些远程语言扩展的脚本。 此属性默认处于禁用状态。 安装“高级分析服务”后,安装程序可以根据需要将此属性设置为 true。 由于“external scripts enabled”功能允许执行 SQL 外部的脚本(例如位于 R 库中的文件),这可能会对系统的安全性产生不利影响,因此应禁用此功能。 此建议适用于 SQL Server 数据库实例。
严重性:高
确保将 Cloud SQL SQL Server 实例的“remote access”数据库标志设置为“off”
说明:建议将云 SQL Server 实例的“远程访问”数据库标志设置为“关闭”。“远程访问”选项控制从运行 SQL Server 实例的本地或远程服务器执行存储过程。 该选项的默认值为 1。 这将授权允许从远程服务器执行本地存储过程或从本地服务器执行远程存储过程。 若要防止本地存储过程在远程服务器上运行或远程存储过程在本地服务器上运行,必须禁用此选项。 “remote access”选项控制本地存储过程在远程服务器上的执行或远程存储过程在本地服务器上的执行。 “remote access”功能可能会被滥用,用于通过将查询处理卸载到目标来对远程服务器发起拒绝服务 (DoS) 攻击,因此应禁用此功能。 此建议适用于 SQL Server 数据库实例。
严重性:高
确保将 Cloud SQL MySQL 实例的“skip_show_database”数据库标志设置为“on”
说明:建议将 Cloud SQL Mysql 实例的“skip_show_database”数据库标志设置为“on”。“skip_show_database”数据库标志可防止用户在没有 SHOW DATABASES 权限的情况下使用 SHOW DATABASES 语句。 如果担心用户能够看到属于其他用户的数据库,则此功能可提高安全性。 其效果取决于 SHOW DATABASES 权限:如果变量值为 ON,则仅允许具有 SHOW DATABASES 权限的用户使用 SHOW DATABASES 语句,该语句显示所有数据库名称。 如果值为 OFF,则允许所有用户使用 SHOW DATABASES,但该语句仅显示用户对其具有 SHOW DATABASES 或其他权限的数据库的名称。 此建议适用于 MySQL 数据库实例。
严重性:低
确保为所有 BigQuery 数据集指定默认的客户管理的加密密钥 (CMEK)
说明:BigQuery 默认使用 Google 托管加密密钥使用信封加密来加密静态数据。 数据使用数据加密密钥加密,数据加密密钥本身使用密钥加密密钥进一步加密。 此过程是无缝的,不需要用户提供任何其他输入。 但是,如果想拥有更大的控制权,可以使用客户管理的加密密钥 (CMEK) 作为 BigQuery 数据集的加密密钥管理解决方案。 默认情况下,BigQuery 使用 Google 托管的加密密钥进行信封加密来加密静态数据。 这是无缝的,不需要用户的任何其他输入。 为了更好地控制加密,可以使用客户管理的加密密钥 (CMEK) 作为 BigQuery 数据集的加密密钥管理解决方案。 为数据集设置默认的客户管理的加密密钥 (CMEK) 可确保将来创建的任何表都使用指定的 CMEK(如果未提供其他选项)。
Google 不会将密钥存储在其服务器上,并且无法访问受保护的数据,除非你提供密钥。
这也意味着,如果忘记或丢失密钥,则 Google 无法恢复密钥或恢复使用丢失密钥加密的任何数据。
严重性:中等
确保所有 BigQuery 表都使用客户管理的加密密钥 (CMEK) 进行加密
说明:BigQuery 默认使用 Google 托管加密密钥使用信封加密来加密静态数据。 数据使用数据加密密钥加密,数据加密密钥本身使用密钥加密密钥进一步加密。 此过程是无缝的,不需要用户提供任何其他输入。 但是,如果想拥有更大的控制权,可以使用客户管理的加密密钥 (CMEK) 作为 BigQuery 数据集的加密密钥管理解决方案。 如果使用 CMEK,则 CMEK 用于加密数据加密密钥,而不是使用 Google 管理的加密密钥。 默认情况下,BigQuery 使用 Google 托管的加密密钥进行信封加密来加密静态数据。 这是无缝的,不需要用户的任何其他输入。 为了更好地控制加密,可以使用客户管理的加密密钥 (CMEK) 作为 BigQuery 表的加密密钥管理解决方案。 CMEK 用于加密数据加密密钥,而不是使用 Google 管理的加密密钥。 BigQuery 存储表和 CMEK 关联,加密/解密是自动完成的。 在 BigQuery 数据集上应用默认的客户管理的密钥可确保将来创建的所有新表都使用 CMEK 进行加密,但现有表需要进行更新才能单独使用 CMEK。
Google 不会将密钥存储在其服务器上,并且无法访问受保护的数据,除非你提供密钥。 这也意味着,如果忘记或丢失密钥,则 Google 无法恢复密钥或恢复使用丢失密钥加密的任何数据。
严重性:中等
确保 BigQuery 数据集不可匿名访问或公开访问
说明:建议 BigQuery 数据集上的 IAM 策略不允许匿名和/或公共访问。 向 allUsers 或 allAuthenticatedUsers 授予权限将允许任何人访问数据集。 如果敏感数据存储在数据集中,则此类访问可能不可取。 因此,请确保不允许匿名和/或公共访问数据集。
严重性:高
确保为 Cloud SQL 数据库实例配置了自动备份
说明:建议将所有 SQL 数据库实例设置为启用自动备份。 备份提供了一种还原 Cloud SQL 实例以恢复丢失的数据或从该实例的问题中恢复的方法。 需要为包含应防止丢失或损坏的数据的任何实例设置自动备份。 此建议适用于 SQL Server、PostgreSql、MySql 第 1 代和 MySql 第 2 代实例。
严重性:高
确保云 SQL 数据库实例未向世界开放
说明:数据库服务器应仅接受来自受信任网络/IP 的连接,并限制来自世界的访问。 若要最大程度地减少数据库服务器实例上的攻击面,应仅批准受信任的/已知和必需的 IP(s)才能连接到该实例。 授权网络不应将 IP/networks 配置为 0.0.0.0/0,这将允许从世界上任何地方访问实例。 请注意,授权网络仅适用于具有公共 IP 的实例。
严重性:高
确保 Cloud SQL 数据库实例没有公共 IP
说明:建议将第二代 Sql 实例配置为使用专用 IP 而不是公共 IP。 若要降低组织的攻击面,云 SQL 数据库不应具有公共 IP。 专用 IP 为应用程序提供增强的网络安全性和更低的延迟。
严重性:高
确保 Cloud Storage 存储桶不可匿名访问或公开访问
说明:建议云存储存储桶上的 IAM 策略不允许匿名或公共访问。 允许匿名或公开访问将授予任何人访问存储桶内容的权限。 如果要存储任何敏感数据,则可能不需要此类访问。 因此,请确保不允许匿名或公共访问存储桶。
严重性:高
确保云存储桶启用了统一的桶级别访问
说明:建议在云存储存储桶上启用统一的存储桶级访问。
建议使用统一的存储桶级访问权限来统一并简化授予对云存储资源的访问权限的方式。
云存储提供了两个系统来授予用户访问存储桶和对象的权限:云标识和访问管理(云 IAM)和访问控制列表 (ACL)。
这些系统并行运行,为了使用户能够访问 Cloud Storage 资源,只有其中一个系统需要授予用户权限。
Cloud IAM 在整个 Google Cloud 中使用,可用于在存储桶和项目级别授予各种权限。
ACL 仅供 Cloud Storage 使用并且权限选项有限,但可用于按对象授予权限。
为了支持统一的权限系统,Cloud Storage 具有统一存储桶级访问权限。 使用此功能会禁用所有云存储资源的 ACL:然后通过 Cloud IAM 专门授予对云存储资源的访问权限。 启用统一的存储桶级访问可以保证,如果存储存储桶无法公开访问,则存储桶中的任何对象都无法公开访问。
严重性:中等
确保计算实例已启用机密计算
说明:Google Cloud 加密静态和传输中的数据,但必须解密客户数据进行处理。 机密计算是一项突破性技术,用于加密正在使用的数据,同时正在处理数据。 机密计算环境将数据加密保存在内存中和中央处理器 (CPU) 之外的其他位置。 机密 VM 利用 AMD EPYC CPU 的安全加密虚拟化 (SEV) 功能。 客户数据在使用、索引、查询或训练时会保持加密状态。 加密密钥在每个 VM 的硬件中生成,不可导出。 由于性能和安全性的内置硬件优化,机密计算工作负载的性能不会受到重大影响。 通过机密计算,在处理客户的敏感代码和其他数据时,这些数据在内存中加密。 Google 无权访问加密密钥。 机密 VM 有助于缓解与依赖 Google 基础结构或 Google 内部人员以明文方式访问客户数据相关的风险担忧。
严重性:高
确保使用存储桶锁配置日志存储桶上的保留策略
说明:在日志存储桶上启用保留策略将保护存储在云存储存储桶中的日志不被覆盖或意外删除。 建议在用作日志接收器的所有存储存储桶上设置保留策略并配置存储桶锁定。 可以通过创建一个或多个包含日志筛选器和目标的接收器来导出日志。 当 Stackdriver 日志记录接收新的日志条目时,它们会与每个接收器进行比较。 如果日志条目与接收器的筛选器匹配,则会将该日志条目的副本写入目标。 接收器可配置为导出存储桶中的日志。 建议为这些云存储存储桶配置数据保留策略并锁定数据保留策略;从而永久防止策略减少或删除。 这样,如果系统遭到攻击者或想要掩盖其踪迹的恶意内部人员的入侵,活动日志肯定会得到保留,用于取证和安全调查。
严重性:低
确保 Cloud SQL 数据库实例要求所有传入连接都使用 SSL
说明:建议强制实施与 SQL 数据库实例的所有传入连接以使用 SSL。 SQL 数据库连接如果成功捕获(MITM);可以显示敏感数据,例如凭据、数据库查询、查询输出等。出于安全性,建议在连接到实例时始终使用 SSL 加密。 此建议适用于 Postgresql、MySql 第 1 代和 MySql 第 2 代实例。
严重性:高
确保将 SQL Server 实例上 Cloud SQL 的“contained database authentication”数据库标志设置为“off”
说明:建议在 SQL Server 实例上为 Cloud SQL 设置“包含的数据库身份验证”数据库标志设置为“off”。包含的数据库包括定义数据库所需的所有数据库设置和元数据,并且对安装数据库的数据库引擎实例没有配置依赖关系。 用户可以连接到数据库而无需在 数据库引擎 级别对登录名进行身份验证。 将数据库与数据库引擎隔离可以轻松地将数据库移到另一个 SQL Server实例。 包含的数据库面临着一些独有的威胁, SQL Server 数据库引擎 管理员应该了解并缓解这些威胁。 大部分威胁都与 USER WITH PASSWORD 身份验证过程相关,该过程会将身份验证的范围从数据库引擎级别转到数据库级别,因此建议禁用此标志。 此建议适用于 SQL Server 数据库实例。
严重性:中等
确保将 Cloud SQL SQL Server 实例的“cross db ownership chaining”数据库标志设置为“off”
说明:建议将云 SQL Server 实例的“跨数据库所有权链”数据库标志设置为“关闭”。使用“跨数据库所有权”链接选项为Microsoft SQL Server 实例配置跨数据库所有权链。 此服务器选项使您能够在数据库级别控制跨数据库所有权链接,或者允许在所有数据库中启用跨数据库所有权链接。 建议不要启用“跨数据库所有权”,除非 SQL Server 实例托管的所有数据库都必须参与跨数据库所有权链,并且你已了解此设置的安全影响。 此建议适用于 SQL Server 数据库实例。
严重性:中等
确保将 Cloud SQL MySQL 实例的“local_infile”数据库标志设置为“off”
说明:建议将云 SQL MySQL 实例的local_infile数据库标志设置为关闭。
local_infile 标志控制 LOAD DATA 语句的服务器端 LOCAL 功能。 根据 local_infile 设置,服务器可拒绝或允许在客户端启用了 LOCAL 的客户端加载本地数据。
若要显式导致服务器拒绝 LOAD DATA LOCAL 语句(无论客户端程序和库在生成时或运行时是如何配置的),请从禁用local_infile开始 mysqld
。 也可以在运行时设置 local_infile。
由于与local_infile标志关联的安全问题,建议禁用它。 此建议适用于 MySQL 数据库实例。
严重性:中等
确保存在针对 Cloud Storage IAM 权限更改的日志指标筛选器和警报
说明:建议为云存储存储桶 IAM 更改建立指标筛选器和警报。 监视对云存储存储桶权限的更改可以减少检测和更正对存储桶内敏感云存储存储桶和对象的权限所需的时间。
严重性:低
确保存在针对 SQL 实例配置更改的日志指标筛选器和警报
说明:建议为 SQL 实例配置更改建立指标筛选器和警报。 监视对 SQL 实例配置更改的更改可能会缩短在 SQL 服务器上检测和更正错误配置所需的时间。 下面是可能影响 SQL 实例安全状况的一些可配置选项:
- 启用自动备份和高可用性:配置错误可能会对业务连续性、灾难恢复和高可用性造成不利影响
- 授权网络:配置不当可能会增加对不受信任的网络的风险
严重性:低
确保每个服务帐户只有 GCP 托管的服务帐户密钥
说明:用户托管服务帐户不应具有用户管理的密钥。 有权访问密钥的任何人都可以通过服务帐户访问资源。 GCP 托管的密钥由 App Engine 和 Compute Engine 等 Cloud Platform 服务使用。 无法下载这些密钥。 Google 将保留密钥,并大约每周自动轮换一次。 用户管理的密钥由用户创建、下载和管理。 它们在创建后 10 年到期。 对于用户管理的密钥,用户必须拥有密钥管理活动的所有权,其中包括:
- 密钥存储
- 键分布
- 密钥吊销
- 密钥轮换
- 对未经授权的用户进行密钥保护
- 密钥恢复
即使使用关键所有者预防措施,密钥也可以通过不太理想的常见开发做法(例如将密钥签入源代码或将它们留在下载目录中)轻松泄露,或者意外地将密钥留在支持博客/频道上。 建议防止用户托管服务帐户密钥。
严重性:低
确保已根据需要设置 Cloud SQL SQL Server 实例的“user connections”数据库标志
说明:建议根据组织定义的值为 Cloud SQL Server 实例设置“用户连接”数据库标志。 “user connections”选项指定 SQL Server 实例上允许同时建立的最大用户连接数。 允许的实际用户连接数也取决于所使用的 SQL Server 版本,以及应用程序或应用程序和硬件的限制。 SQL Server 最多允许 32,767 个用户连接。 由于用户连接是动态(自配置)选项,因此 SQL Server 会根据需要自动调整最大用户连接数,最高允许的最大值。 例如,如果仅有 10 个用户登录,则要分配 10 个用户连接对象。 在大多数情况下,无需更改此选项的值。 默认值为 0,表示允许的最多用户连接数为 (32,767) 。 此建议适用于 SQL Server 数据库实例。
严重性:低
确保未配置 Cloud SQL SQL Server 实例的“user options”数据库标志
说明:建议不要配置云 SQL Server 实例的“用户选项”数据库标志。 “user options”指定适用于所有用户的全局默认值。 将建立一个用户工作会话期间使用的默认查询处理选项的列表。 用户选项设置允许更改 SET 选项的默认值(如果服务器的默认设置不适用)。 用户可以使用 SET 语句覆盖这些默认值。 可以为新登录名动态配置 user options 。 更改用户选项的设置后,新的登录会话将使用新设置;当前登录会话不受影响。 此建议适用于 SQL Server 数据库实例。
严重性:低
应启用 GKE 群集的日志记录
说明:此建议评估群集的 loggingService 属性是否包含云日志记录应用于写入日志的位置。
严重性:高
应在配置了接收器的存储桶上启用对象版本控制
说明:此建议评估存储桶版本控制属性中已启用的字段是否设置为 true。
严重性:高
应调查项目中的过度预配标识,以减少权限蠕变索引 (PCI)
说明:应调查项目中过度预配的标识,以减少权限爬行索引(PCI),并保护基础结构。 通过移除未使用的高风险权限分配来减少 PCI。 高 PCI 反映了与具有超出正常或所需使用权限的标识相关的风险。
严重性:中等
具有加密密钥的项目不应具有带所有者权限的用户
说明:此建议评估已分配角色/所有者的项目元数据中的 IAM 允许策略。
严重性:中等
用作日志接收器的存储桶不应为可公开访问
说明:此建议评估主体 allUsers 或 allAuthenticatedUsers(授予公共访问权限)的存储桶的 IAM 策略。
严重性:高