インフラストラクチャのガイドライン

最小限の実行可能なセキュリティ プラットフォームに関する次のガイドラインは、インフラストラクチャの柱に沿ったものです。

ベーシック レベルのガイドライン

まず、次のインフラストラクチャのガイドラインを実装します。

項目

VM シリアルポート アクセスを無効にする

説明

compute.disableSerialPortAccess 組織のポリシーの制約を設定して、シリアルポート アクセスを無効にします。Compute Engine VM でシリアルポート アクセスを無効にすると、ファイアウォール ルールやその他のネットワーク セキュリティ制御をバイパスするアクセス チャネルを排除できます。インタラクティブ シリアル コンソールは主に緊急時のトラブルシューティングを目的としていますが、有効にしたままにしておくと、攻撃者の標的となる永続的なバックドアが作成される可能性があります。

シリアルポート アクセスを無効にすると、すべての管理アクセスが SSH などの標準の監査済みパスウェイを介して強制的に行われるため、多層防御のセキュリティ体制が強化されます。このパスウェイは、Identity and Access Management(IAM)と Identity-Aware Proxy(IAP)を有効にすることで保護できます。

関連情報
アイテム ID MVSP-CO-1.24
マッピング

関連する NIST-800-53 コントロール:

  • AC-3

関連する CRI プロファイル コントロール:

  • PR.AC-3.1
項目

IPv6 を無効にする(必要な場合を除く)

説明

特に必要な場合を除き、IPv6 外部サブネットの作成を無効にします。攻撃対象領域を減らすには、アクティブに管理されていないシステムやネットワークで IPv6 を無効にすることを検討してください。多くの組織では、IPv4 のセキュリティ管理とモニタリングが成熟していますが、ツールとポリシーが IPv6 に完全に拡張されていない可能性があります。これにより、脅威に対する大きな盲点が生じる可能性があります。デュアルスタック ネットワークの実行は、運用上の複雑さも生み出します。効果的に管理し、トラブルシューティングを行うには、特定の構成と専門知識が必要です。したがって、IPv6 の明確なビジネス ドライバがない場合は、IPv6 を無効にすることで環境を簡素化し、確立された IPv4 セキュリティ体制で一貫してすべてのトラフィックをフィルタリングできます。

関連情報
アイテム ID MVSP-CO-1.25
マッピング

関連する NIST-800-53 コントロール:

  • CM-7

関連する CRI プロファイル コントロール:

  • PR.PT-3.1

コンプライアンス マネージャーのコントロール:

項目

Shielded VM 機能を有効にする

説明

インスタンスの Shielded VM の仮想トラステッド プラットフォーム モジュール(vTPM)と整合性モニタリング属性を有効にします。vTPM と整合性モニタリング属性は、デフォルトの VM インスタンス作成プロセスの一部です。Shielded VM の vTPM と整合性モニタリングの属性を使用して、VM が信頼できる変更されていないコードでのみ起動するようにします。

vTPM は、UEFI ファームウェアからカーネル ドライバまでのブート シーケンス全体の暗号測定値を生成して保存する安全な仮想暗号プロセッサを提供します。整合性モニタリングは、VM の初回作成時に確立された既知の適切なベースラインと、これらのランタイム測定値を継続的に比較します。

これらの機能は、検証可能な信頼の連鎖を提供し、ブートキットやルートキットなどの悪意のある変更を検出すると、自動的にアラートを送信したり、対策を講じたりします。Shielded VM の機能は、インスタンスの起動時からワークロードの整合性を維持するのに役立ちます。

関連情報
アイテム ID MVSP-CO-1.28
マッピング

関連する NIST-800-53 コントロール:

  • SI-7

関連する CRI プロファイル コントロール:

  • PR.DS-6.1

コンプライアンス マネージャーのコントロール:

項目

GKE Autopilot を使用する

説明

Google Kubernetes Engine(GKE)Autopilot クラスタを使用します。Autopilot クラスタは、コンテナまたは GKE の多くのセキュリティのベスト プラクティスがデフォルトで有効になっている、堅牢なセキュリティ対策を提供します。

関連情報
アイテム ID MVSP-CO-1.29
マッピング

関連する NIST-800-53 コントロール:

  • CM-2

関連する CRI プロファイル コントロール:

  • PR.IP-1.1
項目

GKE クラスタとノードに最小権限のアカウントを使用する

説明

Google Kubernetes Engine(GKE)クラスタとノードに最小権限の Identity and Access Management(IAM)サービス アカウントを使用します。GKE コントロール プレーンへのアクセスが単一の DNS ベースのエンドポイントに制限されている。最小権限を実装すると、追加のファイアウォール ルールや踏み台ホストを必要とせずに、攻撃対象領域を大幅に削減できます。

関連情報
アイテム ID MVSP-CO-1.30
マッピング

関連する NIST-800-53 コントロール:

  • AC-6

関連する CRI プロファイル コントロール:

  • PR.AC-4.1

コンプライアンス マネージャーのコントロール:

項目

コントロール プレーンへのアクセスを制限する

説明

