

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Elasticsearch 用 Security Hub CSPM
<a name="es-controls"></a>

これらの AWS Security Hub CSPM コントロールは、Elasticsearch サービスとリソースを評価します。

これらのコントロールは、一部の で使用できない場合があります AWS リージョン。詳細については、「[リージョン別のコントロールの可用性](securityhub-regions.md#securityhub-regions-control-support)」を参照してください。

## [ES.1] Elasticsearch ドメインは、保管中の暗号化を有効にする必要があります
<a name="es-1"></a>

**関連する要件:** PCI DSS v3.2.1/3.4、NIST.800-53.r5 CA-9(1)、NIST.800-53.r5 CM-3(6)、NIST.800-53.r5 SC-13、NIST.800-53.r5 SC-28、NIST.800-53.r5 SC-28(1)、NIST.800-53.r5 SC-7(10)、NIST.800-53.r5 SI-7(6)

**カテゴリ:** 保護 > データ保護 > 保管中のデータの暗号化

**重要度:** 中

**リソースタイプ :** `AWS::Elasticsearch::Domain`

**AWS Config ルール :** [https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-encrypted-at-rest.html](https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-encrypted-at-rest.html)

**スケジュールタイプ :** 定期的

**パラメータ:** なし

このコントロールは、Elasticsearch ドメインで保管中の暗号化設定が有効になっているかどうかをチェックします。保管中の暗号化が有効になっていない場合、チェックは失敗します。

OpenSearch 内の機密データのセキュリティを強化するには、保管中に暗号化されるように OpenSearch を設定する必要があります。Elasticsearch ドメインは、保管中のデータの暗号化を提供します。この機能では AWS KMS 、 を使用して暗号化キーを保存および管理します。暗号化の実行には、256 ビットキーを使用した Advanced Encryption Standard アルゴリズム (AES-256) を使用します。

保管中の OpenSearch での暗号化の詳細については、「*Amazon OpenSearch Service デベロッパーガイド*」の「[Amazon OpenSearch Service の保管中のデータの暗号化](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/encryption-at-rest.html)」を参照してください。

`t.small` や `t.medium` などの特定のインスタンスタイプでは、保管中のデータの暗号化がサポートされていません。詳細については、「*Amazon OpenSearch Service デベロッパーガイド*」の「[サポートされるインスタンスタイプ](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/supported-instance-types.html)」を参照してください。

### 修正
<a name="es-1-remediation"></a>

新規および既存の Elasticsearch ドメインの保管時の暗号化を有効にするには、「*Amazon OpenSearch Service デベロッパーガイド*」の「[保管中のデータの暗号化の有効化](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/encryption-at-rest.html#enabling-ear)」を参照してください。

## [ES.2] Elasticsearch ドメインがパブリックにアクセスできないようにする必要があります
<a name="es-2"></a>

**関連する要件:** PCI DSS v3.2.1/1.2.1、PCI DSS v3.2.1/1.3.1、PCI DSS v3.2.1/1.3.2、PCI DSS v3.2.1/1.3.4、PCI DSS v3.2.1/1.3.6、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)、PCI DSS v4.0.1/1.4.4

**カテゴリ:** 保護 > セキュアなネットワーク設定 > VPC 内のリソース 

**重要度:** 非常事態

**リソースタイプ :** `AWS::Elasticsearch::Domain`

**AWS Config ルール :** [https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-in-vpc-only.html](https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-in-vpc-only.html)

**スケジュールタイプ :** 定期的

**パラメータ:** なし

このコントロールは、Elasticsearch ドメインが VPC 内にあるかどうかをチェックします。このコントロールは、パブリックアクセスの可能性を判断するための VPC サブネットルーティング設定を評価しません。Elasticsearch ドメインがパブリックサブネットに添付済みでないことを確認する必要があります。「*Amazon OpenSearch Service デベロッパーガイド*」の「[リソースベースのポリシー](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ac.html#ac-types-resource)」を参照してください。また、推奨されるベストプラクティスに従って VPC が確実に設定されていることを確認する必要があります。「Amazon VPC ユーザーガイド」の「[VPC のセキュリティのベストプラクティス](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-best-practices.html)」を参照してください。

VPC 内にデプロイされた Elasticsearch ドメインは、パブリックインターネットを経由することなく、プライベート AWS ネットワーク経由で VPC リソースと通信できます。この設定では、転送中のデータへのアクセスを制限することにより、セキュリティ体制が向上します。VPC は、ネットワーク ACL やセキュリティグループを含む Elasticsearch ドメインへのアクセスを保護するための多数のネットワークコントロールを提供します。Security Hub CSPM では、パブリック Elasticsearch ドメインを VPCs に移行して、これらのコントロールを利用することをお勧めします。

### 修正
<a name="es-2-remediation"></a>

パブリックエンドポイントを使用してドメインを作成する場合、後で VPC 内にドメインを配置することはできません。代わりに、新規のドメインを作成して、データを移行する必要があります。逆の場合も同様です。VPC 内にドメインを作成する場合、パブリックエンドポイントを持つことはできません。代わりに、[別のドメインを作成する](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html)か、このコントロールを無効にする必要があります。

「*Amazon OpenSearch Service デベロッパーガイド*」の「[VPC 内で Amazon OpenSearch Service ドメインを起動する](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html)」を参照してください。

## [ES.3] Elasticsearch ドメインは、ノード間で送信されるデータを暗号化する必要があります
<a name="es-3"></a>

**関連する要件:** NIST.800-53.r5 AC-4、NIST.800-53.r5 SC-13、NIST.800-53.r5 SC-23、NIST.800-53.r5 SC-23(3)、NIST.800-53.r5 SC-7(4)、NIST.800-53.r5 SC-8、NIST.800-53.r5 SC-8(1)、NIST.800-53.r5 SC-8(2)、PCI DSS v4.0.1/4.2.1

**カテゴリ:** 保護 > データ保護 > 転送中のデータの暗号化

**重要度:** 中

**リソースタイプ :** `AWS::Elasticsearch::Domain`

**AWS Config ルール :** [https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-node-to-node-encryption-check.html](https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-node-to-node-encryption-check.html)

**スケジュールタイプ:** 変更がトリガーされた場合

**パラメータ :** なし

このコントロールは Elasticsearch ドメインでノード間の暗号化が有効になっているかどうかをチェックします。Elasticsearch ドメインでノード間の暗号化が有効になっていない場合、このコントロールは失敗します。Elasticsearch バージョンがノード間の暗号化チェックをサポートしていない場合、コントロールは失敗した検出結果も生成します。

HTTPS (TLS) を使用すると、潜在的な攻撃者が中間者攻撃または同様の攻撃を使用してネットワークトラフィックを盗聴または操作することを防止できます。HTTPS (TLS) 経由の暗号化された接続のみを許可する必要があります。Elasticsearch ドメインのノード間の暗号化を有効にすると、クラスター内の通信が転送中に確実に暗号化されます。

この設定には、パフォーマンス上のペナルティが発生する可能性があります。このオプションを有効にする前に、パフォーマンスのトレードオフを認識してテストする必要があります。

### 修正
<a name="es-3-remediation"></a>

新規および既存のドメインでノード間の暗号化を有効にする方法については、「*Amazon OpenSearch Service デベロッパーガイド*」の「[ノード間の暗号化を有効にする](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ntn.html#enabling-ntn)」を参照してください。

## [ES.4] CloudWatch Logs への Elasticsearch ドメインエラーログ記録を有効にする必要があります
<a name="es-4"></a>

**関連する要件:** NIST.800-53.r5 AC-2(4)、NIST.800-53.r5 AC-4(26)、NIST.800-53.r5 AC-6(9)、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 SC-7(9)、NIST.800-53.r5 SI-3(8)、NIST.800-53.r5 SI-4(20)、NIST.800-53.r5 SI-7(8)

**カテゴリ:** 識別 - ログ記録

**重要度:** 中

**リソースタイプ :** `AWS::Elasticsearch::Domain`

**AWS Config ルール :** [https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-logs-to-cloudwatch.html](https://docs.aws.amazon.com/config/latest/developerguide/elasticsearch-logs-to-cloudwatch.html)

**スケジュールタイプ :** 変更がトリガーされた場合

**パラメータ :**
+ `logtype = 'error'` (カスタマイズ不可)

このコントロールは、Elasticsearch ドメインが CloudWatch Logs にエラーログを送信するように設定されているかどうかをチェックします。

Elasticsearch ドメインのエラーログを有効にし、これらのログは保持と応答のために CloudWatch Logs に送信する必要があります。ドメインのエラーログは、セキュリティとアクセス監査や、可用性の問題の診断に役立ちます。

### 修正
<a name="es-4-remediation"></a>

ログ発行を有効にする方法については、「*Amazon OpenSearch Service デベロッパーガイド*」の「[Enabling log publishing (console)](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createdomain-configure-slow-logs.html#createdomain-configure-slow-logs-console)」を参照してください。

## [ES.5] Elasticsearch ドメインで監査ログ記録が有効になっている必要があります
<a name="es-5"></a>

**関連する要件:** NIST.800-53.r5 AC-2(4)、NIST.800-53.r5 AC-4(26)、NIST.800-53.r5 AC-6(9)、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 SC-7(9)、NIST.800-53.r5 SI-3(8)、NIST.800-53.r5 SI-4(20)、NIST.800-53.r5 SI-7(8)、PCI DSS v4.0.1/10.4.2

**カテゴリ:** 識別 > ログ記録

**重要度:** 中

**リソースタイプ :** `AWS::Elasticsearch::Domain`

**AWS Config rule:** `elasticsearch-audit-logging-enabled` (カスタム Security Hub CSPM ルール)

**スケジュールタイプ :** 変更がトリガーされた場合

**パラメータ :**
+ `cloudWatchLogsLogGroupArnList` (カスタマイズ不可)。Security Hub CSPM はこのパラメータに入力しません。監査ログ用に設定する必要がある CloudWatch Logs ロググループのカンマ区切りリスト。

  Elasticsearch ドメインの CloudWatch Logs ロググループがこのパラメータリストで指定されていない場合、このルールは `NON_COMPLIANT` です。

このコントロールは、Elasticsearch ドメインで監査ログ記録が有効になっているかどうかをチェックします。Elasticsearch ドメインで監査ログ記録が有効になっていない場合、このコントロールは失敗します。

監査ログは高度なカスタマイズが可能です。これにより、認証の成功と失敗、OpenSearch へのリクエスト、インデックス変更、受信検索クエリなど、Elasticsearch クラスターでのユーザーアクティビティを追跡できます。

### 修正
<a name="es-5-remediation"></a>

監査ログを有効にする詳細な手順については、「*Amazon OpenSearch Service デベロッパーガイド*」の「[Enabling audit logs](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/audit-logs.html#audit-log-enabling)」を参照してください。

## [ES.6] Elasticsearch ドメインには少なくとも 3 つのデータノードが必要です
<a name="es-6"></a>

**関連する要件:** 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 rule:** `elasticsearch-data-node-fault-tolerance` (カスタム Security Hub CSPM ルール)

**スケジュールタイプ :** 変更がトリガーされた場合

**パラメータ:** なし

このコントロールは、Elasticsearch ドメインに少なくとも 3 つのデータノードが設定されていること、また `zoneAwarenessEnabled` が `true` かどうかをチェックします。

Elasticsearch ドメインでは、高可用性と耐障害性のために少なくとも 3 つのデータノードが必要です。少なくとも 3 つのデータノードを持つ Elasticsearch ドメインをデプロイすると、ノードに障害が発生した場合のクラスター操作が確保されます。

### 修正
<a name="es-6-remediation"></a>

**Elasticsearch ドメインのデータノードの数を変更するには**

1. [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/) で Amazon OpenSearch Service コンソールを開きます。

1. **[ドメイン]** で、編集するドメインの名前を選択します。

1. **[Edit domain]** (ドメインの編集) を選択します。

1. **[Data nodes]** (データノード) で、**[Number of nodes]** (ノード数) に `3` 以上の数値を設定します。

   3 つのアベイラビリティーゾーンのデプロイは、3 の倍数に設定してアベイラビリティーゾーン間で均等に配信されるようにします。

1. **[Submit]** (送信) を選択します。

## [ES.7] Elasticsearch ドメインは、少なくとも 3 つの専用マスターノードを設定する必要があります。
<a name="es-7"></a>

**関連する要件:** 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 rule:** `elasticsearch-primary-node-fault-tolerance` (カスタム Security Hub CSPM ルール)

**スケジュールタイプ :** 変更がトリガーされた場合

**パラメータ :** なし

このコントロールは、Elasticsearch ドメインが、少なくとも 3 つの専用プライマリノードで構成されているかどうかをチェックします。ドメインが専用プライマリノードを使用しない場合、このコントロールは失敗します。Elasticsearch ドメインに 5 つの専用プライマリノードがある場合、このコントロールは成功します。ただし、3 つ以上のプライマリノードの使用は、可用性リスクを低減するために不要な場合があり、使用により追加コストが発生します。

Elasticsearch ドメインでは、高可用性と耐障害性のために、少なくとも 3 つの専用プライマリノードが必要です。専用プライマリノードのリソースは、データノードのブルー/グリーンのデプロイ中に管理が必要なノードが追加されるため、負荷がかかることがあります。少なくとも 3 つの専用プライマリノードを持つ Elasticsearch ドメインをデプロイすると、ノードに障害が発生した場合に十分なプライマリノードのリソース容量とクラスター操作が確保されます。

### 修正
<a name="es-7-remediation"></a>

**OpenSearch ドメイン内の専用プライマリノード数を変更するには**

1. [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/) で Amazon OpenSearch Service コンソールを開きます。

1. **[ドメイン]** で、編集するドメインの名前を選択します。

1. **[Edit domain]** (ドメインの編集) を選択します。

1. **[Dedicated master nodes]** (専用マスターノード) で、**[Instance type]** (インスタンスタイプ) に目的のインスタンスタイプを設定します。

1. **[Number of master nodes]** (マスターノードの数) を 3 以上に設定します。

1. **[Submit]** (送信) を選択します。

## [ES.8] Elasticsearch ドメインへの接続は最新の TLS セキュリティポリシーを使用して暗号化する必要があります
<a name="es-8"></a>

**関連する要件:** NIST.800-53.r5 AC-17(2)、NIST.800-53.r5 AC-4、NIST.800-53.r5 IA-5(1)、NIST.800-53.r5 SC-12(3)、NIST.800-53.r5 SC-13、NIST.800-53.r5 SC-23、NIST.800-53.r5 SC-23(3)、NIST.800-53.r5 SC-7(4)、NIST.800-53.r5 SC-8、NIST.800-53.r5 SC-8(1)、NIST.800-53.r5 SC-8(2)、NIST.800-53.r5 SI-7(6)、PCI DSS v4.0.1/4.2.1

**カテゴリ:** 保護 > データ保護 > 転送中のデータの暗号化

**重要度:** 中

**リソースタイプ :** `AWS::Elasticsearch::Domain`

**AWS Config rule:** `elasticsearch-https-required` (カスタム Security Hub CSPM ルール)

**スケジュールタイプ :** 変更がトリガーされた場合

**パラメータ :** なし

このコントロールは、Elasticsearch ドメインエンドポイントが最新の TLS セキュリティポリシーを使用するように設定されているかどうかを確認します。Elasticsearch ドメインエンドポイントが最新のサポートされているポリシーを使用するように設定されていない場合、または HTTP が有効になっていない場合、コントロールは失敗します。現在サポートされている最新の TLS セキュリティポリシーは `Policy-Min-TLS-1-2-PFS-2023-10` です。

HTTPS (TLS) を使用すると、潜在的な攻撃者が中間者攻撃または同様の攻撃を使用してネットワークトラフィックを盗聴または操作することを防止できます。HTTPS (TLS) 経由の暗号化された接続のみを許可する必要があります。転送中のデータの暗号化は、パフォーマンスに影響する可能性があります。TLS のパフォーマンスプロファイルと TLS の影響を把握するには、この機能を使用してアプリケーションをテストする必要があります。TLS 1.2 は、以前の TLS バージョンに比べて、いくつかのセキュリティ機能の強化を提供します。

### 修正
<a name="es-8-remediation"></a>

TLS 暗号化を有効にするには、[https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_UpdateDomainConfig.html](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_UpdateDomainConfig.html) API オペレーションを使用して、[https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_DomainEndpointOptions.html](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_DomainEndpointOptions.html) を設定します。これにより、`TLSSecurityPolicy` が設定されます。

## [ES.9] Elasticsearch ドメインにはタグを付ける必要があります
<a name="es-9"></a>

**カテゴリ:** 識別 > インベントリ > タグ付け

**重要度:** 低

**リソースタイプ :** `AWS::Elasticsearch::Domain`

**AWS Config rule:** `tagged-elasticsearch-domain` (カスタム Security Hub CSPM ルール)

**スケジュールタイプ :** 変更がトリガーされた場合

**パラメータ :**


| パラメータ | 説明 | タイプ | 許可されているカスタム値 | Security Hub CSPM のデフォルト値 | 
| --- | --- | --- | --- | --- | 
|  requiredTagKeys  | 評価されたリソースに含める必要があるシステム以外のタグキーのリスト。タグキーでは大文字と小文字が区別されます。 | StringList (最大 6 項目)  | [AWS 要件を満たす](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 1～6 個のタグキー。 |  No default value  | 

このコントロールは、Elasticsearch ドメインにパラメータ `requiredTagKeys` で定義された特定のキーを持つタグがあるかどうかをチェックします。ドメインにタグキーがない場合、またはパラメータ `requiredTagKeys` で指定されたすべてのキーがない場合、コントロールは失敗します。パラメータ `requiredTagKeys` が指定されていない場合、コントロールはタグキーの存在のみをチェックし、ドメインにキーがタグ付けされていない場合は失敗します。自動的に適用され、`aws:` で始まるシステムタグは無視されます。

タグは、 AWS リソースに割り当てるラベルで、キーとオプションの値で構成されます。タグを作成して、リソースを目的、所有者、環境、またはその他の基準別に分類できます。タグは、リソースの識別、整理、検索、フィルタリングに役立ちます。タグ付けは、アクションと通知の説明責任のあるリソース所有者を追跡するのに役立ちます。タグ付けを使用する場合、タグに基づいてアクセス許可を定義する認証戦略として属性ベースのアクセス制御 (ABAC) を実装できます。タグは、IAM エンティティ (ユーザーまたはロール) および AWS リソースにアタッチできます。IAM プリンシパルに対して、単一の ABAC ポリシー、または個別のポリシーセットを作成できます。これらの ABAC ポリシーを、プリンシパルのタグがリソースタグと一致するときに操作を許可するように設計することができます。詳細については、*IAM ユーザーガイド*の[「ABAC とは AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html)」を参照してください。

**注記**  
タグには、個人を特定できる情報 (PII) や、機密情報あるいは秘匿性の高い情報は追加しないでください。タグには AWS のサービス、 を含む多くのユーザーがアクセスできます AWS Billing。タグ付けのベストプラクティスの詳細については、の[AWS 「リソースのタグ付け](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices)」を参照してください*AWS 全般のリファレンス*。

### 修正
<a name="es-9-remediation"></a>

Elasticsearch ドメインにタグを追加するには、「*Amazon OpenSearch Service デベロッパーガイド*」の「[タグの使用](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-awsresourcetagging.html#managedomains-awsresourcetagging-console)」を参照してください。