このページでは、Security Command Center で利用可能な Google Cloud のセキュリティ ソースのリストを示します。セキュリティ ソースを有効にすると、Security Command Center に脆弱性と脅威の検出結果が表示されます。
Google Cloud コンソールで検出結果を表示して、検出タイプ、リソースタイプ、特定のアセットのフィルタリングなど、さまざまな方法でフィルタリングできます。セキュリティ ソースによって、検出結果の整理に役立つフィルタが追加されることがあります。
Security Command Center の IAM ロールは、組織レベル、フォルダレベル、またはプロジェクト レベルで付与できます。検出結果、アセット、セキュリティ ソースを表示、編集、作成、更新する権限は、アクセス権が付与されているレベルによって異なります。Security Command Center のロールの詳細については、アクセス制御をご覧ください。
脆弱性
脆弱性の検出機能は、Google Cloud リソースに存在する潜在的な弱点の特定に役立ちます。
GKE セキュリティ対策ダッシュボード
GKE セキュリティ対策ダッシュボードは、GKE クラスタの潜在的なセキュリティ問題に関する対応可能な検出結果を独自に提供する Google Cloud コンソールのページです。
次のいずれかの GKE セキュリティ対策ダッシュボード機能を有効にすると、Security Command Center のスタンダード ティアまたはプレミアム ティアに検出結果が表示されます。
GKE セキュリティ対策ダッシュボード機能 | Security Command Center の検出結果のタイプ |
---|---|
ワークロード構成の監査 | MISCONFIGURATION |
VULNERABILITY |
検出結果には、セキュリティ問題に関する情報と、ワークロードやクラスタの問題を解決するための推奨事項が表示されます。
Google Cloud コンソールで GKE セキュリティ対策ダッシュボードの検出結果を確認する
Google Cloud Console で Security Command Center の [検出] ページに移動します。
Google Cloud プロジェクトまたは組織を選択します。
[クイック フィルタ] ペインの [ソースの表示名] セクションで、[GKE セキュリティ対策] を選択します。[GKE セキュリティ対策] フィルタが表示されない場合、有効な検出結果はありません。
IAM Recommender
IAM Recommender は、プリンシパルに不要な IAM ロールがロールに含まれている場合に、プリンシパルから IAM ロールを削除または置換することで、セキュリティを強化するための推奨事項を提供します。
IAM Recommender の検出結果を有効または無効にする
Security Command Center で IAM Recommender の検出結果を有効または無効にする手順は次のとおりです。
Google Cloud コンソールで Security Command Center の [設定] ページに移動し、[統合サービス] タブに移動します。
必要に応じて、「IAM Recommender」までスクロールします。
入力項目の右側で、[有効にする] または [無効にする] を選択します。
IAM Recommender の検出結果は脆弱性に分類されます。
IAM Recommender の検出結果を修正するには、次のセクションを開いて、IAM Recommender の検出結果のテーブルを表示します。テーブルのエントリには、各検出結果の修正手順が含まれています。
コンソールで IAM Recommender の検出結果を表示する
Google Cloud コンソールでは、IAM Recommender によって発行された検出結果は、IAM Recommender のクエリのプリセットを選択して脆弱性ページに表示するか、クイック フィルタパネルのソースの表示名セクションで IAM Recommender を選択して検出結果ページに表示できます。
Mandiant Attack Surface Management
Mandiant は、最前線の脅威インテリジェンスの世界的リーダーです。Mandiant Attack Surface Management は、外部攻撃対象領域の脆弱性と構成ミスを特定し、最新のサイバー攻撃に関する最新情報の入手に役立ちます。
Security Command Center のエンタープライズ ティアを有効にすると、Mandiant Attack Surface Management が自動的に有効になります。また、Google Cloud コンソールで検出結果を確認できます。
Google Cloud コンソールで Mandiant Attack Surface Management の検出結果を確認する
Google Cloud コンソールで検出結果を確認するには、次の操作を行います。
Google Cloud コンソールで Security Command Center の [検出結果] ページに移動します。
Google Cloud プロジェクトまたは組織を選択します。
[クイック フィルタ] セクションの [ソースの表示名] サブセクションで、[Mandiant Attack Surface Management] を選択します。
Mandiant Attack Surface Management の検出結果がテーブルに入力されます。
特定の検出結果の詳細を表示するには、[カテゴリ] の下にある検出結果の名前をクリックします。検出結果の詳細パネルが開き、[概要] タブが表示されます。
[概要] タブで、検出された内容、影響を受けたリソースなど、検出結果に関する情報を確認します。
Policy Controller
Policy Controller では、Kubernetes クラスタにプログラム可能なポリシーを適用し、利用できます。ポリシーはガードレールとして機能し、クラスタとフリートのベスト プラクティス、セキュリティ、コンプライアンス管理に役立ちます。
Policy Controller をインストールし、CIS Kubernetes Benchmark v1.5.1 または PCI-DSS v3.2.1 Policy Controller バンドル、あるいはその両方を有効にすると、Policy Controller が Misconfiguration
クラスの検出として自動的にクラスタ違反を Security Command Center に書き込みます。Security Command Center の検出結果の説明と次のステップは、対応する Policy Controller バンドルの制約の説明や修正手順と同じです。
Policy Controller の検出結果は、次の Policy Controller バンドルから取得されます。
- CIS Kubernetes Benchmark v.1.5.1。強固なセキュリティ体制をサポートするように Kubernetes を構成するための一連の推奨事項。このバンドルに関する情報は、
cis-k8s-v1.5.1
の GitHub リポジトリで確認することもできます。 - PCI-DSS v3.2.1。Payment Card Industry Data Security Standard(PCI-DSS)v3.2.1 の一部に対してクラスタ リソースのコンプライアンスを評価するバンドルです。このバンドルに関する情報は、
pci-dss-v3
の GitHub リポジトリで確認することもできます。
Policy Controller の検出結果を確認して修正するには、Policy Controller の検出結果の修正をご覧ください。
Rapid Vulnerability Detection
Rapid Vulnerability Detection は、いわゆる「N 日間」の脆弱性を検出するマネージド スキャンを実行します。この既知の脆弱性は、データへの任意のアクセスやリモートコード実行を許します。脆弱な認証情報、不完全なソフトウェア インストール、公開された管理者ユーザー インターフェースなどを含みます。
Rapid Vulnerability Detection が検出する脆弱性の完全な一覧については、Rapid Vulnerability Detection の検出結果と修正をご覧ください。
Security Health Analytics
Security Health Analytics は Security Command Center の組み込みの検出サービスで、クラウド リソースのマネージド スキャンを行い、一般的な構成ミスを検出します。
構成ミスが検出されると、Security Health Analytics は検出結果を発行します。Security Health Analytics の検出結果のほとんどは、セキュリティ標準管理にマッピングされるため、コンプライアンスを評価できます。
Security Health Analytics は、Google Cloud 上のリソースをスキャンします。Enterprise ティアを使用していて、他のクラウド プラットフォームへの接続を確立している場合、Security Health Analytics はそれらのクラウド プラットフォーム上のリソースをスキャンすることもできます。
使用している Security Command Center のサービスティアに応じて、使用可能な検出機能が異なります。
- スタンダード ティアの Security Health Analytics には、中および高レベルの脆弱性に対する検出機能の基本グループのみが含まれています。
- プレミアム ティアには、Google Cloud のすべての脆弱性検出機能が含まれています。
- エンタープライズ ティアには、他のクラウド プラットフォーム用の追加の検出機能が含まれます。
Security Command Center を有効にすると、Security Health Analytics が自動的に有効になります。
詳しくは以下をご覧ください。
- Security Health Analytics の概要
- Security Health Analytics の使用方法
- Security Health Analytics の検出結果の修正
- Security Health Analytics 検出結果のリファレンス
セキュリティ対策サービス
セキュリティ対策サービスは、Security Command Center Premium ティアの組み込みサービスで、Google Cloud でのセキュリティの全体的なステータスを定義、評価、モニタリングできます。お客様の環境が、セキュリティ対策で定義したポリシーとどのように適合しているかに関する情報を提供します。
セキュリティ対策サービスは、GKE クラスタの検出結果のみを表示する GKE セキュリティ対策ダッシュボードとは関係しません。
Sensitive Data Protection
機密データ保護は、機密データの検出、分類、保護を支援するフルマネージド Google Cloud サービスです。機密データの保護を使用すると、次のような機密情報や個人を特定できる情報(PII)を保存しているかどうかを判断できます。
- 個人名
- クレジット カード番号
- 国民 ID または州 ID の番号
- 健康保険の ID 番号
- Secret
機密データ保護では、検索対象の各タイプのデータは infoType と呼ばれます。
Security Command Center に結果を送信するように Sensitive Data Protection オペレーションを構成すると、Sensitive Data Protection セクションに加えて、Google Cloud コンソールの Security Command Center セクションで検出結果を直接確認できます。
Sensitive Data Protection 検出サービスによる脆弱性の検出
機密データ保護の検出サービスにより、Cloud Functions の環境変数にパスワード、認証トークン、Google Cloud 認証情報などのシークレットが含まれているかどうかを判断できます。この機能で機密データ保護によって検出されるシークレットの種類の完全なリストについては、認証情報とシークレットをご覧ください。
知見のタイプ | 検出結果の説明 | コンプライアンス標準 |
---|---|---|
Secrets in environment variables API のカテゴリ名: SECRETS_IN_ENVIRONMENT_VARIABLES
|
この検出機能は、Cloud Functions の環境変数に含まれるシークレットをチェックします。 改善策: 環境変数からシークレットを削除し、代わりに Secret Manager に保存します。 |
CIS GCP Foundation 1.3: 1.18 CIS GCP Foundation 2.0: 1.18 |
この検出機能を有効にするには、機密データの保護に関するドキュメントの環境変数のシークレットを Security Command Center に報告するをご覧ください。
Sensitive Data Protection からのモニタリング結果
このセクションでは、Security Command Center で Sensitive Data Protection が生成するモニタリング検出結果について説明します。
検出サービスからのモニタリング結果
機密データ保護の検出サービスにより、BigQuery データに特定の infoType が含まれているかどうか、またそれらが組織、フォルダ、プロジェクトでどこに存在しているのかを判断できます。
検出オペレーションでは、プロジェクト、テーブル、列レベルで基盤となる BigQuery データのプロファイルが生成されます。各テーブルデータ プロファイルは、Security Command Center で次の検出結果のカテゴリを生成します。
Data sensitivity
- 特定のテーブル内に存在するデータの機密レベルに関する指標。PII など、追加の制御や管理を必要とする可能性がある要素が含まれるデータは、機密情報に該当します。検出結果の重大度は、データ プロファイルの生成時に機密データ保護が計算した機密性レベルです。
Data risk
- 現在の状態でのデータに関連するリスク。データリスクの計算時、機密データ保護では、テーブル内のデータの機密性レベルと、そのデータを保護するアクセス制御が考慮されます。検出結果の重大度は、データ プロファイルの生成時に機密データ保護が計算したデータリスク レベルです。
Sensitive Data Protection によってデータ プロファイルが生成されてから、関連する Data sensitivity
と Data risk
の検出結果が Security Command Center に表示されるまでに最大 6 時間かかります。
データ プロファイルの結果を Security Command Center に送信する方法については、機密データの検出を有効にするをご覧ください。
Sensitive Data Protection 検査サービスによるモニタリング結果
機密データ保護の検査ジョブは、Cloud Storage バケットや BigQuery テーブルなどのストレージ システム内で特定の infoType を持つデータ インスタンスを識別します。たとえば、Cloud Storage バケット内で CREDIT_CARD_NUMBER
infoType 検出機能に一致するすべての文字列を検索する検査ジョブを実行できます。
一致する結果が検出された infoType 検出機能ごとに、機密データ保護は対応する Security Command Center の検出結果を生成します。検出結果のカテゴリは、一致した infoType 検出機能の名前です(例: Credit
card number
)。検出結果には、リソース内のテキストまたは画像で検出された一致文字列の数が含まれます。
セキュリティ上の理由から、検出された実際の文字列は検出結果に含まれません。たとえば、Credit card number
の検出結果には、見つかったクレジット カード番号の件数が表示されますが、実際のクレジット カード番号は表示されません。
機密データ保護には 150 を超える組み込み infoType 検出機能があるため、すべての Security Command Center の検出カテゴリをここで説明することはできません。infoType 検出機能の一覧については、infoType 検出機能のリファレンスをご覧ください。
検査ジョブの結果を Security Command Center に送信する方法については、機密データ保護の検査ジョブの結果を Security Command Center に送信するをご覧ください。
Google Cloud コンソールで Sensitive Data Protection の検出結果を確認する
Google Cloud コンソールで検出結果を確認するには、次の操作を行います。
Google Cloud コンソールで Security Command Center の [検出結果] ページに移動します。
Google Cloud プロジェクトまたは組織を選択します。
[クイック フィルタ] セクションの [ソースの表示名] 項で、[Sensitive Data Protection] を選択します。
このテーブルには、Sensitive Data Protection の検出結果が入力されます。
特定の検出結果の詳細を表示するには、[カテゴリ] の下にある検出結果の名前をクリックします。検出結果の詳細パネルが開き、[概要] タブが表示されます。
[概要] タブで、検出された内容、影響を受けたリソースなど、検出結果に関する情報を確認します。
VM Manager
VM Manager は、Compute Engine 上で Windows と Linux を実行している大規模な仮想マシン(VM)フリートでオペレーティング システムの管理を行うためのツールです。
Security Command Center Premium でプロジェクト レベルの有効化を行って VM Manager を使用するには、親組織で Security Command Center Standard を有効にします。
Security Command Center Premium ティアで VM Manager を有効にすると、VM Manager は、脆弱性レポートから high
と critical
の検出結果を Security Command Center に自動的に送信します。このレポートは、VM にインストールされたオペレーティング システム(OS)の脆弱性(Common Vulnerability and Exposures(CVE)など)が示されます。
Security Command Center Standard では、脆弱性レポートを使用できません。
検出結果を使用することで、VM Manager のパッチ コンプライアンス機能(プレビュー段階)を使用するプロセスが簡略化されます。この機能を使用すると、すべてのプロジェクトで組織レベルでパッチ管理を行うことができます。現在 VM Manager では、単一のプロジェクト レベルでのパッチ管理がサポートされています。
VM Manager の検出結果を修正するには、VM Manager の検出結果の修正をご覧ください。
脆弱性レポートが Security Command Center に書き込まれないようにするには、VM Manager の検出結果をミュートするをご覧ください。
このタイプの脆弱性はすべて、サポートされている Compute Engine VM にインストールされたオペレーティング システム パッケージに関連しています。
検出機能 | 概要 | アセットのスキャン設定 | コンプライアンス標準 |
---|---|---|---|
OS vulnerability
API のカテゴリ名: |
検出結果の説明: VM Manager が、Compute Engine VM にインストールされているオペレーティング システム(OS)パッケージに脆弱性を検出しました。 料金ティア: プレミアム
サポートされているアセット |
VM Manager の脆弱性レポートでは、Compute Engine VM のインストール済みオペレーティング システム パッケージの脆弱性(共通脆弱性識別子(CVE)など)が詳細に説明されています。 サポートされているオペレーティング システムの完全なリストについては、オペレーティング システムの詳細をご覧ください。脆弱性が検出されると、Security Command Center に検出結果がすぐに表示されます。VM Manager の脆弱性レポートは次のように生成されます。
|
Web Security Scanner
Web Security Scanner は、一般公開された App Engine、GKE、Compute Engine のサービス対象ウェブ アプリケーションにマネージドおよびカスタムウェブ脆弱性スキャンを実行します。
マネージド スキャン
Web Security Scanner のマネージド スキャンは Security Command Center によって構成され、管理されます。マネージド スキャンは、週に 1 回自動的に実行され、一般公開のウェブ エンドポイントを検出してスキャンします。このスキャンは認証を使用せず、公開ウェブサイトにはフォームを送信しないので、GET のみのリクエストを送信します。
マネージド スキャンはカスタム スキャンとは別に実行されます。
Security Command Center を組織レベルで有効にすると、マネージド スキャンを使用して、個々のプロジェクト チームを関与させることなく、組織内のプロジェクトの基本ウェブ アプリケーションの脆弱性検出を一元管理できます。検出が見つかったら、それらのチームと協力してより包括的なカスタム スキャンを設定できます。
Web Security Scanner をサービスとして有効にする場合、マネージド スキャンの検出結果は、Security Command Center の [脆弱性] ページと関連レポートで自動的に利用可能になります。Web Security Scanner のマネージド スキャンを有効にする方法については、Security Command Center の構成をご覧ください。
マネージド スキャンは、デフォルト ポート(HTTP 接続の場合は 80、HTTPS 接続の場合は 443)を使用するアプリケーションのみをサポートします。アプリケーションでデフォルト以外のポートを使用している場合は、代わりにカスタム スキャンを実行します。
カスタム スキャン
Web Security Scanner のカスタム スキャンは、古いライブラリ、クロスサイト スクリプティング、混合コンテンツの使用など、アプリケーションの脆弱性の検出に関する詳細な情報を提供します。
カスタム スキャンはプロジェクト レベルで定義します。
Web Security Scanner のカスタム スキャンを設定するためのガイドを完了すると、Security Command Center でカスタム スキャンによる検出が可能になります。
検出機能とコンプライアンス
Web Security Scanner は OWASP トップ 10 のカテゴリをサポートしています。これは、Open Web Application Security Project(OWASP)で決定される、ウェブ アプリケーションで最も重大な 10 個のウェブ アプリケーション セキュリティ リスクをランク付けして修正するドキュメントです。OWASP のリスク軽減のガイダンスについては、Google Cloud における OWASP トップ 10 緩和策をご覧ください。
コンプライアンス マッピングは参照用として含まれており、OWASP Foundation による提供や審査は行われません。
この機能は、コンプライアンス制御違反をモニタリングするためのものです。このマッピングは、規制、業界ベンチマーク、標準に準拠した製品またはサービスの監査、認定、コンプライアンス報告の基礎として使用できるものでも、これらの代用として使用できるものでもありません。
Web Security Scanner のカスタム スキャンとマネージド スキャンでは、次のタイプの検出結果が識別されます。スタンダード ティアの Web Security Scanner は、ファイアウォールの背後にない公開 URL と IP でデプロイされたアプリケーションのカスタム スキャンをサポートしています。
カテゴリ | 検出結果の説明 | OWASP 2017 Top 10 | OWASP 2021 Top 10 |
---|---|---|---|
Accessible Git repository
API のカテゴリ名: |
Git リポジトリが一般公開されている。この問題を解決するには、GIT リポジトリへの意図しない公開アクセスを削除します。 料金ティア: スタンダード |
A5 | A01 |
Accessible SVN repository
API のカテゴリ名: |
SVN リポジトリが一般公開されている。この問題を解決するには、SVN リポジトリへの意図しない公開アクセスを削除します。 料金ティア: スタンダード |
A5 | A01 |
Cacheable password input
API のカテゴリ名: |
ウェブ アプリケーションに入力したパスワードは、安全なパスワード ストレージではなく、通常のブラウザ キャッシュに保存できます。 料金ティア: プレミアム |
A3 | A04 |
Clear text password
API のカテゴリ名: |
パスワードがクリアテキストで送信されているため、傍受される可能性がある。この問題を解決するには、ネットワーク経由で送信されたパスワードを暗号化します。 料金ティア: スタンダード |
A3 | A02 |
Insecure allow origin ends with validation
API のカテゴリ名: |
クロスサイト HTTP または HTTPS エンドポイントは、Origin リクエスト ヘッダーのサフィックスのみを検査してから、Access-Control-Allow-Origin レスポンス ヘッダー内に反映されます。この検出結果を解決するには、想定どおりのルートドメインが Access-Control-Allow-Origin レスポンス ヘッダーに反映される前に、Origin ヘッダー値の一部になっていることを確認します。サブドメインのワイルドカードの場合は、ルートドメインに先頭にドットを追加します(例: .endsWith(".google.com") )。料金ティア: プレミアム |
A5 | A01 |
Insecure allow origin starts with validation
API のカテゴリ名: |
クロスサイト HTTP または HTTPS エンドポイントは、Access-Control-Allow-Origin レスポンス ヘッダー内に反映する前に、Origin リクエスト ヘッダーのプレフィックスのみを検証します。この検出結果を解決するには、想定どおりのドメインが Access-Control-Allow-Origin レスポンス ヘッダーに反映される前に、Origin ヘッダー値に完全に一致しているかどうか確認します。例: .equals(".google.com") 料金ティア: プレミアム |
A5 | A01 |
Invalid content type
API のカテゴリ名: |
レスポンスの Content-Type HTTP ヘッダーに一致しないリソースが読み込まれた。この検出結果を解決するには、X-Content-Type-Options HTTP ヘッダーに正しい値を設定します。料金ティア: スタンダード |
A6 | A05 |
Invalid header
API のカテゴリ名: |
セキュリティ ヘッダーに構文エラーがあり、ブラウザで無視される。この問題を解決するには、HTTP セキュリティ ヘッダーを正しく設定します。
料金ティア: スタンダード |
A6 | A05 |
Mismatching security header values
API のカテゴリ名: |
セキュリティ ヘッダーが重複し、値が一致しないため、未定義の動作が起こる。この問題を解決するには、HTTP セキュリティ ヘッダーを正しく設定します。
料金ティア: スタンダード |
A6 | A05 |
Misspelled security header name
API のカテゴリ名: |
セキュリティ ヘッダーにスペルミスがあるため、無視される。この問題を解決するには、HTTP セキュリティ ヘッダーを正しく設定します。
料金ティア: スタンダード |
A6 | A05 |
Mixed content
API のカテゴリ名: |
HTTPS ページ上で HTTP を介してリソースが提供されている。この問題を解決するには、すべてのリソースが HTTPS を介して提供されるようにします。 料金ティア: スタンダード |
A6 | A05 |
Outdated library
API のカテゴリ名: |
既知の脆弱性があるライブラリが検出された。この問題を解決するには、ライブラリを新しいバージョンにアップグレードします。 料金ティア: スタンダード |
A9 | A06 |
Server side request forgery
API のカテゴリ名: |
サーバー側のリクエスト フォージェリ(SSRF)の脆弱性が検出された。この問題を解決するには、許可リストを使用して、ウェブ アプリケーションがリクエストできるドメインと IP アドレスを制限します。 料金ティア: スタンダード |
該当なし | A10 |
Session ID leak
API のカテゴリ名: |
クロスドメイン リクエストを行う場合は、ウェブ アプリケーションの Referer リクエスト ヘッダーにユーザーのセッション ID を含めます。この脆弱性により、受信側ドメインにセッション ID へのアクセス権が付与されます。この ID は、ユーザーになりすますことや、ユーザーを一意に識別するために使用される可能性があります。料金ティア: プレミアム |
A2 | A07 |
SQL injection
API のカテゴリ名: |
潜在的な SQL インジェクション脆弱性が検出された。この問題を解決するには、パラメータ化されたクエリを使用して、ユーザー入力が SQL クエリの構造に影響を与えないようにします。 料金ティア: プレミアム |
A1 | A03 |
Struts insecure deserialization
API のカテゴリ名: |
脆弱なバージョンの Apache Struts の使用が検出された。この問題を解決するには、Apache Struts を最新バージョンにアップグレードしてください。 料金ティア: プレミアム |
A8 | A08 |
XSS
API のカテゴリ名: |
このウェブ アプリケーションのフィールドは、クロスサイト スクリプティング(XSS)攻撃に対して脆弱である。この問題を解決するには、信頼されていないユーザーが提供したデータを検証してエスケープします。 料金ティア: スタンダード |
A7 | A03 |
XSS angular callback
API のカテゴリ名: |
ユーザーが指定した文字列がエスケープされず、AngularJS によって補間される場合がある。この問題を解決するには、信頼されていないユーザーが指定し、Angular フレームワークによって処理されたデータを検証してエスケープします。 料金ティア: スタンダード |
A7 | A03 |
XSS error
API のカテゴリ名: |
このウェブ アプリケーションのフィールドは、クロスサイト スクリプティング攻撃に対して脆弱である。この問題を解決するには、信頼されていないユーザーが提供したデータを検証してエスケープします。 料金ティア: スタンダード |
A7 | A03 |
XXE reflected file leakage
API のカテゴリ名: |
XML 外部エンティティ(XXE)の脆弱性が検出された。この脆弱性により、ウェブ アプリケーションによりホスト上のファイルが漏洩する可能性があります。この検出結果を解決するには、外部エンティティを許可しないように XML パーサーを構成します。 料金ティア: プレミアム |
A4 | A05 |
Prototype pollution
API のカテゴリ名: |
このアプリケーションはプロトタイプ汚染に対して脆弱性があります。この脆弱性は、Object.prototype オブジェクトのプロパティに攻撃者が制御可能な値を割り当てることができる場合に発生します。一般的に、これらのプロトタイプに入力された値は、クロスサイト スクリプティング、類似したクライアントサイドの脆弱性、およびロジックのバグにつながると見なされています。料金ティア: スタンダード |
A1 | A03 |
脅威
脅威検出機能は、有害な可能性があるイベントを見つけるのに役立ちます。
異常検出
異常検出は、システム外部からの動作シグナルを使用する組み込みサービスです。漏洩した可能性のある認証情報など、プロジェクトと仮想マシン(VM)インスタンスで検出されたセキュリティ異常に関する詳細な情報が表示されます。Security Command Center のスタンダード ティアまたはプレミアム ティアを有効にすると、異常検出が自動的に有効になります。また、Google Cloud コンソールで検出結果を確認できます。
異常検出には、次の結果が含まれます。
異常名 | 検出結果のカテゴリ | 説明 |
---|---|---|
Account has leaked credentials |
account_has_leaked_credentials |
Google Cloud サービス アカウントの認証情報がオンラインで誤って漏洩したか、不正使用されています。 重大度: 重大 |
アカウントの認証情報の漏洩
GitHub は、commit に使用された認証情報が Google Cloud Identity and Access Management サービス アカウントの認証情報であると思われることを Security Command Center に通知しました。
この通知にはサービス アカウント名と秘密鍵 ID が含まれています。また、Google Cloud はセキュリティとプライバシー保護に指定された連絡先にメールで通知します。
この問題を解決するには、次のいずれかを行います。
- 鍵の正当なユーザーを特定する。
- 鍵をローテーションする。
- 鍵を削除する。
- 鍵の漏洩後に鍵によって行われたアクションを調査し、どのアクションにも悪意のあるものがないことを確認する。
JSON: 漏洩したアカウント認証情報の検出
{ "findings": { "access": {}, "assetDisplayName": "PROJECT_NAME", "assetId": "organizations/ORGANIZATION_ID/assets/ASSET_ID", "canonicalName": "projects/PROJECT_ID/sources/SOURCE_INSTANCE_ID/findings/FINDING_ID", "category": "account_has_leaked_credentials", "contacts": { "security": { "contacts": [ { "email": "EMAIL_ADDRESS" } ] } }, "createTime": "2022-08-05T20:59:41.022Z", "database": {}, "eventTime": "2022-08-05T20:59:40Z", "exfiltration": {}, "findingClass": "THREAT", "findingProviderId": "organizations/ORGANIZATION_ID/firstPartyFindingProviders/cat", "indicator": {}, "kubernetes": {}, "mitreAttack": {}, "mute": "UNDEFINED", "name": "organizations/ORGANIZATION_ID/sources/SOURCE_INSTANCE_ID/findings/FINDING_ID", "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_INSTANCE_ID", "parentDisplayName": "Cloud Anomaly Detection", "resourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "severity": "CRITICAL", "sourceDisplayName": "Cloud Anomaly Detection", "state": "ACTIVE", "vulnerability": {}, "workflowState": "NEW" }, "resource": { "name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "display_name": "PROJECT_NAME", "project_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID", "project_display_name": "PROJECT_NAME", "parent_name": "//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID", "parent_display_name": "ORGANIZATION_NAME", "type": "google.cloud.resourcemanager.Project", "folders": [] }, "sourceProperties": { "project_identifier": "PROJECT_ID", "compromised_account": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com", "finding_type": "Potential compromise of a resource in your organization.", "summary_message": "We have detected leaked Service Account authentication credentials that could be potentially compromised.", "action_taken": "Notification sent", "private_key_identifier": "SERVICE_ACCOUNT_KEY_ID", "url": "https://github.com/KEY_FILE_PATH/KEY_FILE_NAME.json" } }
Container Threat Detection
Container Threat Detection は一般的なコンテナ ランタイム攻撃を検出し、Security Command Center にアラートを表示します。必要に応じて Cloud Logging でアラートを受け取ることもできます。Container Threat Detection には、複数の検出機能、分析ツール、API が含まれています。
Container Threat Detection の検出計測は、ゲストカーネルで低レベルの動作を収集し、スクリプトに自然言語処理を実行して次のイベントを検出します。
- 追加されたバイナリの実行
- 追加されたライブラリの読み込み
- 実行: 追加された悪意のあるバイナリが実行された
- 実行: 追加された悪意のあるライブラリが読み込まれた
- 実行: 組み込まれた悪意のあるバイナリが実行された
- 実行: 変更された悪意のあるバイナリが実行された
- 実行: 変更された悪意のあるライブラリが読み込まれた
- 悪意のあるスクリプトの実行
- リバースシェル
- 予期しない子シェル
Container Threat Detection の詳細
Event Threat Detection
Event Threat Detection は、システム内部のログデータを使用します。Cloud Logging ストリームでプロジェクトをモニタリングし、利用可能になるとログを使用します。脅威が検出されると、Event Threat Detection は検出結果を Security Command Center と Cloud Logging プロジェクトに書き込みます。Event Threat Detection は、Security Command Center のプレミアム ティアを有効にすると自動的に有効になります。また、Google Cloud コンソールで検出結果を確認できます。
次の表に、Event Threat Detection の検出結果の例を示します。
データの完全消去 |
Event Threat Detection は、バックアップと DR サービス管理サーバーからの監査ログで次のシナリオを調査することで、データの破棄を検出します。
|
データの引き出し |
Event Threat Detection は、監査ログで次のシナリオを調査することで、BigQuery と Cloud SQL からのデータの引き出しを検出します。
|
Cloud SQL の不審なアクティビティ |
Event Threat Detection は、監査ログを調べて、Cloud SQL インスタンスの有効なユーザー アカウントの不正使用を示している可能性があるイベントを検出します。
|
AlloyDB for PostgreSQL の不審なアクティビティ |
Event Threat Detection は、監査ログを調べて、AlloyDB for PostgreSQL インスタンスの有効なユーザー アカウントの不正使用を示している可能性があるイベントを検出します。
|
ブルート フォース SSH | Event Threat Detection は syslog ログを使用して、繰り返し失敗した後に成功したエラーを調査し、パスワード認証 SSH のブルート フォースを検出します。 |
クリプトマイニング | Event Threat Detection は、既知の不正ドメインまたはマイニング プールの IP アドレスへの接続についての VPC フローログと Cloud DNS ログを調査し、コイン マイニングのマルウェアを検出します。 |
IAM の不正使用 |
IAM 異常付与: Event Threat Detection は、次のような異常と思われる IAM 付与を検出します。
|
システム復旧の抑制 |
Event Threat Detection は、大規模なポリシーの変更や重要なバックアップと DR コンポーネントの削除など、バックアップ対策に影響する可能性のあるバックアップと DR の異常な変更を検出します。 |
Log4j | Event Threat Detection は、Log4j の悪用とアクティブな Log4j の脆弱性を検出します。 |
マルウェア | Event Threat Detection は VPC フローログと Cloud DNS ログを使用して、既知のコマンド、制御ドメイン、IP への接続を調査し、マルウェアを検出します。 |
送信 DoS | Event Threat Detection は VPC フローログを調査して、サービス拒否攻撃の送信トラフィックを検出します。 |
異常アクセス | Event Threat Detection は、Tor IP アドレスなどの匿名プロキシ IP アドレスから発生した Google Cloud サービスの変更についての Cloud Audit Logs を調査して、異常アクセスを検出します。 |
異常な IAM 動作 |
Event Threat Detection は、Cloud Audit Logs で次のシナリオを調査し、異常な IAM 動作を検出します。
|
サービス アカウントの自己調査 | Event Threat Detection は、同じサービス アカウントに関連付けられたロールと権限の調査にサービス アカウントの認証情報が使用されたことを検出します。 |
Compute Engine 管理者による SSH 認証鍵の追加 | Event Threat Detection は、確立されたインスタンス(1 週間以上経過)での Compute Engine インスタンス メタデータ SSH 認証鍵の値の変更を検出します。 |
Compute Engine 管理者による起動スクリプトの追加 | Event Threat Detection は、確立されたインスタンス(1 週間以上経過)での Compute Engine インスタンス メタデータ起動スクリプトの値の変更を検出します。 |
不審なアカウントのアクティビティ | Event Threat Detection は監査ログを使用して、パスワードの漏洩や不審なログインの試行など、異常なアカウント アクティビティを調査し、Google Workspace アカウントの不正使用の可能性を検出します。 |
政府が支援する攻撃 | Event Threat Detection は、Google Workspace の監査ログを調査し、政府の支援を受けた攻撃者がユーザーのアカウントまたはパソコンを不正使用しようとした可能性を検出します。 |
シングル サインオン(SSO)の変更 | Event Threat Detection は、Google Workspace の監査ログを調査して、SSO の無効化や Google Workspace 管理者アカウントの設定変更を検出します。 |
2 段階認証プロセス | Event Threat Detection は、Google Workspace の監査ログを調査して、ユーザー アカウントと管理者アカウントで 2 段階認証プロセスが無効になっていることを検出します。 |
異常な API 動作 | Event Threat Detection は、プリンシパルが認識していない Google Cloud サービスに対するリクエストを Cloud Audit Logs で調べることで、異常な API 動作を検出します。 |
防御回避 |
Event Threat Detection は、Cloud Audit Logs で次のシナリオを調査することで、防御回避を検出します。
|
検出 |
Event Threat Detection は、監査ログで次のシナリオを調査することで、検出オペレーションを検出します。
|
初期アクセス | Event Threat Detection は、監査ログで次のシナリオを調査することで、初期アクセス オペレーションを検出します。
|
権限昇格 |
Event Threat Detection は、監査ログで次のシナリオを調査することで、GKE における権限昇格を検出します。
|
Cloud IDS の検出 | Cloud IDS は、ミラーリングされたパケットを分析してレイヤ 7 攻撃を検出し、不審なイベントを検出すると、Event Threat Detection の検出結果をトリガーします。Cloud IDS の検出について詳しくは、Cloud IDS のロギング情報をご覧ください。プレビュー |
ラテラル ムーブメント | Event Threat Detection は、Cloud Audit Logs で Compute Engine インスタンス間のブートディスクの切断と再接続が頻繁に発生しているかどうかを調べることで、変更されたブートディスクの攻撃の可能性を検出します。 |
Forseti Security
Forseti Security には、Google Cloud のすべてのリソースの状況を把握するためのツールが用意されています。Forseti のコアモジュールが連携して機能し、詳細な情報を提供します。これにより、リソースを保護し、セキュリティ リスクを最小限に抑えることができます。
Security Command Center に Forseti 違反通知を表示する方法については、Forseti の Security Command Center 通知ガイドをご覧ください。
詳細:
Google Cloud Armor
Google Cloud Armor は、レイヤ 7 フィルタリングを提供することで、アプリケーションを保護します。Google Cloud Armor は、一般的なウェブ攻撃やトラフィックを妨げる可能性のある他のレイヤ 7 属性のリクエストをスクラブし、負荷分散されたバックエンド サービスまたはバックエンド バケットに到達させないようにします。
Google Cloud Armor は、次の 2 つの検出結果を Security Command Center にエクスポートします。
Virtual Machine Threat Detection
Virtual Machine Threat Detection は、Security Command Center Premium の組み込みサービスで、ハイパーバイザ レベルの計測と永続ディスク分析を使用して脅威を検出します。VM Threat Detection は、侵害されたクラウド環境で実行されている、悪質な可能性のあるアプリケーション(暗号通貨マイニング ソフトウェアやカーネルモード ルートキット、マルウェアなど)を検出します。
VM Threat Detection は、Security Command Center Premium の脅威検出スイートの一部であり、Event Threat Detection と Container Threat Detection の既存の機能を補完するように設計されています。
VM Threat Detection の詳細については、VM Threat Detection の概要をご覧ください。
VM Threat Detection の脅威の検出
VM Threat Detection では、次の脅威の検出結果を生成できます。
暗号通貨マイニングの脅威の検出
VM Threat Detection は、ハッシュ マッチングまたは YARA ルールによって次の検出結果のカテゴリを検出します。
カテゴリ | モジュール | 説明 |
---|---|---|
Execution: Cryptocurrency Mining Hash Match
|
CRYPTOMINING_HASH
|
実行中のプログラムのメモリハッシュを、暗号通貨マイニング ソフトウェアの既知のメモリハッシュと照合します。 |
Execution: Cryptocurrency Mining YARA Rule
|
CRYPTOMINING_YARA
|
暗号通貨マイニング ソフトウェアによって使用されることが確認されているプルーフオブワーク定数などのメモリパターンと照合します。 |
Execution: Cryptocurrency Mining Combined Detection
|
|
CRYPTOMINING_HASH モジュールと CRYPTOMINING_YARA モジュールの両方で検出された脅威を識別します。詳細については、複合検出をご覧ください。 |
カーネルモード ルートキットの脅威の検出
VM Threat Detection は、実行時にカーネルの整合性を分析し、マルウェアによって使用される一般的な回避手法を検出します。
KERNEL_MEMORY_TAMPERING
モジュールは、仮想マシンのカーネルコードとカーネルの読み取り専用データメモリに対してハッシュの比較を行い、脅威を検出します。
KERNEL_INTEGRITY_TAMPERING
モジュールは、重要なカーネルデータ構造の整合性をチェックすることで脅威を検出します。
カテゴリ | モジュール | 説明 |
---|---|---|
カーネルメモリの改ざん | ||
Defense Evasion: Unexpected kernel code modification プレビュー |
KERNEL_MEMORY_TAMPERING
|
カーネルコード メモリで予期しない変更が発生しています。 |
Defense Evasion: Unexpected kernel read-only data modification プレビュー |
KERNEL_MEMORY_TAMPERING
|
カーネルの読み取り専用データメモリに予期しない変更が加えられています。 |
カーネルの整合性の改ざん | ||
Defense Evasion: Unexpected ftrace handler プレビュー |
KERNEL_INTEGRITY_TAMPERING
|
ftrace ポイントと、カーネルまたはモジュール コードの想定範囲にないリージョンを参照するコールバックが存在します。 |
Defense Evasion: Unexpected interrupt handler プレビュー |
KERNEL_INTEGRITY_TAMPERING
|
カーネルまたはモジュール コードに想定されているリージョンにない割り込みハンドラが存在します。 |
Defense Evasion: Unexpected kernel modules プレビュー |
KERNEL_INTEGRITY_TAMPERING
|
カーネルまたはモジュール コードに想定されているリージョンにないカーネルコード ページが存在します。 |
Defense Evasion: Unexpected kprobe handler プレビュー |
KERNEL_INTEGRITY_TAMPERING
|
kprobe ポイントと、カーネルまたはモジュール コードの想定範囲にないリージョンを参照するコールバックが存在します。 |
Defense Evasion: Unexpected processes in runqueue プレビュー |
KERNEL_INTEGRITY_TAMPERING
|
スケジューラの実行キューに予期しないプロセスが存在します。このようなプロセスは実行キューには存在しますが、プロセスタスク リストには存在しません。 |
Defense Evasion: Unexpected system call handler プレビュー |
KERNEL_INTEGRITY_TAMPERING
|
カーネルまたはモジュール コードに想定されているリージョンにないシステム呼び出しハンドラが存在します。 |
ルートキット | ||
Defense Evasion: Rootkit プレビュー |
|
既知のカーネルモード ルートキットに一致するシグナルの組み合わせがあります。このカテゴリの検出結果を受け取るには、両方のモジュールが有効になっていることを確認してください。 |
VM Threat Detection モニタリングの検出結果
VM Threat Detection では、次のモニタリング検出結果を生成できます。
カテゴリ名 | API 名 | 概要 | 重大度 |
---|---|---|---|
VMTD disabled
|
VMTD_DISABLED |
VM Threat Detection が無効になっています。有効にするまで、このサービスは Compute Engine プロジェクトと VM インスタンスをスキャンしません。不要なアプリケーションを検出することはできません。
この検出結果は、30 日後に |
高 |
エラー
エラー検出機能を使用すると、セキュリティ ソースによる検出結果の生成を妨げる構成エラーを検出できます。エラーの検出結果は Security Command Center
セキュリティ ソースによって生成され、検出クラスが SCC errors
に設定されます。
意図しないアクション
次の検出結果のカテゴリは、意図しないアクションが原因の可能性があるエラーを示します。
カテゴリ名 | API 名 | 概要 | 重大度 |
---|---|---|---|
API disabled |
API_DISABLED |
検出結果の説明: プロジェクトに必要な API が無効になっています。無効になっているサービスは、Security Command Center に検出結果を送信できません。 料金ティア: プレミアムまたはスタンダード
サポートされているアセット バッチスキャン: 60 時間ごと |
重大 |
Attack path simulation: no resource value configs match any resources |
APS_NO_RESOURCE_VALUE_CONFIGS_MATCH_ANY_RESOURCES |
検出結果の説明: リソース値の構成は、攻撃パス シミュレーション用に定義されていますが、環境内のリソース インスタンスと一致しません。シミュレーションでは、代わりにデフォルトの高価値リソースセットが使用されます。 このエラーは、次のいずれかの原因が考えられます。
料金ティア: プレミアム
サポートされているアセット バッチスキャン: すべての攻撃パス シミュレーションの前。 |
重大 |
Attack path simulation: resource value assignment limit exceeded |
APS_RESOURCE_VALUE_ASSIGNMENT_LIMIT_EXCEEDED |
検出結果の説明: 最後の攻撃パス シミュレーションで、リソース値の構成で識別される高価値リソースのインスタンス数が、高価値リソースセットに含まれる 1,000 のリソース インスタンスの上限を超えています。その結果、Security Command Center は、高価値リソースセットから余分なインスタンス数を除外しました。 一致するインスタンスの合計数とセットから除外されたインスタンスの合計数は、Google Cloud コンソールの 除外されたリソース インスタンスに影響する検出結果に対する攻撃の発生可能性スコアは、リソース インスタンスの高価値の指定を反映していません。 料金ティア: プレミアム
サポートされているアセット バッチスキャン: すべての攻撃パス シミュレーションの前。 |
高 |
Container Threat Detection
Image Pull Failure |
KTD_IMAGE_PULL_FAILURE |
検出結果の説明: 必要なコンテナ イメージを Container Threat Detection DaemonSet をデプロイしようとすると、次のエラーが発生します。
料金ティア: プレミアム
サポートされているアセット バッチスキャン: 30 分ごと |
重大 |
Container Threat Detection
Blocked By Admission Controller |
KTD_BLOCKED_BY_ADMISSION_CONTROLLER |
検出結果の説明: Kubernetes クラスタで Container Threat Detection を有効にすることはできません。サードパーティのアドミッション コントローラにより、Container Threat Detection に必要な Kubernetes DaemonSet オブジェクトのデプロイがブロックされています。 Google Cloud コンソールで表示した場合、検出結果の詳細には、Container Threat Detection が Container Threat Detection DaemonSet オブジェクトをデプロイしようとしたときに Google Kubernetes Engine から返されたエラー メッセージが含まれます。 料金ティア: プレミアム
サポートされているアセット バッチスキャン: 30 分ごと |
高 |
Container Threat
Detection service account missing permissions |
KTD_SERVICE_ACCOUNT_MISSING_PERMISSIONS |
検出結果の説明: サービス アカウントに Container Threat Detection に必要な権限がありません。検出計測の有効化、アップグレード、または無効化ができないため、Container Threat Detection が正常に機能できなくなりました。 料金ティア: プレミアム
サポートされているアセット バッチスキャン: 30 分ごと |
重大 |
GKE service account missing
permissions |
GKE_SERVICE_ACCOUNT_MISSING_PERMISSIONS |
検出結果の説明: クラスタの GKE のデフォルト サービス アカウントに権限が不足しているため、Container Threat Detection は Google Kubernetes Engine クラスタの検出結果を生成できません。このため、クラスタで Container Threat Detection を有効にできません。 料金ティア: プレミアム
サポートされているアセット バッチスキャン: 毎週 |
高 |
Misconfigured Cloud Logging Export |
MISCONFIGURED_CLOUD_LOGGING_EXPORT |
検出結果の説明: Cloud Logging への継続的なエクスポート用に構成されたプロジェクトを使用できません。Security Command Center は、検出結果を Logging に送信できません。 料金ティア: プレミアム
サポートされているアセット バッチスキャン: 30 分ごと |
高 |
VPC Service Controls Restriction |
VPC_SC_RESTRICTION |
検出結果の説明: Security Health Analytics では、プロジェクトの特定の検出結果を生成できません。プロジェクトがサービス境界で保護されており、Security Command Center のサービス アカウントがその境界にアクセスできません。 料金ティア: プレミアムまたはスタンダード
サポートされているアセット バッチスキャン: 6 時間ごと |
高 |
Security Command
Center service account missing permissions |
SCC_SERVICE_ACCOUNT_MISSING_PERMISSIONS |
検出結果の説明: 正しく機能するために必要な権限が Security Command Center サービス アカウントにありません。検出結果は生成されません。 料金ティア: プレミアムまたはスタンダード サポートされているアセット バッチスキャン: 30 分ごと |
重大 |
詳細については、Security Command Center のエラーをご覧ください。
次のステップ
- Security Command Center と Security Command Center の概要にある使用例について学習する。
- Security Command Center を構成して、新しいセキュリティ ソースを追加する方法を学習する。