DNS ベースのエンドポイントを使用して、コントロール プレーンへのネットワーク アクセスを制限します。コントロール プレーンは Kubernetes クラスタの管理センターであり、インターネットに公開すると攻撃者の標的になりやすくなります。この設定により、コントロール プレーンが非公開になり、インターネットから削除されます。

コントロール プレーンへのアクセスを制限すると、組織のプライベート ネットワーク内の信頼できるデバイスのみがクラスタを管理できるようになり、外部攻撃のリスクが大幅に軽減されます。

関連情報
アイテム ID MVSP-CO-1.31
マッピング

関連する NIST-800-53 コントロール:

  • SC-7

関連する CRI プロファイル コントロール:

  • PR.AC-3.1
項目

Container-Optimized OS を使用する

説明

Container-Optimized OS を使用して、強化されたマネージド コンテナ OS を実装します。汎用オペレーティング システムには、コンテナの実行に不要なプログラムが多数含まれているため、攻撃者にとって不要なターゲットが大きくなります。Container-Optimized OS は、必要なものだけを含む最小限のロックダウンされたオペレーティング システムであり、攻撃対象領域を大幅に削減します。マネージド OS である Container-Optimized OS には、Google によって自動的に適用されるセキュリティ パッチも用意されています。これにより、重大な脆弱性が修正され、運用ワークロードが軽減されます。

関連情報
アイテム ID MVSP-CO-1.41
マッピング

関連する NIST-800-53 コントロール:

  • CM-7

関連する CRI プロファイル コントロール:

  • PR.PT-3.1

コンプライアンス マネージャーのコントロール:

中級レベルのガイドライン

基本的なガイドラインを実装したら、次のインフラストラクチャのガイドラインを実装します。

項目

VM に OS Login を適用する

説明

デベロッパーが SSH を使用して Compute Engine リソースにアクセスできるようにする場合は、2 段階認証プロセスを使用した OS Login を構成します。OS Login を使用して、compute.requireOsLogin 組織のポリシー制約を設定し、Identity and Access Management(IAM)ポリシーで SSH 認証鍵を管理します。OS Login は、SSH 権限をユーザーの Google ID と IAM ロールに関連付けることで VM アクセスを一元化し、各マシンで個々の SSH 認証鍵を管理する必要をなくします。

SSH 権限をユーザーの ID に関連付けることは、セキュリティにとって非常に重要です。ユーザーの IAM ロールを削除すると、すべてのインスタンスに対するアクセス権が直ちに取り消され、古いアカウントからの不正な侵入を防ぐことができます。このシステムは、鍵の管理を簡素化して鍵の増加を防ぎ、Cloud Audit Logs のすべてのログイン イベントに対して明確で一元化された監査証跡を提供します。OS Login では、2 要素認証を適用することもできます。これにより、盗まれた SSH 認証鍵と認証情報に対する重要な保護レイヤを追加できます。侵害された OAuth トークンを持つが、パスワードまたはセキュリティ キーがない攻撃者は、この機能によってブロックされます。

関連情報
アイテム ID MVSP-CO-1.26
マッピング

関連する NIST-800-53 コントロール:

  • AC-2

関連する CRI プロファイル コントロール:

  • PR.AC-1.1

コンプライアンス マネージャーのコントロール:

項目

VM の外部 IP アドレスを制限する

説明

必要がない限り、パブリック IP アドレスを持つ Compute Engine インスタンスの作成を禁止します。compute.vmExternalIpAccess リスト型制約により、外部 IP アドレスを持つことができる一連の Compute Engine VM インスタンスを定義します。

Compute Engine インスタンスに外部 IP アドレスが割り当てられないようにして、インターネットへの露出を大幅に減らします。外部 IP アドレスを持つインスタンスはすぐに検出され、自動スキャン、ブルート フォース攻撃、脆弱性の悪用を試みる攻撃の直接的な標的になります。代わりに、インスタンスでプライベート IP アドレスを使用するように要求し、Identity-Aware Proxy(IAP)トンネルや踏み台ホストなどの制御、認証、ロギングされたパスウェイを介してアクセスを管理します。

このデフォルトで拒否する姿勢を採用することは、攻撃対象領域を最小限に抑え、ネットワークに対するゼロトラスト アプローチを適用するのに役立つ基本的なセキュリティのベスト プラクティスです。この制約は遡及的ではありません。

関連情報
アイテム ID MVSP-CO-1.27
マッピング

関連する NIST-800-53 コントロール:

  • SC-7
  • SC-8

関連する CRI プロファイル コントロール:

  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4

コンプライアンス マネージャーのコントロール:

項目

Workload Identity Federation for GKE を使用する

説明

Workload Identity Federation for GKE を使用して、Google Kubernetes Engine(GKE)ワークロードから Google Cloud API に対する認証を行います。Workload Identity Federation for GKE は、サービス アカウント キーよりも Google Cloud API を呼び出すための ID を取得する、よりシンプルで安全な方法を提供します。

関連情報
アイテム ID MVSP-CO-1.32
マッピング

