Security Hub for Elasticsearch - AWS Security Hub

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

Security Hub for Elasticsearch

这些 AWS Security Hub 控件用于评估 Elasticsearch 服务和资源。

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

[ES.1] Elasticsearch 域应启用静态加密

相关要求:PCIDSSv3.2.1/3.4、 NIST.800-53.r5 CA-9 (1)、 NIST.800-53.r5 CM-3(6), NIST.800-53.r5 SC-1 3、8、 NIST.800-53.r5 SC-2 8 (1)、(10)、NIST. NIST.800-53.r5 SC-2 800-53.r5 SI-7 NIST.800-53.r5 SC-7 (6)

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

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:elasticsearch-encrypted-at-rest

计划类型:定期

参数:

此控件检查 Elasticsearch 域是否启用静态加密配置。如果未启用静态加密,检查将失败。

为了在中为您的敏感数据增加一层安全性 OpenSearch,您应将您的数据配置 OpenSearch 为静态加密。Elasticsearch 域提供静态数据加密。该功能 AWS KMS 用于存储和管理您的加密密钥。为了执行加密,它使用带有 256 位密钥 (AES-256) 的高级加密标准算法。

要了解有关静 OpenSearch 态加密的更多信息,请参阅《亚马逊服务开发者指南》中的亚马逊 OpenSearch 服务静态数据加密。 OpenSearch

某些实例类型,例如 t.smallt.medium,不支持静态数据加密。有关详细信息,请参阅《Amazon OpenSearch 服务开发者指南》中的支持的实例类型

修复

要为新的和现有的 Elasticsearch 域启用静态加密,请参阅亚马逊 OpenSearch 服务开发者指南中的启用静态数据加密。

[ES.2] Elasticsearch 域名不可供公共访问

相关要求:PCIDSSv3.2.1/1.2.1、v3.2.1/1.3.1、PCI DSS v3.2.1/1.3.2、PCI DSS v3.2.1/1.3. PCI DSS 4、v3.2.1/1.3. PCI DSS 6、 NIST.800-53.r5 AC-2 1、、 NIST.800-53.r5 AC-3(7)、、(21)、、(11)、(16)、(20) NIST.800-53.r5 AC-3、(21)、(21)、(3) NIST.800-53.r5 AC-4、 NIST.800-53.r5 AC-4(4)、 NIST.800-53.r5 SC-7(9) NIST.800-53.r5 AC-6 NIST.800-53.r5 SC-7、v4.0.1/1.4.4 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 PCI DSS

类别:保护 > 安全网络配置 > 其中的资源 VPC

严重性:严重

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:elasticsearch-in-vpc-only

计划类型:定期

参数:

此控件用于检查 Elasticsearch 域名是否在. VPC 它不评估VPC子网路由配置来确定公有访问权限。您应确保 Elasticsearch 域未附加到公共子网。请参阅《Amazon OpenSearch 服务开发者指南》中的基于资源的政策。您还应确保根据推荐的最佳实践进行配置。VPC请参阅《Amazon VPC 用户指南VPC中的安全最佳实践

部署在内的 Elasticsearch 域VPC可以通过私有 AWS 网络与VPC资源通信,无需穿越公共互联网。此配置通过限制对传输中数据的访问来提高安全状况。 VPCs提供多种网络控制来保护对 Elasticsearch 域的访问,包括网络ACL和安全组。Security Hub 建议您将公有 Elasticsearch 域迁移VPCs到,以利用这些控制措施。

修复

如果您创建带有公共终端节点的域,则以后无法将其放置在中VPC。您必须创建一个新的域,然后迁移数据。反之亦然。如果您在中创建域VPC,则该域不能有公有终端节点。您必须创建另一个域或禁用该控制。

请参阅《亚马逊 OpenSearch 服务开发者指南》VPC中的在 a 中启动您的亚马逊 OpenSearch 服务域名

[ES.3] Elasticsearch 域应加密节点之间发送的数据

相关要求: NIST.800-53.r5 AC-4、 NIST.800-53.r5 SC-1 3、3、 NIST.800-53.r5 SC-2 3 ( NIST.800-53.r5 SC-23)、(4)、 NIST.800-53.r5 SC-7 (1) NIST.800-53.r5 SC-8、 NIST.800-53.r5 SC-8 NIST.800-53.r5 SC-8 (2)、PCI DSS v4.0.1/4.2.1

