説明
ElasticsearchまたはOpenSearchドメインのEnforceHTTPSがfalseの場合、クライアントはHTTPでもアクセスできます。HTTPで送る検索要求、応答、認証情報が通信経路で漏えいする可能性があります。
想定される影響
- 通信経路にアクセスできる攻撃者が、平文の要求や応答を傍受・改ざんする可能性があります。
- TLSを必須とする組織のポリシーを満たせない場合があります。
対処方法
DomainEndpointOptions.EnforceHTTPSをtrueに設定してください。- サービスとクライアントが対応するTLSポリシーを選び、クライアントでHTTPSとサーバー証明書の検証を使用してください。
- 平文の要求が拒否されることを確認し、ノード間暗号化と保存時の暗号化も別途管理してください。
例
ドメインのエンドポイント設定の抜粋です。他の必須設定とアクセスポリシーは別途構成してください。
変更前
yaml
Resources:
OpenSearchDomain:
Type: AWS::OpenSearchService::Domain
Properties:
DomainEndpointOptions:
EnforceHTTPS: false
TLSSecurityPolicy: Policy-Min-TLS-1-2-2019-07
TLSポリシーはHTTPS接続に適用されますが、EnforceHTTPS: falseではHTTPアクセスは遮断されません。
変更後
yaml
Resources:
OpenSearchDomain:
Type: AWS::OpenSearchService::Domain
Properties:
DomainEndpointOptions:
EnforceHTTPS: true
TLSSecurityPolicy: Policy-Min-TLS-1-2-2019-07
ドメインのエンドポイントでHTTPSを必須にします。これだけで呼び出し元の権限を制限したり、保存データを暗号化したりすることはできません。