関連する NIST-800-53 コントロール:

  • IA-2

関連する CRI プロファイル コントロール:

  • PR.AC-1.1

コンプライアンス マネージャーのコントロール:

項目

限定公開 GKE ノードを使用する

説明

インターネットへの露出を減らすために、プライベート ノードを作成します。限定公開 Google Kubernetes Engine(GKE)ノードは、GKE ノードにパブリック IP アドレスがないようにすることで、インターネットへの露出を減らします。

関連情報
アイテム ID MVSP-CO-1.33
マッピング

関連する NIST-800-53 コントロール:

  • SC-7

関連する CRI プロファイル コントロール:

  • PR.AC-3.1

コンプライアンス マネージャーのコントロール:

項目

RBAC 向け Google グループを使用する

説明

ロールベース アクセス制御(RBAC)に Google グループを使用します。これにより、既存のユーザー アカウント管理プラクティスと連携することもできます。たとえば、社員が退職したときに、そのユーザーのアクセス権を取り消すことができます。RBAC 用 Google グループは、Identity and Access Management(IAM)と Google グループを使用してクラスタ アクセスを効率的に管理するのに役立ちます。これは、Google グループを使用するほとんどの組織に適しています。

関連情報
アイテム ID MVSP-CO-1.34
マッピング

関連する NIST-800-53 コントロール:

  • AC-2

関連する CRI プロファイル コントロール:

  • PR.AC-1.1

コンプライアンス マネージャーのコントロール:

上級レベルのガイドライン

中級ガイドラインを実装したら、次のインフラストラクチャ ガイドラインを実装します。

項目

GKE Sandbox を有効にする

説明

GKE Sandbox を使用してセキュリティを強化し、信頼できないコードが Google Kubernetes Engine(GKE)クラスタノードのホストカーネルに影響を与えないようにします。GKE Sandbox は、信頼できないワークロードや機密性の高いワークロードのワークロード分離を強化し、コンテナ エスケープ攻撃に対する保護レイヤを追加します。

関連情報
アイテム ID MVSP-CO-1.35
マッピング

関連する NIST-800-53 コントロール:

  • SC-39

関連する CRI プロファイル コントロール:

  • PR.DS-1.1

コンプライアンス マネージャーのコントロール:

項目

Binary Authorization を適用する

説明

Binary Authorization を使用して、信頼できるイメージが Google Kubernetes Engine(GKE)にデプロイされるようにします。Binary Authorization を使用すると、検証済みの信頼できるコンテナ イメージのみをクラスタにデプロイできるため、ソフトウェア サプライ チェーンのセキュリティが強化されます。

関連情報
アイテム ID MVSP-CO-1.36
マッピング

関連する NIST-800-53 コントロール:

  • SI-7

関連する CRI プロファイル コントロール:

  • PR.DS-6.1

コンプライアンス マネージャーのコントロール:

項目

Confidential Google Kubernetes Engine ノードを使用する

説明

Confidential GKE Node を使用して、ノードとワークロードで使用中のデータの暗号化を強制適用します。Confidential GKE Node は、Confidential Computing を使用して使用中のデータを暗号化することで、機密性の高いワークロードの保護に役立ちます。

関連情報
アイテム ID MVSP-CO-1.37
マッピング

関連する NIST-800-53 コントロール:

  • SC-28

関連する CRI プロファイル コントロール:

  • PR.DS-1.1
項目

GKE でカスタム認証局を実行する

説明

独自の認証局を実行して、Google Kubernetes Engine(GKE)内の鍵を管理します。独自の認証局を使用すると、暗号オペレーションをより詳細に制御できます。この機能へのアクセス権をリクエストするには、 Google Cloud アカウント チームにお問い合わせください。

関連情報
アイテム ID MVSP-CO-1.38
マッピング

関連する NIST-800-53 コントロール:

  • SC-12

関連する CRI プロファイル コントロール:

  • PR.DS-1.1
項目

Cloud KMS を使用して Kubernetes Secret を暗号化する

説明

Cloud Key Management Service(Cloud KMS)で管理されている鍵を使用して、保存時の Kubernetes Secret を暗号化します。Cloud KMS では、所有および管理する鍵を使用して Kubernetes Secret を暗号化できるため、etcd データにセキュリティ レイヤを追加できます。

関連情報
アイテム ID MVSP-CO-1.39
マッピング

関連する NIST-800-53 コントロール:

  • SC-28

関連する CRI プロファイル コントロール:

  • PR.DS-1.1

コンプライアンス マネージャーのコントロール:

項目

ノード ブートディスクに CMEK を使用する

説明

ノード ブートディスクの暗号化に顧客管理の暗号鍵(CMEK)を使用します。CMEK を使用すると、ユーザーが所有および管理する鍵を使用して Kubernetes ノードのブートディスクを暗号化できます。

関連情報
アイテム ID MVSP-CO-1.40
マッピング

関連する NIST-800-53 コントロール:

  • SC-28

関連する CRI プロファイル コントロール:

  • PR.DS-1.1

コンプライアンス マネージャーのコントロール:

次のステップ