Web Risk を Google SecOps と統合する

このドキュメントでは、Web Risk を Google Security Operations と統合する方法について説明します。

ユースケース

Web Risk の統合では、Google SecOps の機能を使用して次のユースケースをサポートします。

  • URL の評価の検索: Google の既知の 悪意のあるリソースのリストと照合して URL を確認し、フィッシング、マルウェア、望ましくないソフトウェアを特定します。

  • インシデントの拡充: Web Risk の脅威 インテリジェンスを使用してセキュリティ アラートを自動的に拡充し、アナリストが脅威の優先順位付けと対応を行えるようにします。

  • 悪意のある URL の軽減: Web Risk のチェックを ハンドブックに組み込み、調査中に特定されたリスクの高いドメインを自動的にブロックまたはフラグ設定します。

  • フィッシング対応の自動化: ユーザーから報告されたメールから抽出された疑わしいリンクを確認してフィッシングの試みを特定し、 ユーザー通知や認証情報のリセットなどの自動封じ込めアクションをトリガーします。

  • 外部インテリジェンスの検証: サードパーティの 脅威フィードの URL を Googleの高精度リストと相互参照して、誤検出を減らし、破壊的なアクションを実行する前に悪意のある意図を確認します。

始める前に

Google SecOps で Web Risk の統合を構成する前に、次の前提条件を満たしてください。

  1. サービス アカウントを作成します

  2. 次のいずれかの認証方法を選択して構成します。

    • オプション 1: Workload Identity(推奨): この 方法では、サービス アカウントの 権限借用によって有効期間の短い一時的なアクセス トークンを使用するため、シークレットを保存する必要はありません。

    • オプション 2: サービス アカウントの JSON キー: この方法は、 有効期間の長い静的なシークレット キーファイルに依存します。この方法は、Workload Identity 認証が環境で使用できない場合にのみ使用してください。

サービス アカウントを作成する

統合用のサービス アカウントを作成するには、次の操作を行います。

  1. コンソール Google Cloud で、 [IAM と管理] >[サービス アカウント]に移動します。

    [サービス アカウント] に移動

  2. [add サービス アカウントを作成] をクリックして、名前と説明を入力します。

  3. [完了] をクリックして、アカウントの作成を完了します。この サービス アカウントのメールアドレスは、認証構成プロセスで使用されます。

Workload Identity 認証情報を構成する

統合を認証するには、この方法または JSON キーの方法を選択します。 Workload Identity は、サービス アカウントの権限借用を使用して 有効期間の短い一時的なアクセス トークンを使用するため、 有効期間の長いシークレットを保存またはローテーションする必要がなく、推奨される安全な方法です。

一意のインスタンス ID を特定する

Workload Identity を使用して認証するには、Google SecOps インスタンスにサービス アカウントの権限を借用する権限を付与する必要があります。これにより、インスタンスは Google Cloud リソースに安全にアクセスできます。

  1. Google SecOps で、 [コンテンツ ハブ] > [レスポンスの統合] に移動します。

  2. [Web Risk] の統合を選択し、[Workload Identity のメール] にサービス アカウントのメールアドレスを入力します。

  3. [割り当てプロジェクト ID] に有効なプロジェクト ID を入力します。

  4. [Save > Test] をクリックします。テストは失敗するはずです。

  5. [close_small] ボタンを [テスト] の横にあるクリックし、エラー メッセージで gke-init-python@... または soar-python@... で始まる ID メールを検索します。

    この一意のメールアドレスをコピーして、統合の構成時に Workload Identity Email に貼り付けます。

でインスタンス ID を承認する Google Cloud

Google SecOps インスタンスの一意の ID を取得したら、 リソースにアクセスできるように承認する必要があります。 Google Cloud この手順により、サービス アカウントの権限借用が可能になり、プラットフォームは静的キーを必要とせずに有効期間の短いトークンを生成して、ユーザーに代わって操作できます。

  1. コンソール Google Cloud で、[IAM と管理] >[サービス アカウント] に移動します。

    [サービス アカウント] に移動

  2. ターゲット サービス アカウントを選択し、 [権限 > アクセス権を付与] に移動します。

  3. 一意のメールアドレスを [新しいプリンシパル] フィールドに貼り付けます。

  4. サービス アカウント トークン作成者 ロール(roles/iam.serviceAccountTokenCreator)を割り当てます。

