知見の修正

このドキュメントでは、レポートの検出結果を修復する方法について説明します。

レポートは、Security Command Center の集計結果と Cloud Asset Inventory のインベントリ データを組み合わせて、組織全体のリスクの集計ビューを提供します。これらのレポートは、CIS Google Cloud Computing Foundations Benchmark v1.2.0 に準拠しています。このフレームワークの詳細については、CIS ベンチマークをご覧ください。

ベスト プラクティスとして、Cyber Insurance Hub レポートに示されているように、影響が最も大きい検出結果から修復を開始します。

始める前に

レポートを作成する

CIS ベンチマークの検出結果を修正する

Cyber Insurance Hub は、Security Command Center のプレミアム ティアとエンタープライズ ティアと統合され、CIS Benchmark の検出結果の修復プロセスを簡素化します。Security Command Center のスタンダード ティアをご利用のお客様は、Security Command Center を使用して、 Google Cloud リソースの個々の CIS Benchmark の検出結果をすべて検査して修復することはできません。フルサポートを受けるには、Premium ティアまたは Enterprise ティアにアップグレードしてください。各 Security Command Center ティアを有効にする方法の詳細については、有効化の概要をご覧ください。

Security Command Center Premium ティアまたは Enterprise ティアで CIS ベンチマークの検出結果を修復する

Security Command Center を使用して個々の検出結果を検査し、修正する手順は次のとおりです。

  1. レポートの CIS ベンチマーク トピックの表で、CIS ベンチマーク トピックを開き、そのトピックの CIS ベンチマークを表示します。

  2. CIS ベンチマークの表の行で、検出結果の数値をクリックします。

    Security Command Center にリンクして、その CIS ベンチマークに関連するアクティブな検出結果を表示します。

  3. Security Command Center の検出結果のテーブルで、修復する検出結果のカテゴリをクリックします。

    検出結果を修復する方法に関する情報が表示されたペインが開きます。

Security Command Center Standard ティアで CIS ベンチマークを修復する

サイバー保険ハブのレポートには、組織全体で特定された CIS ベンチマークのトピックの表が示されますが、Security Command Center のスタンダード ティアでは、Security Command Center の関連する検出結果に直接ピボットすることはできません。

一般的な CIS ベンチマークを修正する手順を表示する手順は次のとおりです。

  1. レポートの CIS ベンチマーク トピックの表で、CIS ベンチマーク トピックを開き、そのトピックの CIS ベンチマークを表示します。

  2. CIS ベンチマークの表の行で、CIS ベンチマークの説明をクリックします。

    これは、その CIS ベンチマークの一般的な修正手順へのリンクです。

次の手順に沿って、Cyber Insurance Hub でサポートされている CIS ベンチマークの検出結果を修復することもできます。

