の Security Hub コントロール AWS KMS - AWS Security Hub

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

の Security Hub コントロール AWS KMS

これらの AWS Security Hub コントロールは、 AWS Key Management Service (AWS KMS) サービスとリソースを評価します。

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

〔KMS.1] IAMカスタマー管理ポリシーでは、すべてのKMSキーで復号アクションを許可しないでください

関連する要件: NIST.800-53.r5 AC-2, NIST.800-53.r5 AC-2(1)、 NIST.800-53.r5 AC-3, NIST.800-53.r5 AC-3(15)、 NIST.800-53.r5 AC-3(7) NIST.800-53.r5 AC-5、 NIST.800-53.r5 AC-6,、 NIST.800-53.r5 AC-6(3)

カテゴリ: 保護 > セキュアなアクセス管理

重要度:

リソースタイプ : AWS::IAM::Policy

AWS Config ルール : iam-customer-policy-blocked-kms-actions

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

パラメータ :

  • blockedActionsPatterns: kms:ReEncryptFrom, kms:Decrypt (カスタマイズ不可)

  • excludePermissionBoundaryPolicy: True (カスタマイズ不可)

IAM カスタマー管理ポリシーのデフォルトバージョンで、プリンシパルがすべてのリソースで復 AWS KMS 号アクションを使用できるかどうかをチェックします。ポリシーがすべてのKMSキーで kms:Decryptまたは kms:ReEncryptFromアクションを許可するのに十分なほど開いている場合、コントロールは失敗します。

コントロールは Resource 要素のKMSキーのみをチェックし、ポリシーの Condition 要素の条件は考慮しません。このコントロールは、添付済みのカスタマーマネージドポリシーと添付されていないカスタマーマネージドポリシーの両方を評価します。インラインポリシーや AWS 管理ポリシーはチェックされません。

を使用すると AWS KMS、KMSキーを使用できるユーザーを制御し、暗号化されたデータにアクセスできます。 IAMポリシーは、アイデンティティ (ユーザー、グループ、またはロール) がどのリソースに対してどのアクションを実行できるかを定義します。セキュリティのベストプラクティスに従って、 は最小特権を許可することを AWS 推奨しています。つまり、ID に付与するのは kms:Decrypt または kms:ReEncryptFrom 許可と、タスクの実行に必要なキーのみにする必要があります。そうでない場合、ユーザーはデータに適さないキーを使用する可能性があります。

すべてのキーに対する許可を付与する代わりに、ユーザーが暗号化されたデータにアクセスするために必要な最小限のキーのセットを決定します。次に、ユーザーがそれらのキーのみを使用できるようにするポリシーを設計します。例えば、すべてのKMSキーに対するkms:Decryptアクセス許可を許可しないでください。代わりに、アカウントの特定のリージョン内のキーのみに kms:Decrypt を許可します。最小特権のプリンシパルを採用することで、意図しないデータ開示のリスクを減らすことができます。

修正

IAM カスタマー管理ポリシーを変更するには、「 IAMユーザーガイド」の「カスタマー管理ポリシーの編集」を参照してください。ポリシーを編集するときは、 Resourceフィールドに、復号アクションを許可する特定のキーの Amazon リソースネーム (ARN) を指定します。

〔KMS.2] IAMプリンシパルには、すべてのKMSキーで復号アクションを許可するIAMインラインポリシーがあってはなりません

関連する要件: NIST.800-53.r5 AC-2, NIST.800-53.r5 AC-2(1)、 NIST.800-53.r5 AC-3, NIST.800-53.r5 AC-3(15)、 NIST.800-53.r5 AC-3(7) NIST.800-53.r5 AC-5、 NIST.800-53.r5 AC-6,、 NIST.800-53.r5 AC-6(3)

カテゴリ: 保護 > セキュアなアクセス管理

重要度:

リソースタイプ:

  • AWS::IAM::Group

  • AWS::IAM::Role

  • AWS::IAM::User

AWS Config ルール : iam-inline-policy-blocked-kms-actions

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

パラメータ :

  • blockedActionsPatterns: kms:ReEncryptFrom, kms:Decrypt (カスタマイズ不可)

このコントロールは、アイデンティティ (ロール、ユーザー、またはグループ) IAM に埋め込まれているインラインポリシーが、すべてのKMSキーに対する復 AWS KMS 号化および再暗号化アクションを許可しているかどうかをチェックします。ポリシーがすべてのKMSキーで kms:Decryptまたは kms:ReEncryptFromアクションを許可するのに十分なほど開いている場合、コントロールは失敗します。

コントロールは Resource 要素のKMSキーのみをチェックし、ポリシーの Condition 要素の条件は考慮しません。

を使用すると AWS KMS、KMSキーを使用できるユーザーを制御し、暗号化されたデータにアクセスできます。 IAMポリシーは、アイデンティティ (ユーザー、グループ、またはロール) がどのリソースに対してどのアクションを実行できるかを定義します。セキュリティのベストプラクティスに従って、 は最小特権を許可することを AWS 推奨しています。つまり、ID には必要な許可のみを、タスクの実行に必要なキーにのみ付与する必要があります。そうでない場合、ユーザーはデータに適さないキーを使用する可能性があります。

