本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
适用于 Amazon EKS 的 Security Hub 控件
这些 Security Hub 控件可评估 Amazon Elastic Kubernetes Service(Amazon EKS)的服务和资源。
这些控件可能并非全部可用 Amazon Web Services 区域。有关更多信息,请参阅 按地区划分的控件可用性。
[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 (21) NIST.800-53.r5 AC-4、、、(11) NIST.800-53.r5 AC-6 NIST.800-53.r5 SC-7、 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)、(4)、 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 (9)、 NIST.800-53.r5 SC-7 PCI DSS v4.0.1/1.4.4
类别:保护 > 安全网络配置 > 不公开访问的资源
严重性:高
资源类型:AWS::EKS::Cluster
Amazon Config 规则:eks-endpoint-no-public-access
计划类型:定期
参数:无
此控件检查 Amazon EKS 集群端点是否公开访问。如果 EKS 集群具有公开访问的端点,则控制失败。
当您创建新集群时,Amazon EKS 会为您用来与集群通信的托管 Kubernetes API 服务器创建一个端点。默认情况下,此 API 服务器端点可在 Internet 上公开使用。使用 (IAM) 和原生 Kubernetes 基于角色的访问控制 Amazon Identity and Access Management (RBAC) 的组合来保护对 API 服务器的访问。通过移除对端点的公共访问权限,您可以避免意外暴露和访问集群。
修复
要修改现有 EKS 集群的端点访问权限,请参阅 Amazon EKS 用户指南中的修改集群端点访问权限。您可以在创建新 EKS 集群时为其设置端点访问权限。有关创建新 Amazon EKS 集群的说明,请参阅 Amazon EKS 用户指南中的创建 Amazon EKS 集群。
[EKS.2] EKS 集群应在支持的 Kubernetes 版本上运行
相关要求: NIST.800-53.r5 CA-9(1)、nist.800-53.r5 CM-2、nist.800-53.r5 SI-2、nist.800-53.r5 SI-2 (2)、nist.800-53.r5 SI-2 (4)、nist.800-53.r5 SI-2 (5)、PCI DSS v4.0.1/12.3.4
类别:识别 > 漏洞、补丁和版本管理
严重性:高
资源类型:AWS::EKS::Cluster
Amazon Config 规则:eks-cluster-supported-version
计划类型:已触发变更
参数:
-
oldestVersionSupported
:1.29
(不可自定义)
此控件可检查 Amazon Elastic Kubernetes Service(Amazon EKS)集群是否在支持的 Kubernetes 版本上运行。如果 EKS 集群在不支持的版本上运行,则此控件将失败。
如果您的应用程序不需要特定版本的 Kubernetes,我们建议您为集群使用 EKS 支持的最新可用 Kubernetes 版本。有关更多信息,请参阅 Amazon EKS 用户指南中的 AAmazon EKS Kubernetes 发布日历和 Amazon EKS 版本支持以及常见问题解答。
修复
要更新 EKS 集群,请在 Amazon EKS 用户指南中更新 Amazon EKS 集群 Kubernetes 版本。
[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、PCI DSS v4.0.1/8.3.2
类别:保护 > 数据保护 > 加密 data-at-rest
严重性:中
资源类型:AWS::EKS::Cluster
Amazon Config 规则:eks-cluster-secrets-encrypted
计划类型:定期
参数:无
此控件可检查 Amazon EKS 集群是否使用了加密的 Kubernetes 密钥。如果集群的 Kubernetes 密钥未加密,则此控件将失败。
加密密钥时,可以使用 Amazon Key Management Service (Amazon KMS) 密钥为集群提供存储在 etcd 中的 Kubernetes 密钥的信封加密。这种加密是对 EBS 卷加密的补充,默认情况下,对作为 EKS 集群的一部分存储在 etcd 中的所有数据(包括密钥)启用该加密。对 EKS 集群使用密钥加密,您就可以使用您定义和管理的 KMS 密钥对 Kubernetes 密钥进行加密,从而为 Kubernetes 应用程序部署深度防御策略。
修复
要在 EKS 集群上启用密钥加密,请参阅《Amazon EKS 用户指南》中的在现有集群上启用密钥加密。
[EKS.6] 应标记 EKS 集群
类别:识别 > 清单 > 标记
严重性:低
资源类型:Amazon::EKS::Cluster
Amazon Config规则:tagged-eks-cluster
(自定义 Security Hub 规则)
计划类型:已触发变更
参数:
参数 | 描述 | 类型 | 允许的自定义值 | Security Hub 默认值 |
---|---|---|---|---|
requiredTagKeys
|
被评估资源必须包含的非系统标签键列表。标签键区分大小写。 | StringList | 符合 Amazon 要求的标签列表 | 无默认值 |
此控件可检查 Amazon EKS 集群是否具有带特定键的标签,这些键在 requiredTagKeys
参数中进行定义。如果集群没有任何标签键或者未在 requiredTagKeys
参数中指定所有键,则此控件将失败。如果未提供 requiredTagKeys
参数,则此控件仅检查是否存在标签键,如果集群未使用任何键进行标记,则此控件将失败。自动应用并以 aws:
为开头的系统标签会被忽略。
标签是您分配给 Amazon 资源的标签,它由密钥和可选值组成。您可以创建标签,以按用途、所有者、环境或其他标准对资源进行分类。标签可帮助您识别、组织、搜索和筛选资源。使用标签进行标记还可以帮助您跟踪负责操作和通知的资源所有者。使用标签进行标记时,可以将基于属性的访问权限控制(ABAC)作为授权策略实施,该策略根据标签来定义权限。您可以向 IAM 实体(用户或角色)和 Amazon 资源附加标签。您可以为 IAM 主体创建单个 ABAC 策略或者一组单独的策略。您可以将这些 ABAC 策略设计为允许在主体的标签与资源标签匹配时进行操作。有关更多信息,请参阅 ABAC 有什么用 Amazon? 在 IAM 用户指南中。
注意
请勿在标签中添加个人身份信息(PII)或者其他机密或敏感信息。许多人都可以访问标签 Amazon Web Services 服务,包括 Amazon Billing。有关更多标记最佳做法,请参阅中的为Amazon 资源添加标签。Amazon Web Services 一般参考
修复
要向 EKS 集群添加标签,请参阅《Amazon EKS 用户指南》中的标记 Amazon EKS 资源。
[EKS.7] 应标记 EKS 身份提供商配置
类别:识别 > 清单 > 标记
严重性:低
资源类型:Amazon::EKS::IdentityProviderConfig
Amazon Config规则:tagged-eks-identityproviderconfig
(自定义 Security Hub 规则)
计划类型:已触发变更
参数:
参数 | 描述 | 类型 | 允许的自定义值 | Security Hub 默认值 |
---|---|---|---|---|
requiredTagKeys
|
被评估资源必须包含的非系统标签键列表。标签键区分大小写。 | StringList | 符合 Amazon 要求的标签列表 | 无默认值 |
此控件可检查 Amazon EKS 身份提供商配置是否具有带特定键的标签,这些键在 requiredTagKeys
参数中进行定义。如果配置没有任何标签键或未在 requiredTagKeys
参数中指定所有键,则此控件将失败。如果未提供 requiredTagKeys
参数,则此控件仅检查是否存在标签键,如果配置未使用任何键进行标记,则此控件将失败。自动应用并以 aws:
为开头的系统标签会被忽略。
标签是您分配给 Amazon 资源的标签,它由密钥和可选值组成。您可以创建标签,以按用途、所有者、环境或其他标准对资源进行分类。标签可帮助您识别、组织、搜索和筛选资源。使用标签进行标记还可以帮助您跟踪负责操作和通知的资源所有者。使用标签进行标记时,可以将基于属性的访问权限控制(ABAC)作为授权策略实施,该策略根据标签来定义权限。您可以向 IAM 实体(用户或角色)和 Amazon 资源附加标签。您可以为 IAM 主体创建单个 ABAC 策略或者一组单独的策略。您可以将这些 ABAC 策略设计为允许在主体的标签与资源标签匹配时进行操作。有关更多信息,请参阅 ABAC 有什么用 Amazon? 在 IAM 用户指南中。
注意
请勿在标签中添加个人身份信息(PII)或者其他机密或敏感信息。许多人都可以访问标签 Amazon Web Services 服务,包括 Amazon Billing。有关更多标记最佳做法,请参阅中的为Amazon 资源添加标签。Amazon Web Services 一般参考
修复
要向 EKS 身份提供商配置添加标签,请参阅《Amazon EKS 用户指南》中的标记 Amazon EKS 资源。
[EKS.8] EKS 集群应启用审核日志记录
相关要求: NIST.800-53.r5 AC-2(12)、(4)、(26)、 NIST.800-53.r5 AC-2 (9)、(9)、 NIST.800-53.r5 AC-4 (9)、nist.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 nist.800-53.r5 SI-4、nist.800-53.r5 SI-4 (20)、nist.800-53.r5 SI-7 (8)、PCI DSS v4.0.1/10.2.1
类别:识别 > 日志记录
严重性:中
资源类型:AWS::EKS::Cluster
Amazon Config 规则:eks-cluster-log-enabled
计划类型:已触发变更
参数:
logTypes: audit
(不可自定义)
此控件检查 Amazon EKS 集群是否启用了审核日志记录。如果没有为集群启用审核日志记录,则控制失败。
注意
此控件不会检查是否通过 Amazon Security Lake 为 Amazon Web Services 账户启用了 Amazon EKS 审计日志记录。
EKS 控制平面日志将审计和诊断日志直接从 EKS 控制平面提供给您账户中的 Amazon CloudWatch Logs。您可以选择所需的日志类型,日志将作为日志流发送到中每个 EKS 集群的群组 CloudWatch。通过日志记录,可以了解 EKS 集群的访问情况和性能。通过将 EKS 集群的 EKS 控制平面CloudWatch 日志发送到日志,您可以在中心位置记录用于审计和诊断目的的操作。
修复
要为您的 EKS 集群启用审核日志,请参阅《Amazon EKS 用户指南》中的启用和禁用控制面板日志。