Identity and Access Management
1.1 会社のログイン認証情報を使用していることを確認する
1.2 サービス以外のアカウントすべてに対して多要素認証が有効になっていることを確認する
1.4 各サービス アカウントに対して、GCP が管理するサービス アカウント キーのみが設定されていることを確認する
1.5 サービス アカウントに管理者権限がないことを確認する
1.6 プロジェクト レベルで IAM ユーザーに、サービス アカウント ユーザーのロールまたはサービス アカウント トークン作成者のロールが割り当てられていないことを確認する
1.7 サービス アカウントのユーザー管理/外部キーが 90 日以内のサイクルでローテーションされることを確認する
1.8 サービス アカウント関連のロールをユーザーに割り当てる際に、職掌分散が適用されることを確認する
1.9 Cloud KMS Cryptokey への匿名アクセスまたは公開アクセスが不可能なことを確認する
1.10 KMS 暗号鍵が 90 日以内にローテーションされることを確認する
1.11 KMS 関連のロールをユーザーに割り当てる際に、職掌分散が適用されることを確認する
1.12 プロジェクトに API キーが作成されないことを確認する
1.13 指定したホストとアプリでのみ API キーを使用できることを確認する
1.14 API キーが、アプリケーションによるアクセスが必要な API のみに制限されていることを確認する
1.15 API キーが 90 日ごとにローテーションされることを確認する
ロギングとモニタリング
2.1 プロジェクトのすべてのサービスとすべてのユーザーに対して、Cloud Audit Logging が正しく構成されていることを確認する
2.2 すべてのログエントリにシンクが構成されていることを確認する
2.3 バケットロックを使用してログバケットの保持ポリシーが構成されていることを確認する
2.4 プロジェクトの所有権の割り当てと変更に関するログ指標フィルタとアラートがあることを確認する
2.5 監査構成の変更に関するログ指標フィルタとアラートが存在することを確認する
2.6 カスタムロールの変更に関するログ指標フィルタとアラートが存在することを確認する
2.7 VPC ネットワーク ファイアウォール ルールの変更に関するログ指標フィルタとアラートがあることを確認する
2.8 VPC ネットワーク ルートの変更に関するログ指標フィルタとアラートが存在することを確認する
2.9 VPC ネットワークの変更に関するログ指標フィルタとアラートが存在することを確認する
2.10 Cloud Storage IAM 権限の変更に関するログ指標フィルタとアラートが存在することを確認する
2.11 SQL インスタンス構成の変更に関するログ指標フィルタとアラートが存在することを確認する
2.12 すべての VPC ネットワークで Cloud DNS ロギングが有効になっていることを確認する
ネットワーキング
3.1 プロジェクトにデフォルト ネットワークが存在しないことを確認する
3.2 プロジェクトにレガシー ネットワークが存在しないことを確認する
3.3 Cloud DNS で DNSSEC が有効になっていることを確認する
3.4 Cloud DNS DNSSEC で鍵署名鍵に RSASHA1 が使用されないことを確認する
3.5 Cloud DNS DNSSEC でゾーン署名鍵に RSASHA1 が使用されていないことを確認する
3.6 インターネットからの SSH アクセスが制限されていることを確認する
3.7 インターネットからの RDP アクセスが制限されていることを確認する
3.8 VPC ネットワーク内のすべてのサブネットで VPC Flow Logs が有効になっていることを確認する
3.9 HTTPS / SSL プロキシ ロードバランサが、脆弱な暗号スイートを使用する SSL ポリシーを許可しないことを確認する
仮想マシン
4.1 デフォルトのサービス アカウントを使用するようにインスタンスが構成されていないことを確認する
4.2 すべての Cloud API に対する完全アクセス権を持つデフォルトのサービス アカウントを使用するようにインスタンスが構成されていないことを確認する
4.3 VM インスタンスで [プロジェクト全体の SSH 認証鍵をブロック] が有効になっていることを確認する
4.4 プロジェクトの oslogin が有効になっていることを確認する
4.5 VM インスタンスで [シリアルポート接続を有効化] が有効になっていないことを確認する
4.6 インスタンスで IP 転送が有効になっていないことを確認する
4.7 重要な VM の VM ディスクが顧客指定の暗号鍵(CSEK)で暗号化されていることを確認する
4.8 Compute インスタンスが Shielded VM を有効にして起動されたことを確認する
4.9 Compute インスタンスにパブリック IP アドレスが割り当てられていないことを確認する
4.11 Compute インスタンスで Confidential Computing が有効になっていることを確認する
ストレージ
5.1 Cloud Storage バケットへの匿名アクセスや公開アクセスが不可能なことを確認する
5.2 Cloud Storage バケットで、バケットレベルの均一なアクセスが有効になっていることを確認する
Cloud SQL データベース サービス
6.1.1 MySQL データベース インスタンスで、管理者権限による接続が許可されないことを確認する
6.1.2 Cloud SQL MySQL インスタンスの「skip_show_database」データベース フラグが「on」に設定されていることを確認する
6.1.3 Cloud SQL MySQL インスタンスの「local_infile」データベース フラグが「off」に設定されていることを確認する
6.2.1 Cloud SQL PostgreSQL インスタンスの「log_checkpoints」データベース フラグが「on」に設定されていることを確認する
6.2.2 Cloud SQL PostgreSQL インスタンスの「log_error_verbosity」データベース フラグが「DEFAULT」かそれよりも厳格に設定されていることを確認する
6.2.3 Cloud SQL PostgreSQL インスタンスの「log_connections」データベース フラグが「on」に設定されていることを確認する
6.2.4 Cloud SQL PostgreSQL インスタンスの「log_disconnections」データベース フラグが「on」に設定されていることを確認する
6.2.5 Cloud SQL PostgreSQL インスタンスの「log_duration」データベース フラグが「on」に設定されていることを確認する
6.2.6 Cloud SQL PostgreSQL インスタンスの「log_lock_waits」データベース フラグが「on」に設定されていることを確認する
6.2.7 Cloud SQL PostgreSQL インスタンスの「log_statement」データベース フラグが適切に設定されていることを確認する
6.2.8 Cloud SQL PostgreSQL インスタンスの「log_hostname」データベース フラグが適切に設定されていることを確認する
6.2.9 Cloud SQL PostgreSQL インスタンスの「log_parser_stats」データベース フラグが「off」に設定されていることを確認する
6.2.10 Cloud SQL PostgreSQL インスタンスの「log_planner_stats」データベース フラグが「off」に設定されていることを確認する
6.2.11 Cloud SQL PostgreSQL インスタンスの「log_executor_stats」データベース フラグが「off」に設定されていることを確認する
6.2.12 Cloud SQL PostgreSQL インスタンスの「log_statement_stats」データベース フラグが「off」に設定されていることを確認する
6.2.13 Cloud SQL PostgreSQL インスタンスの「log_min_messages」データベース フラグが適切に設定されていることを確認する
6.2.14 Cloud SQL PostgreSQL インスタンスの「log_min_error_statement」データベース フラグが「Error」かそれよりも厳格に設定されていることを確認する
6.2.15 Cloud SQL PostgreSQL インスタンスの「log_temp_files」データベース フラグが「0」に設定されていることを確認する
6.2.16 Cloud SQL PostgreSQL インスタンスの「log_min_duration_statement」データベース フラグが「-1」に設定されていることを確認する
6.3.1 Cloud SQL for SQL Server インスタンスの「external scripts enabled」データベース フラグが「off」に設定されていることを確認する
6.3.2 Cloud SQL for SQL Server インスタンスの「cross db ownership chaining」データベース フラグが「off」に設定されていることを確認する
6.3.3 Cloud SQL for SQL Server インスタンスの「user connections」データベース フラグが適切に設定されていることを確認する
6.3.4 Cloud SQL for SQL Server インスタンスの「user options」データベース フラグが構成されていないことを確認する
6.3.5 Cloud SQL for SQL Server インスタンスの「remote access」データベース フラグが「off」に設定されていることを確認する
6.3.6 Cloud SQL for SQL Server インスタンスの「3625(トレースフラグ)」データベース フラグが「off」に設定されていることを確認する
6.3.7 SQL Server インスタンス上の Cloud SQL の「contained database authentication」データベース フラグが「off」に設定されていることを確認する
6.4 Cloud SQL データベース インスタンスのすべての受信接続で SSL の使用が必須であることを確認する
6.5 Cloud SQL データベース インスタンスが一般公開されていないことを確認する
6.6 Cloud SQL データベース インスタンスにパブリック IP がないことを確認する
6.7 Cloud SQL データベース インスタンスが自動バックアップを使用して構成されていることを確認する
BigQuery
7.1 BigQuery データセットが匿名でないこと、または一般公開されていないことを確認する
7.2 すべての BigQuery テーブルが顧客管理の暗号鍵(CMEK)で暗号化されていることを確認する
7.3 すべての BigQuery データセットに対してデフォルトの顧客管理の暗号鍵(CMEK)が指定されていることを確認する

次のステップ