适用于亚马逊的 Security Hub 控件 EKS - AWS Security Hub

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

适用于亚马逊的 Security Hub 控件 EKS

这些 Security Hub 控件用于评估亚马逊 Elastic Kubernetes 服务(EKS亚马逊)的服务和资源。

这些控件可能并非全部可用 AWS 区域。 有关更多信息,请参阅按地区划分的控件可用性

[EKS.1] 不应公开访问EKS集群终端节点

相关要求: NIST.800-53.r5 AC-21、 NIST.800-53.r5 AC-3、 NIST.800-53.r5 AC-3 (7) NIST.800-53.r5 AC-4、 NIST.800-53.r5 AC-4 (21)、 NIST.800-53.r5 AC-6 NIST.800-53.r5 SC-7、 NIST.800-53.r5 SC-7 (11)、 NIST.800-53.r5 SC-7 (16)、 NIST.800-53.r5 SC-7 (20)、 NIST.800-53.r5 SC-7 (21)、 NIST.800-53.r5 SC-7 (3)、 NIST.800-53.r5 SC-7 (4)、 NIST.800-53.r5 SC-7 (9)

类别:保护 > 安全网络配置 > 不公开访问的资源

严重性:

资源类型:AWS::EKS::Cluster

AWS Config 规则:eks-endpoint-no-public-access

计划类型:定期

参数:

此控件检查 Amazon EKS 集群终端节点是否可公开访问。如果EKS集群具有可公开访问的终端节点,则控制失败。

当您创建新集群时,Amazon EKS 会为托管 Kubernetes API 服务器创建一个终端节点,用于与集群进行通信。默认情况下,此API服务器端点可在互联网上公开使用。使用以下组合来保护对API服务器的访问 AWS Identity and Access Management (IAM) 和原生 Kubernetes 基于角色的访问控制 ()。RBAC通过移除对端点的公共访问权限,您可以避免意外暴露和访问集群。

修复

要修改现有EKS集群的终端节点访问权限,请参阅 Amazon EKS 用户指南中的修改集群终端节点访问权限。您可以在创建新EKS集群时为其设置终端节点访问权限。有关创建新 Amazon EKS 集群的说明,请参阅亚马逊EKS用户指南中的创建亚马逊EKS群。

[EKS.2] EKS 集群应在支持的 Kubernetes 版本上运行

相关要求: NIST.800-53.r5 CA-9(1)、NIST .800-53.r5 CM-2、.800-53.r5 SI-2、.800-53.r5 SI-2 (2)、.800-53.r5 SI-2 (4)、NIST .800-53.r5 SI-2 (4)、NIST .800-53.r5 SI-2 (5) NIST NIST

类别:识别 > 漏洞、补丁和版本管理

严重性:

资源类型:AWS::EKS::Cluster

AWS Config 规则:eks-cluster-supported-version

计划类型:已触发变更

参数:

  • oldestVersionSupported1.28(不可自定义)

此控件检查亚马逊 Elastic Kubernetes Service(EKS亚马逊)集群是否在支持的 Kubernetes 版本上运行。如果EKS集群在不支持的版本上运行,则控制失败。

如果您的应用程序不需要特定版本的 Kubernetes,我们建议您使用集群支持的最新可用的 Kubernetes 版本。EKS有关更多信息,请参阅 Amazon EKS Kubernetes 发布日历和亚马逊EKS版本支持FAQ,以及亚马逊EKS用户指南。

修复

要更新EKS集群,请在亚马逊用户指南中更新亚马逊EKS集群 Kubernetes 版本。EKS

[EKS.3] EKS 集群应使用加密的 Kubernetes 密钥

相关要求: NIST.800-53.r5 SC-8、 NIST.800-53.r5 SC-1 2、 NIST.800-53.r5 SC-1 3、NIST .800-53.r5 SI-28

类别:保护 > 数据保护 > 加密 data-at-rest

严重性:

资源类型:AWS::EKS::Cluster

AWS Config 规则:eks-secrets-encrypted

计划类型:定期

参数:

此控件用于检查 Amazon EKS 集群是否使用加密的 Kubernetes 密钥。如果集群的 Kubernetes 密钥未加密,则控制失败。

加密机密时,可以使用 AWS Key Management Service (AWS KMS) 密钥用于为您的集群提供存储在 etcd 中的 Kubernetes 密钥的信封加密。这种加密是对作为EKS集群一部分存储在 etcd 中的所有数据(包括机密)默认启用的EBS卷加密的补充。对EKS集群使用密钥加密允许您使用您定义和管理的密钥对 Kubernetes 密钥进行加密,从而为 Kubernetes 应用程序部署深度防御策略。KMS

修复

要在EKS集群上启用密钥加密,请参阅 Amazon EKS 用户指南中的在现有集群上启用秘密加密。

[EKS.6] 应EKS标记集群

类别:识别 > 清单 > 标记

严重性:

资源类型:AWS::EKS::Cluster

