我如何解决 Security Hub 中的空或“0%”安全分数或“无数据”合规状态?

2 分钟阅读
0

我想在 AWS Security Hub 中查看某个标准的安全分数,但看到“0%”或“-”。或者,有一些控制或所有控制的合规状态显示“无数据”。

简短描述

有多种原因会导致您可能无法在 Security Hub 中看到标准的安全分数或总分数。在这些情况下,您会看到以下两个指标中的一个或两个:

  • 至少有一个安全分数显示连字符(-)或 0%
  • 在此标准下,任何或所有激活的控制的合规状态为无数据。在这种情况下,安全分数可能无法生成。

由于以下任何原因,Security Hub 可能无法生成标准的控制和分数数据:

  • Security Hub 第一次运行控制评估。
  • 您第一次检查标准。
  • AWS 账户是新转换账户,或聚合区域是新配置的区域。
  • 该标准处于未完成状态。
  • Security Hub 没有任何关于该控制的有效调查发现。
  • AWS Config 配置记录器的配置不正确。
  • AWS Config 服务角色没有必要的权限。
  • 该控制是新发布的。
  • AWS 区域行为存在差异。

解决方法

**注意:**如果在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请确保您使用的是最新版本的 AWS CLI

Security Hub 第一次运行控制评估

激活 Security Hub 或特定安全标准后,Security Hub 会在 2 小时内运行所有初始检查。大多数检查会在 25 分钟内开始运行。在控制完成第一轮检查之前,其合规状态为无数据

您第一次检查标准

当您第一次在 Security Hub 控制台中查看摘要安全标准页面时,Security Hub 会计算标准的初始安全分数。此过程通常需要 30 分钟完成。在此期间,标准没有分数,其控制的合规状态为无数据

账户是新转换账户,或聚合区域是新配置的区域

如果您之前看到过安全分数和合规状态,但现在未显示任何数据,这可能是由于新配置的原因。Security Hub 会为组织的管理员账户生成聚合区域内所有关联的 AWS 区域的分数。

因此,Security Hub 控制台会将新配置的聚合区域或新转换的账户视为等同于新创建的账户。这包括在独立账户和管理员账户之间转换的账户。在这种情况下,会适用相同的等待期,新的综合分数和合规状态会在 30 分钟内显示。

该标准处于“未完成”状态

如果某个标准的所有控制均导致出现无数据,则运行 get-enabled-standards AWS CLI 命令来检查该标准的状态是否为未完成

aws securityhub get-enabled-standards –standards-subscription-arn STANDARDS_SUBSCRIPTION_ARN

**注意:**将 STANDARDS_SUBSCRIPTION_ARN 替换为您的标准订阅的 ARN

当 Security Hub 无法在标准中创建所有已激活的控制时,将出现此状态。Security Hub 大约每 12 小时重试一次处于未完成状态的标准,直到状态变为就绪。Security Hub 会因以下任一原因一直尝试:

  • 您的账户中未激活配置记录器。
  • 创建控制时,限制或 API 故障等暂时性问题可能会导致标准进入未完成状态。

要解决此问题,请首先检查配置记录器,确保您已激活并正确配置了配置记录器。然后,停用并重新激活安全标准订阅

Security Hub 没有任何关于该控制的调查发现

如果 Security Hub 运行超过 2 个小时且控制的合规状态为无数据,该控制不会有任何调查发现。以下情况是没有调查发现的常见原因:

  • 在开始生成调查发现之前,新控制的状态为无数据
    **注意:**新激活的控制通常需要 2 个小时生成调查发现,最长可能需要 18 个小时。在控制生成调查发现后,分数最长可能需要 24 小时完成更新。
  • 控制的所有调查发现都被禁止
  • 控制未生成任何调查发现。
    **注意:**当您没有用于控制的资源时,会出现这种情况。

配置记录器的配置不正确

Security Hub 使用与服务关联的 AWS Config 规则来执行大部分控制安全检查。要支持这些控制,您必须在所有账户上激活 AWS Config。包括已激活 Security Hub 的每个区域的管理员账户和成员账户。

如果激活的控制未生成任何调查发现,请检查位于同一区域的配置记录器是否正确配置。要生成必要的调查发现,请配置配置记录器来获取 Security Hub 所需的资源合规性:

  1. 打开 AWS Config 和配置记录器。将配置记录器配置为使用已激活 Security Hub 的每个区域正确配置的传输通道记录所需的资源类型。
    注意:在继续执行步骤 2 之前,请留出时间让配置记录器清点所有清单。要检查状态,转到 AWS Config 控制台上的设置页面。如果配置记录器仍处于正在清点清单状态,说明传输通道的配置不正确。在这种情况下,重新创建传输通道
  2. 打开 Security Hub 控制台,然后关闭没有分数的标准(显示 0%-)。等待 20–30 分钟以防止出现任何暂时性问题,然后重新启用安全标准。这会提示 Security Hub 创建所有必需的 AWS Config 规则。
    **注意:**Security Hub 只能在您激活标准后的 31 天内创建 AWS Config 规则。

AWS Config 服务角色没有必要的权限

大多数 Security Hub 控制都与 AWS Config 规则关联。如果控制返回无数据,AWS Config 可能会使用没有必要权限的服务角色(而不是服务关联角色)。要检查 AWS Config 是否正确评估了相关规则,请运行 describe-config-rule-evaluation-status AWS CLI 命令。如果服务角色没有评估规则所需的必要权限,您会看到输出信息,其中包含提供其他信息的错误消息。例如,您会看到一条消息,如需要额外权限

该控制是新发布的

如果 AWS 在最近启动了一组控制,这些控制在一段时间内会没有分数。如果分数评估在控制发布时启动,下一次成功的分数评估最长可能需要 24 小时完成。

有关 Security Hub 的最新更新,请参阅 AWS Security Hub 用户指南文档历史记录

区域行为存在差异

在某些情况下,由于区存在域差异,标准会显示无数据

  • 某些标准(如 CIS 2.3 和 CIS 2.6)有时会显示无数据。当 AWS CloudTrail 将日志聚合并存储在单个集中式 Amazon Simple Storage Service(Amazon S3)桶中时,会发生此情况。在这种情况下,Security Hub 只会对集中式 Amazon S3 桶所在的账户和区域进行检查。因此,数据仅在集中式 S3 桶所在的位置可用,控制将在其他区域显示无数据
  • 对于几乎所有 CIS 3.1-3.14 ** 和 CIS 1.1 控制, Security Hub 会在以下情况下检查控制状态为无数据**的结果:
    多区域跟踪位于不同的区域。Security Hub 只能在跟踪所在的区域生成调查发现。
    多区域跟踪属于不同的账户。Security Hub 只能为负责跟踪的账户生成调查发现。
  • Security Hub 不支持特定区域的控制。只有当您激活聚合区域(跨区域或跨账户)时,这些控制才会在不支持的区域中列出。要检查特定区域是否支持控制,请参阅按区域划分的控制可用性
AWS 官方
AWS 官方已更新 1 年前