割り当てプロジェクトのアクセス権を付与する

Workload Identity を使用して認証する場合は、API の使用量と請求額を追跡するために、統合設定で Quota Project ID を指定する必要があります。

これを承認するには、指定された割り当てプロジェクトでサービス アカウントに次のロールを付与する必要があります。

  1. コンソール Google Cloud で、[IAM と管理] > [IAM] に移動して、プロジェクトを選択します。

    IAM に移動

  2. プリンシパルのリストでサービス アカウントを見つけて、その アカウントの [edit(プリンシパルの編集)] をクリックします。

  3. [別のロールを追加] をクリックし、Service Usage コンシューマー ロール(roles/serviceusage.serviceUsageConsumer)を選択します。

  4. [保存] をクリックします。

JSON キーを構成する

統合を認証するには、この方法または Workload Identity の方法を選択します。JSON キーの方法は、Workload Identity が環境で使用できない場合にのみ使用してください。 Workload Identity は、推奨される安全な 方法です。この方法は、手動での管理とローテーションが 必要な、有効期間の長い静的なシークレット キーファイルに依存します。

統合の認証に必要な JSON キーファイルを生成するには、次の手順を行います。

  1. コンソールで、 Google Cloud [IAM と管理] > [サービス アカウント] に移動し、作成したサービス アカウントを選択します。

    [サービス アカウント] に移動

  2. [キー] タブに移動します。

  3. [**キーを追加 > 新しいキーを作成**] の順にクリックします。

  4. キータイプとして [JSON] を選択し、[作成] をクリックします。ブラウザによって JSON ファイルがパソコンにダウンロードされます。

  5. このファイルの内容をすべてコピーして、統合の構成時に Service Account JSON File Content に貼り付けます。

統合のパラメータ

Web Risk の統合には、次のパラメータが必要です。

パラメータ 説明
Workload Identity Email

省略可。

サービス アカウントのクライアント メールアドレス。

このパラメータは、Workload Identity を使用して認証する場合にのみ構成します。

このパラメータを構成する場合は、 Quota Project ID も構成する必要があります。

Service Account JSON File Content

省略可。

サービス アカウントの JSON キーファイルの内容全体。

このパラメータは、JSON キーを使用して認証する場合にのみ構成します。

Quota Project ID

省略可。

API の使用量と請求額に使用する Google Cloud プロジェクト ID。

Workload Identity を使用して認証する場合は、このパラメータが必須です。

Project ID

省略可。

統合で使用する Google Cloud プロジェクト ID。

値が指定されていない場合、統合はサービス アカウントの認証情報から ID を取得します。

Verify SSL

必須。

選択すると、Web Risk サーバーに接続するときに SSL 証明書が検証されます。

デフォルトで有効になっています。

Google SecOps で統合を構成する方法については、統合を構成するをご覧ください。

必要に応じて、後で変更を加えることができます。統合インスタンスを構成したら、ハンドブックで使用できます。複数のインスタンスの構成とサポートの詳細については、複数のインスタンスのサポートをご覧ください。

操作

操作の詳細については、 デスクから保留中のアクションに対応するおよび手動による対策を実行するをご覧ください。

エンティティの拡充

[エンティティの拡充] アクションを使用して、Web Risk から Google SecOps エンティティに関する情報を返します。

このアクションは、Google SecOps の URL エンティティに対して実行されます。

アクションへの入力

なし

アクションの出力

[エンティティの拡充] アクションでは、次の出力が提供されます。

アクションの出力タイプ 対象
ケースウォールのアタッチメント 利用不可
ケースウォールのリンク 利用不可
ケースウォール テーブル 利用不可
エンティティ拡充テーブル 利用可能
JSON の結果 利用可能
出力メッセージ 利用可能
スクリプトの結果 利用可能
エンティティ拡充テーブル

[エンティティの拡充] アクションは、URL エンティティを拡充し、次の拡充結果を提供できます。

