为 Security Hub CSPM 启用和配置 AWS Config
AWS Security Hub CSPM 使用 AWS Config 规则对大多数控件运行安全检查并生成调查发现。AWS Config 提供了您的 AWS 账户中 AWS 资源的配置的详细视图。它使用规则为您的资源建立基准配置,并使用配置记录器来检测特定资源是否违反了规则的条件。
有些规则(称为 AWS Config 托管规则)是由 AWS Config 预定义和开发的。其他规则是 Security Hub CSPM 开发的自定义 AWS Config 规则。Security Hub CSPM 用于控件的 AWS Config 规则称为服务相关规则。服务相关规则允许 Security Hub CSPM 等 AWS 服务在您的账户中创建 AWS Config 规则。
要在 Security Hub CSPM 中接收控件调查发现,必须为您的账户启用 AWS Config。您还必须为已启用控件所评估的资源类型启用资源记录。然后,Security Hub CSPM 可以为控件创建适当的 AWS Config 规则,开始运行安全检查,并生成控件的调查发现。
启用和配置 AWS Config 之前的注意事项
要在 Security Hub CSPM 中接收控件调查发现,必须在启用 Security Hub CSPM 的每个 AWS 区域中为您的账户启用 AWS Config。如果您将 Security Hub CSPM 用于多账户环境,则必须在每个区域中为管理员账户和所有成员账户启用 AWS Config。
我们强烈建议您在启用任何 Security Hub CSPM 标准和控件之前,先在 AWS Config 中启用资源记录。这有助于确保您的控件调查发现准确无误。
要在 AWS Config 中启用资源记录,您必须拥有足够的权限才能在附加到配置记录器的 AWS Identity and Access Management (IAM) 角色中记录资源。此外,请确保没有任何 IAM 策略或 AWS Organizations 策略阻止 AWS Config 拥有记录您的资源的权限。Security Hub CSPM 控件直接评估资源配置,而不考虑 AWS Organizations 策略。有关 AWS Config 记录的更多信息,请参阅《AWS Config 开发人员指南》中的 Working with the configuration recorder。
如果在 Security Hub CSPM 中启用了某个标准,但尚未启用 AWS Config,则 Security Hub CSPM 会按照以下计划尝试创建与服务相关的 AWS Config 规则:
-
启用标准当天。
-
启用标准后的第二天。
-
启用标准后的 3 天。
-
启用标准后的 7 天,此后连续每 7 天一次。
如果您使用中心配置,则每次将启用一个或多个标准的配置策略与账户、组织单元 (OU) 或根关联时,Security Hub CSPM 还会尝试创建与服务相关的 AWS Config 规则。
在 AWS Config 中记录资源
启用 AWS Config 时,必须指定要让 AWS Config 配置记录器记录哪些 AWS 资源。通过服务相关规则,配置记录器允许 Security Hub CSPM 检测对您的资源配置所做的更改。
要使 Security Hub CSPM 生成准确的控件调查发现,您必须在 AWS Config 中为与已启用的控件对应的资源类型启用记录。它主要启用具有变更已触发计划类型的控件,这些控件需要资源记录。某些具有定期计划类型的控件也需要资源记录。有关这些控件及其对应资源的列表,请参阅控件调查发现所需的 AWS Config 资源。
警告
如果没有为 Security Hub CSPM 控件正确配置 AWS Config 记录,则可能会导致控件调查发现不准确,尤其是在以下情况下:
-
您从未为给定控件记录资源,或者在创建该类型资源之前禁用了资源的记录。在这些情况下,即使您在禁用记录后创建了该控件范围内的资源,您也会收到有关该控件的
WARNING调查发现。此WARNING调查发现为默认调查发现,实际上并不评估资源的配置状态。 -
您可以对特定控件评估的资源禁用记录。在这种情况下,即使控件未评估新的或更新的资源,Security Hub CSPM 也会保留在您禁用记录之前生成的控件调查发现。Security Hub CSPM 还将调查发现的合规状态更改为
WARNING。这些保留的调查发现可能无法准确反映资源的当前配置状态。
默认情况下,AWS Config 会记录它在运行所在的 AWS 区域中发现的所有受支持的区域资源。要接收所有 Security Hub CSPM 控件调查发现,您还必须配置 AWS Config 以记录全局资源。为了节省成本,我们建议仅在一个区域内记录全局资源。如果您使用中心配置或跨区域聚合,则此区域应是您的主区域。
在 AWS Config 中,您可以选择连续记录或每日记录资源状态的变化。如果您选择每日记录,则在资源状态发生变化时,AWS Config 会在每 24 小时的周期结束时提供资源配置数据。如果没有任何更改,则不会传送任何数据。这可能会延迟变更触发的控件的 Security Hub CSPM 调查发现的生成,直到 24 小时期限结束。
有关 AWS Config 记录的更多信息,请参阅《AWS Config 开发人员指南》中的 Recording AWS resources。
启用和配置 AWS Config 的方式
您可以通过以下任何一种方式启用 AWS Config 并开启资源记录:
-
AWS Config 控制台– 您可以使用 AWS Config 控制台为账户启用 AWS Config。有关说明,请参阅《AWS Config 开发人员指南》中的 Setting up AWS Config with the console。
-
AWS CLI 或 SDK – 您可以使用 AWS Command Line Interface (AWS CLI) 为账户启用 AWS Config。有关说明,请参阅《AWS Config 开发人员指南》中的 Setting up AWS Config with the AWS CLI。AWS 软件开发工具包 (SDK) 也适用于许多编程语言。
-
CloudFormation 模板 – 要为许多账户启用 AWS Config,我们建议使用名为启用 AWS Config 的 AWS CloudFormation 模板。要访问此模板,请参阅《AWS CloudFormation 用户指南》中的 AWS CloudFormation StackSet 示例模板。
默认情况下,此模板会排除 IAM 全局资源的记录。为了节省记录成本,请确保仅在一个 AWS 区域中启用 IAM 全局资源的记录。如果启用了跨区域聚合,则此区域应为您的 Security Hub CSPM 主区域。否则,它可以是任何支持 IAM 全局资源记录且 Security Hub CSPM 可用的区域。我们建议运行一个 StackSet 来记录主区域或其他选定区域中的所有资源(包括 IAM 全局资源)。然后,运行第二个 StackSet 来记录除其他区域中的 IAM 全局资源之外的所有资源。
-
GitHub 脚本 – Security Hub CSPM 提供了一个 GitHub 脚本
,该脚本可以为跨区域的多个账户启用 Security Hub CSPM 和 AWS Config。如果您尚未与 AWS Organizations 集成,或者您有一些不属于某组织的成员账户,则此脚本非常有用。
有关更多信息,请参阅 AWS Security 博客上的以下博客文章:Optimize AWS Config for AWS Security Hub CSPM to effectively manage your cloud security posture
了解 Config.1 控件
在 Security Hub CSPM 中,如果 AWS Config 已禁用,Config.1 控件会在您的账户中生成 FAILED 调查发现。如果已启用 AWS Config 但未开启资源记录,则它也会在您的账户中生成 FAILED 调查发现。
如果已启用 AWS Config 并且已开启资源记录,但未对已启用控件检查的资源类型开启资源记录,则 Security Hub CSPM 会为 Config.1 控件生成 FAILED 调查发现。除了此 FAILED 调查发现外,Security Hub CSPM 还会针对已启用控件以及该控件检查的资源类型生成 WARNING 调查发现。例如,如果启用了 KMS.5 控件但未为 AWS KMS keys开启资源记录,则 Security Hub CSPM 会为 Config.1 控件生成 FAILED 调查发现。Security Hub CSPM 还会为 KMS.5 控件和您的 KMS 密钥生成 WARNING 调查发现。
要接收 Config.1 控件的 PASSED 调查发现,请为与已启用控件对应的所有资源类型启用资源记录。同时禁用您的组织不需要的控件。这有助于确保您的安全控件检查中没有配置漏洞。它还有助于确保您收到有关配置错误的资源的准确调查发现。
如果您是某个组织的 Security Hub CSPM 委派管理员,则必须为您的账户和成员账户正确配置 AWS Config 记录。如果使用跨区域聚合,则必须在主区域和所有关联区域中正确配置 AWS Config 记录。关联区域中无需记录全局资源。
生成服务相关规则
对于使用 AWS Config 服务相关规则的每个控件,Security Hub CSPM 都会在 AWS 环境中创建所需规则的实例。
这些服务相关规则特定于 Security Hub CSPM。即使已存在相同规则的其他实例,Security Hub CSPM 也会创建这些服务相关规则。服务相关规则在原始规则名称前添加 securityhub,并在规则名称后添加唯一标识符。例如,对于 AWS Config 托管规则 vpc-flow-logs-enabled,服务相关规则名称可能为 securityhub-vpc-flow-logs-enabled-12345。
可用于评估控件的 AWS Config 托管规则数量是有配额的。Security Hub CSPM 创建的 AWS Config 规则不计入这些配额。即使您已达到账户中托管规则的 AWS Config 配合,您也可以启用安全标准。要了解有关 AWS Config 规则配额的更多信息,请参阅《AWS Config 开发人员指南》中的 Service limits for AWS Config。
费用注意事项
Security Hub CSPM 可能会通过更新 AWS::Config::ResourceCompliance 配置项来影响您的 AWS Config 配置记录器成本。每当与 AWS Config 规则关联的 Security Hub CSPM 控件更改合规状态、启用或禁用或者有参数更新时,都可能发生更新。如果您仅将 AWS Config 配置记录器用于 Security Hub CSPM,并且不将此配置项用于其他用途,我们建议您在 AWS Config 中关闭记录。这可以降低您的 AWS Config 成本。您无需为安全检查记录 AWS::Config::ResourceCompliance 即可在 Security Hub CSPM 中工作。
有关与资源记录关联的成本的信息,请参阅 AWS Security Hub CSPM 定价