类别:保护 > 数据保护 > 加密 data-in-transit

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:elasticsearch-node-to-node-encryption-check

计划类型:已触发变更

参数:

此控件用于检查 Elasticsearch 域名是否启用了 node-to-node加密。如果 Elasticsearch 域未启用 node-to-node加密,则控制失败。如果 Elasticsearch 版本不支持 node-to-node加密检查,则该控件还会生成失败的结果。

HTTPS(TLS) 可用于帮助防止潜在的攻击者使用 person-in-the-middle或类似的攻击窃听或操纵网络流量。只应允许通过 HTTPS (TLS) 进行加密连接。为 Elasticsearch 域启用 node-to-node加密可确保集群内部通信在传输过程中得到加密。

此配置可能会降低性能。在启用此选项之前,您应该了解并测试性能权衡。

修复

有关在新域和现有域上启用 node-to-node加密的信息,请参阅《Amazon S OpenSearch ervice 开发者指南》中的启用 node-to-node加密

[ES.4] 应启用 Elasticsearch 域错误日志记录到 CloudWatch 日志

相关要求: NIST.800-53.r5 AC-2(4)、(26)、(9)、、 NIST.800-53.r5 AC-4 (9)、 NIST.800-53.r5 AC-6 .800-53.r5 SI-3 NIST.800-53.r5 SC-7 (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 CA-7、NIST .800-53.r5 SI-4 (20)、.800-53.r5 (20)、NIST .800-53.r5 SI-7 (8) NIST

类别:识别 – 日志记录

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:elasticsearch-logs-to-cloudwatch

计划类型:已触发变更

参数:

  • logtype = 'error'(不可自定义)

此控件检查 Elasticsearch 域是否配置为向日志发送错误日志。 CloudWatch

您应该为 Elasticsearch 域启用错误日志,并将这些日志发送到 CloudWatch 日志以进行保留和响应。域错误日志可以帮助进行安全和访问审计,还可以帮助诊断可用性问题。

修复

有关如何启用日志发布的信息,请参阅《Amazon S OpenSearch ervice 开发者指南》中的启用日志发布(控制台)

[ES.5] Elasticsearch 域名应该启用审核日志

相关要求: NIST.800-53.r5 AC-2(4)、(26)、 NIST.800-53.r5 AC-4 (9)、、 NIST.800-53.r5 AC-6 (9)、.800-53.r5 SI-3 NIST.800-53.r5 SC-7 (8)、NIST .800-53.r5 SI-4 (20)、.8 NIST 00-53.r5 SI-7 (8)、v4.0.1/10.4.2 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 CA-7 NIST PCI DSS

类别:识别 > 日志记录

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:elasticsearch-audit-logging-enabled(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

  • cloudWatchLogsLogGroupArnList(不可自定义)。Security Hub 不会填充此参数。应为审核日志配置的 CloudWatch 日志组列表,以逗号分隔。

    此规则适用于NON_COMPLIANT未在此参数列表中指定 Elasticsearch 域的 CloudWatch 日志组的情况。

此控件用于检查 Elasticsearch 域名是否启用了审核日志。如果 Elasticsearch 域未启用审核日志,则此控制失败。

审核日志是高度可定制的。它们允许您跟踪 Elasticsearch 集群上的用户活动,包括身份验证成功和失败、对身份验证的请求 OpenSearch、索引更改以及传入的搜索查询。

修复

有关启用审计日志的详细说明,请参阅《Amazon S OpenSearch ervice 开发者指南》中的启用审计日志

[ES.6] Elasticsearch 域应拥有至少三个数据节点

相关要求: NIST.800-53.r5 CP-10, NIST.800-53.r5 CP-6(2), NIST.800-53.r5 SC-36、 NIST.800-53.r5 SC-5 (2)、NIST .800-53.r5 SI-13 (5)

类别:恢复 > 弹性 > 高可用性

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:elasticsearch-data-node-fault-tolerance(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

此控件会检查 Elasticsearch 域是否配置了至少三个数据节点,并且 zoneAwarenessEnabledtrue

一个 Elasticsearch 域至少需要三个数据节点才能实现高可用性和容错能力。部署至少具有三个数据节点的 Elasticsearch 域可以确保在节点发生故障时集群正常运行。

修复

修改 Elasticsearch 域中的数据节点数量
  1. 打开亚马逊 OpenSearch 服务控制台,网址为https://console.aws.amazon.com/aos/

  2. 下,选择要编辑的域的名称。

  3. 选择 Edit domain (编辑域)

  4. 数据节点下,将节点数设置为大于或等于 3 的数字。

    对于三个可用区部署,请设置为三的倍数,以确保可用区间的分布均等。

  5. 选择提交

[ES.7] 应将 Elasticsearch 域配置为至少三个专用的主节点

相关要求: NIST.800-53.r5 CP-10, NIST.800-53.r5 CP-6(2), NIST.800-53.r5 SC-36、 NIST.800-53.r5 SC-5 (2)、NIST .800-53.r5 SI-13 (5)

类别:恢复 > 弹性 > 高可用性

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config规则:elasticsearch-primary-node-fault-tolerance(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

此控件用于检查 Elasticsearch 域是否配置了至少三个专用主节点。如果该域不使用专用主节点,则此控件会失败。如果 Elasticsearch 域有五个专用的主节点,则此控件会通过。但是,为了降低可用性风险,可能没有必要使用三个以上的主节点,并且会导致额外的费用。

一个 Elasticsearch 域至少需要三个专用的主节点才能实现高可用性和容错能力。在数据节点蓝绿部署期间,专用的主节点资源可能会紧张,因为还有其他节点需要管理。部署至少具有三个专用主节点的 Elasticsearch 域可以确保在节点发生故障时有足够的主节点资源容量和集群运行。

修复

修改 OpenSearch 域中专用主节点的数量
  1. 打开亚马逊 OpenSearch 服务控制台,网址为https://console.aws.amazon.com/aos/

  2. 下,选择要编辑的域的名称。

  3. 选择 Edit domain (编辑域)

  4. 专用主节点下,将实例类型设置为所需的实例类型。

  5. 主节点数设置为等于或大于三个。

  6. 选择提交

[ES.8] 应使用最新的安全策略对与 Elasticsearch 域的连接进行加密 TLS

相关要求: NIST.800-53.r5 AC-17 (2)、、 NIST.800-53.r5 IA-5 (1) NIST.800-53.r5 AC-4、 NIST.800-53.r5 SC-1 2 (3)、3、3、3 ( NIST.800-53.r5 SC-13)、 NIST.800-53.r5 SC-2 (4)、 NIST.800-53.r5 SC-2 (1)、 NIST.800-53.r5 SC-7 (2) NIST.800-53.r5 SC-8、 NIST.800-53.r5 SC-8 NIST .800-53.r5 SI-7 NIST.800-53.r5 SC-8 (6)、v4.0.1/4.2.1 PCI DSS

类别:保护 > 数据保护 > 加密 data-in-transit

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:elasticsearch-https-required(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

它控制检查 Elasticsearch 域终端节点是否已配置为使用最新的TLS安全策略。如果 Elasticsearch 域终端节点未配置为使用最新支持的策略或HTTPs未启用,则控制失败。当前支持的最新TLS安全策略是Policy-Min-TLS-1-2-PFS-2023-10

HTTPS(TLS) 可用于帮助防止潜在的攻击者使用 person-in-the-middle或类似的攻击来窃听或操纵网络流量。只应允许通过 HTTPS (TLS) 进行加密连接。加密传输中数据可能会影响性能。您应该使用此功能测试您的应用程序,以了解其性能概况和影响TLS。 TLS与以前的版本相比,1.2 提供了多项安全增强功能TLS。

修复

要启用TLS加密,请使用 UpdateDomainConfigAPI操作来配置 DomainEndpointOptions对象。这样会设置 TLSSecurityPolicy

[ES.9] 应标记 Elasticsearch 域

类别:识别 > 清单 > 标记

严重性:

资源类型:AWS::Elasticsearch::Domain

AWS Config 规则:tagged-elasticsearch-domain(自定义 Security Hub 规则)

计划类型:已触发变更

参数:

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

此控件用于检查 Elasticsearch 域是否具有带参数 requiredTagKeys 中定义的特定键的标签。如果该域没有任何标签键或未在参数 requiredTagKeys 中指定所有键,则此控件会失败。如果未提供 requiredTagKeys 参数,则此控件仅会检查是否存在标签键,如果该域未使用任何键进行标记,则此控件会失败。自动应用并以 aws: 为开头的系统标签会被忽略。

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

注意

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

修复

要向 Elasticsearch 域添加标签,请参阅亚马逊 OpenSearch 服务开发者指南中的使用标签。