拡充フィールド名 ソース(JSON キー) 適用範囲
threatTypes 脅威タイプの CSV ファイル。 JSON の結果で利用可能な場合。
JSON の結果

次の例は、[エンティティの拡充] アクションを使用したときに受信した JSON 結果の出力を示しています。

{
   "Entity": "Entity",
   "EntityResult": [
       {
           "expireTime": "2024-12-20T13:47:20.786242980Z",
           "threatTypes": [
               "SOCIAL_ENGINEERING_EXTENDED_COVERAGE"
           ]
       }
   ]
}
出力メッセージ

[エンティティの拡充] アクションは、次の出力メッセージを返すことができます。

出力メッセージ メッセージの説明

Successfully enriched the following entities in Web Risk: ENTITY_ID.

The action wasn't able to enrich the following entities in Web Risk: ENTITY_ID.

No information was found for the provided entities.

アクションを完了しました。
Error executing action "Enrich Entities". Reason: ERROR_REASON

操作を実行できませんでした。

サーバーへの接続、 入力パラメータ、または認証情報を確認してください。

スクリプトの結果

次の表に、[エンティティの拡充] アクションを使用した場合のスクリプト結果出力の値を示します。

スクリプトの結果名
is_success True または False

Ping

[Ping] アクションを使用して、Web Risk への接続をテストします。

このアクションは、Google SecOps エンティティに対しては実行されません。

アクションへの入力

なし

アクションの出力

[Ping] アクションでは、次の出力が提供されます。

アクションの出力タイプ 対象
ケースウォールのアタッチメント 利用不可
ケースウォールのリンク 利用不可
ケースウォール テーブル 利用不可
拡充テーブル 利用不可
JSON の結果 利用不可
出力メッセージ 利用可能
スクリプトの結果 利用可能
出力メッセージ

[Ping] アクションは、次の出力メッセージを返すことができます。

出力メッセージ メッセージの説明
Successfully connected to the Web Risk server with the provided connection parameters! アクションを完了しました。
Failed to connect to the Web Risk server! Error is ERROR_REASON

操作を実行できませんでした。

サーバーへの接続、 入力パラメータ、または認証情報を確認してください。

スクリプトの結果

次の表に、[Ping] アクションを使用した場合のスクリプト結果出力の値を示します。

スクリプトの結果名
is_success True または False

エンティティを送信する

[エンティティを送信] アクションを使用して、分析のためにエンティティを Web Risk に送信します。

このプロセスは非同期です。必要に応じて、Google SecOps 統合開発環境(IDE)でスクリプト タイムアウト値を調整します。

このアクションは、Google SecOps の URL エンティティに対して実行されます。

アクションへの入力

[エンティティを送信] アクションには、次のパラメータが必要です。

パラメータ 説明
Abuse Type

省略可。

送信に関連付けられている迷惑行為タイプ。

迷惑行為タイプの詳細については、AbuseType をご覧ください。

値は次のいずれかになります。

  • Select One
  • Malware
  • Social Engineering
  • Unwanted Software

デフォルト値は Select One です。

Confidence Level

省略可。

送信の信頼レベル。

信頼レベルの詳細については、ConfidenceConfidenceLevel をご覧ください。

値は 次のいずれかになります。

  • Select One
  • Low
  • Medium
  • High

デフォルト値は Select One です。

Justification

省略可。

送信の正当性。

正当性のオプションの詳細については、JustificationLabel をご覧ください。

値は次のいずれかになります。

  • Manual Verification
  • User Report
  • Automated Report

デフォルト値は User Report です。

Comment

省略可。

送信の根拠となるコメント。

Region Code

省略可。

送信に関連付けられている国または地域の Common Locale Data Repository(CLDR)コードのカンマ区切りリスト。送信の詳細については、Submission をご覧ください。

Platform

省略可。

送信が検出されたプラットフォーム タイプ。

値は次のいずれかになります。

  • Select One
  • Android
  • iOS
  • MacOS
  • Windows

デフォルト値は Select One です。

Skip Waiting

省略可。

選択すると、アクションは送信を初期化し、完了するまで待機しません。

デフォルト値は True です。

さらにサポートが必要な場合コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。