すべてのキーに対する許可を付与する代わりに、ユーザーが暗号化されたデータにアクセスするために必要なキーの最小セットを決定します。次に、ユーザーがそれらのキーのみを使用できるようにするポリシーを設計します。例えば、すべてのKMSキーに対するkms:Decryptアクセス許可を許可しないでください。代わりに、アカウントの特定リージョンでの特定のキーにのみ許可を付与してください。最小特権のプリンシパルを採用することで、意図しないデータ開示のリスクを減らすことができます。

修正

IAM インラインポリシーを変更するには、「 IAMユーザーガイド」の「インラインポリシーの編集」を参照してください。ポリシーを編集するときは、 Resourceフィールドに、復号アクションを許可する特定のキーの Amazon リソースネーム (ARN) を指定します。

〔KMS.3] 意図せずに削除 AWS KMS keys することはできません

関連する要件: NIST.800-53.r5 SC-12, NIST.800-53.r5 SC-12(2)

カテゴリ: 保護 > データ保護 > データ削除保護

重要度: 非常事態

リソースタイプ : AWS::KMS::Key

AWS Config ルール: kms-cmk-not-scheduled-for-deletion-2 (カスタム Security Hub ルール)

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

パラメータ : なし

このコントロールは、KMSキーの削除がスケジュールされているかどうかを確認します。KMS キーの削除がスケジュールされている場合、コントロールは失敗します。

KMS キーは一度削除すると復元できません。KMS キーで暗号化されたデータも、KMSキーが削除されると完全に回復できなくなります。削除が予定されているKMSキーで意味のあるデータが暗号化されている場合は、意図的に暗号化消去を実行している場合を除き、データを復号するか、新しいKMSキーでデータを再暗号化することを検討してください。

KMS キーの削除がスケジュールされている場合、必須の待機期間が強制され、エラーでスケジュールされている場合に削除を元に戻す時間を確保できます。デフォルトの待機期間は 30 日ですが、KMSキーの削除がスケジュールされている場合、最短で 7 日に短縮できます。待機期間中は、スケジュールされた削除をキャンセルでき、KMSキーは削除されません。

KMS キーの削除の詳細については、「 AWS Key Management Service デベロッパーガイド」のKMS「キーの削除」を参照してください。

修正

スケジュールされたKMSキーの削除をキャンセルするには、「 デベロッパーガイド」の「キーの削除のスケジュールとキャンセル (コンソール)」を参照してください。 https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys-scheduling-key-deletion.html#deleting-keys-scheduling-key-deletion-console AWS Key Management Service

〔KMS.4] AWS KMS キーローテーションを有効にする必要があります

関連する要件: CIS AWS Foundations Benchmark v3.0.0/3.6、 CIS AWS Foundations Benchmark v1.4.0/3.8、 CIS AWS Foundations Benchmark v1.2.0/2.8, NIST.800-53.r5 SC-12, NIST.800-53.r5 SC-12(2)、 NIST.800-53.r5 SC-28(3)、PCIDSSv3.2.1/3.6.4、PCIDSSv4.0.1/3.7.4

カテゴリ: 保護 > データ保護 > の暗号化 data-at-rest

重要度:

リソースタイプ : AWS::KMS::Key

AWS Config ルール : cmk-backing-key-rotation-enabled

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

パラメータ : なし

AWS KMS を使用すると、お客様はバッキングキーをローテーションできます。バッキングキーは、 に保存されているキーマテリアル AWS KMS であり、KMSキーのキー ID に関連付けられています。バッキングキーは、暗号化や復号化などの暗号化オペレーションを実行するために使用されます。現在、キーの自動ローテーションでは以前のすべてのバッキングキーが保持されるため、暗号化したデータは透過的に復号化できます。

CIS では、KMSキーローテーションを有効にすることをお勧めします。新しいキーで暗号化されたデータは、漏洩した可能性がある以前のキーではアクセスできないため、暗号化キーをローテーションすることで、漏洩したキーにより起こる可能性のある被害を減らすことができます。

修正

KMS キーローテーションを有効にするには、「 AWS Key Management Service デベロッパーガイド」の「自動キーローテーションを有効または無効にする方法」を参照してください。

〔KMS.5] KMSキーはパブリックにアクセスできません

カテゴリ: 保護 > セキュアなネットワーク設定 > パブリックアクセス不可のリソース

重要度: 非常事態

リソースタイプ : AWS::KMS::Key

AWS Config ルール : kms-key-policy-no-public-access

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

パラメータ : なし

このコントロールは、 AWS KMS キーがパブリックにアクセス可能かどうかをチェックします。KMS キーがパブリックにアクセス可能な場合、コントロールは失敗します。

最小特権アクセスの実装は、セキュリティリスクおよびエラーの影響や悪意ある行動を減らす上での基礎となります。KMS キーポリシーで外部アカウントからのアクセスが許可されている場合、サードパーティーは のキーを使用してデータを暗号化および復号でき AWS アカウント 、内部者の脅威または攻撃者によってキーを使用するすべてのサービスがデータ漏えいする可能性があります。

修正

KMS キーポリシーを更新するには、「 AWS Key Management Service デベロッパーガイド」の「 のキーポリシー AWS KMS」を参照してください。