AWS - Config Enum

支持 HackTricks

AWS Config

AWS Config 捕获资源变化,因此对 Config 支持的任何资源的更改都可以被记录,这将 记录变化的内容以及其他有用的元数据,所有这些信息都保存在一个称为配置项的文件中,即 CI。此服务是 区域特定的

配置项或 CI 是 AWS Config 的一个关键组成部分。它由一个 JSON 文件组成,包含配置信息、关系信息和其他元数据,作为对支持资源的时间点快照视图。AWS Config 可以为资源记录的所有信息都包含在 CI 中。每当对支持资源的配置进行任何更改时,都会创建一个 CI。除了记录受影响资源的详细信息外,AWS Config 还会记录任何直接相关资源的 CI,以确保更改没有影响到这些资源。

  • 元数据:包含有关配置项本身的详细信息。版本 ID 和配置 ID 唯一标识 CI。其他信息可以包括一个 MD5Hash,允许您将已记录的其他 CI 与同一资源进行比较。

  • 属性:这包含与实际资源相关的常见 属性信息。在此部分中,我们还具有唯一资源 ID,以及与资源相关的任何键值标签。资源类型也会列出。例如,如果这是一个 EC2 实例的 CI,则列出的资源类型可能是网络接口或该 EC2 实例的弹性 IP 地址。

  • 关系:这包含资源可能具有的任何连接 关系的信息。因此,在此部分中,它将清楚地描述该资源与其他资源之间的任何关系。例如,如果 CI 是针对 EC2 实例的,则关系部分可能显示与 VPC 的连接以及 EC2 实例所在的子网。

  • 当前配置:这将显示如果您执行 AWS CLI 的描述或列出 API 调用时生成的相同信息。AWS Config 使用相同的 API 调用来获取相同的信息。

  • 相关事件:这与 AWS CloudTrail 相关。这将显示 与触发此 CI 创建的更改相关的 AWS CloudTrail 事件 ID。每次对资源进行更改时,都会创建一个新的 CI。因此,将创建不同的 CloudTrail 事件 ID。

配置历史:得益于配置项,可以获取资源的配置历史。配置历史每 6 小时交付一次,包含特定资源类型的所有 CI。

配置流:配置项被发送到 SNS 主题,以便对数据进行分析。

配置快照:配置项用于创建所有支持资源的时间点快照。

S3 用于存储 配置历史文件和您数据的任何配置快照,所有这些都存储在一个单一的存储桶中,该存储桶在配置记录器中定义。如果您有多个 AWS 账户,您可能希望将配置历史文件聚合到主账户的同一个 S3 存储桶中。但是,您需要为此服务主体 config.amazonaws.com 授予写入访问权限,并为您的次要账户授予对主账户 S3 存储桶的写入访问权限。

功能

  • 当进行更改时,例如对安全组或存储桶访问控制列表进行更改 —> 触发 AWS Config 捕获的事件

  • 将所有内容存储在 S3 存储桶中

  • 根据设置,一旦发生更改,可能会触发一个 lambda 函数,或者定期调度 lambda 函数查看 AWS Config 设置

  • Lambda 将反馈给 Config

  • 如果规则被违反,Config 将触发 SNS

Config 规则

Config 规则是帮助您 强制执行特定合规检查 和控制的好方法,并允许您为每种资源类型采用理想的部署规范。每个规则 本质上是一个 lambda 函数,在调用时评估资源并执行一些简单逻辑以确定与规则的合规结果。每次对支持资源进行更改时,AWS Config 将检查与您已设置的任何配置规则的合规性。 AWS 有许多 预定义规则,属于安全范围,随时可用。例如,Rds-storage-encrypted。此规则检查您的 RDS 数据库实例是否启用了存储加密。Encrypted-volumes。此规则检查任何附加状态的 EBS 卷是否已加密。

  • AWS 管理规则:一组预定义规则,涵盖许多最佳实践,因此在设置自己的规则之前,浏览这些规则总是值得的,因为规则可能已经存在。

  • 自定义规则:您可以创建自己的规则以检查特定的自定义配置。

每个区域限制 50 个配置规则,之后您需要联系 AWS 以增加配额。 不合规的结果不会被删除。

支持 HackTricks

Last updated