AWS Config规则:tagged-eks-cluster(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

参数 描述 类型 允许的自定义值 Security Hub 默认值
requiredTagKeys 评估的资源必须包含的非系统标签密钥列表。标签键区分大小写。 StringList 符合条件的标签列表 AWS 要求 无默认值

此控件检查 Amazon EKS 集群是否具有参数中定义的特定密钥的标签requiredTagKeys。如果集群没有任何标签密钥或者没有参数中指定的所有密钥,则控制失败requiredTagKeys。如果requiredTagKeys未提供该参数,则该控件仅检查标签密钥是否存在,如果集群未使用任何密钥进行标记,则该控件将失败。系统标签会自动应用并以其开头aws:,但会被忽略。

标签是您分配给的标签 AWS 资源,它由一个键和一个可选值组成。您可以创建标签,按用途、所有者、环境或其他标准对资源进行分类。标签可以帮助您识别、组织、搜索和筛选资源。标记还可以帮助您跟踪负责任的资源所有者的操作和通知。使用标记时,可以实现基于属性的访问控制 (ABAC) 作为一种授权策略,它根据标签定义权限。您可以将标签附加到IAM实体(用户或角色)和 AWS 资源的费用。您可以为IAM委托人创建单个ABAC策略或一组单独的策略。您可以将这些ABAC策略设计为允许在委托人的标签与资源标签匹配时进行操作。有关更多信息,请参阅用ABAC途 AWS? 在《IAM用户指南》中。

注意

不要在标签中添加个人身份信息 (PII) 或其他机密或敏感信息。许多人都可以访问标签 AWS 服务,包括 AWS Billing。 有关更多标记最佳实践,请参阅为自己添加标签 AWS中的资源 AWS 一般参考.

修复

要向EKS集群添加标签,请参阅《亚马逊EKS用户指南》中的为你的亚马逊EKS资源添加标签。

[EKS.7] 应EKS标记身份提供商配置

类别:识别 > 清单 > 标记

严重性:

资源类型:AWS::EKS::IdentityProviderConfig

AWS Config规则:tagged-eks-identityproviderconfig(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

参数 描述 类型 允许的自定义值 Security Hub 默认值
requiredTagKeys 评估的资源必须包含的非系统标签密钥列表。标签键区分大小写。 StringList 符合条件的标签列表 AWS 要求 无默认值

此控件会检查 Amazon EKS 身份提供商配置是否具有参数中定义的特定密钥的标签requiredTagKeys。如果配置没有任何标签密钥或参数中没有指定的所有密钥,则控件将失败requiredTagKeys。如果requiredTagKeys未提供该参数,则该控件仅检查标签密钥是否存在,如果配置未使用任何密钥标记,则该控件将失败。系统标签会自动应用并以其开头aws:,但会被忽略。

标签是您分配给的标签 AWS 资源,它由一个键和一个可选值组成。您可以创建标签,按用途、所有者、环境或其他标准对资源进行分类。标签可以帮助您识别、组织、搜索和筛选资源。标记还可以帮助您跟踪负责任的资源所有者的操作和通知。使用标记时,可以实现基于属性的访问控制 (ABAC) 作为一种授权策略,它根据标签定义权限。您可以将标签附加到IAM实体(用户或角色)和 AWS 资源的费用。您可以为IAM委托人创建单个ABAC策略或一组单独的策略。您可以将这些ABAC策略设计为允许在委托人的标签与资源标签匹配时进行操作。有关更多信息,请参阅用ABAC途 AWS? 在《IAM用户指南》中。

注意

不要在标签中添加个人身份信息 (PII) 或其他机密或敏感信息。许多人都可以访问标签 AWS 服务,包括 AWS Billing。 有关更多标记最佳实践,请参阅为自己添加标签 AWS中的资源 AWS 一般参考.

修复

要向EKS身份提供商配置添加标签,请参阅《亚马逊EKS用户指南》中的为您的亚马逊EKS资源添加标签。

[EKS.8] EKS 集群应启用审核日志

相关要求: NIST.800-53.r5 AC-2(12)、(4)、(26)、 NIST.800-53.r5 AC-2 (9)、 NIST.800-53.r5 AC-4 (9)、.800-53.r5 SI-3 NIST.800-53.r5 AC-6 (8) NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 AU-9(7), NIST.800-53.r5 CA-7、 NIST.800-53.r5 SC-7 .800-53.r5 SI-4、NIST .800-53.r5 SI-4、.800-53.r5 SI-4 (20)、NIST .800-53.r5 SI-7 (8) NIST NIST

类别:识别 > 日志记录

严重性:

资源类型:AWS::EKS::Cluster

AWS Config 规则:eks-cluster-log-enabled

计划类型:已触发变更

参数:

  • logTypes: audit(不可自定义)

此控件检查 Amazon EKS 集群是否启用了审核日志。如果没有为集群启用审核日志记录,则控制失败。

注意

此控件不检查是否已通过 Amazon Security Lake 为以下内容启用亚马逊EKS审核日志 AWS 账户.

EKS控制平面日志记录可直接从EKS控制平面向账户中的 Amazon CloudWatch Logs 提供审计和诊断日志。您可以选择所需的日志类型,日志将作为日志流发送到中每个EKS集群的组 CloudWatch。通过日志记录,可以查看EKS集群的访问和性能。通过将EKS集群的EKS控制平面CloudWatch 日志发送到日志,您可以在中心位置记录用于审计和诊断目的的操作。

修复

要为您的EKS集群启用审核日志,请参阅 Amazon EKS 用户指南中的启用和禁用控制平面日志