ArcSight を Google SecOps と統合する

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

始める前に

Google SecOps で ArcSight ESM 統合を構成する前に、環境がコネクタ、ジョブ、アクションの接続と権限の要件を満たしていることを確認します。

統合のために環境を準備するには、次の前提条件を完了します。

  1. 基本統合要件を確認して、ネットワークの可視性とプログラムによる認証を確立します。

  2. セキュリティ イベントまたは相関ケースを Google SecOps に取り込むには、コネクタ固有の要件を構成します。

  3. ケース管理とハンドブックの自動化にきめ細かい権限を付与するには、ジョブとアクション固有の要件を構成します。

  4. 構成ワークフローを確認して、ArcSight ESM と Google SecOps のプロビジョニング シーケンスを理解します。

基本統合要件

ベース統合により、すべての Google SecOps アクション、コネクタ、ジョブで使用されるコア HTTPS 接続と認証セッションが確立されます。

環境で次の基本的な要件を構成します。

  1. ネットワークの見通し: Google SecOps インスタンスまたはリモート エージェントから管理ポート(デフォルト: 8443/TCP)の ArcSight ESM サーバーへの HTTPS 通信を有効にします。

  2. REST API アクセス: ArcSight ESM REST Web Services API Guide の説明に従って、https://<esm-host>:8443/www/manager-service/rest/ と https://<esm-host>:8443/www/core-service/rest/ にある ArcSight ESM REST サービスへの直接アクセスを確認します。

  3. SSL / TLS 信頼: ArcSight ESM デプロイでプライベートまたは自己署名の認証局を使用する場合は、Base64 でエンコードされた PEM ルートと中間 CA 証明書ファイルを提供します。

  4. サービス アカウントのプロパティ: ユーザータイプ Web User(インタラクティブなコンソール シート ライセンスの消費を避けるため推奨)または Normal User を使用して、専用の ArcSight サービス アカウントを作成し、Login Enabled がアクティブに設定されていることを確認します。

    ユーザー管理手順については、ArcSight ESM 管理者ガイドの「ユーザーの管理」セクションをご覧ください。

  5. ベースグループ メンバーシップ: サービス ユーザーを専用のユーザー グループ(SecOps_Integration_Group など)に割り当て、すべてのダウンストリーム オペレーション権限、リソース ACL、イベント フィルタを一元管理します。

    グループの構成手順については、ArcSight ESM 管理者ガイドの「ユーザー グループの管理」セクションをご覧ください。

コネクタ固有の要件

取り込みコネクタは、アラートとセキュリティ イベントを Google SecOps に pull します。基本統合以外の特別なデータ スコープと運用権限が必要です。

選択した取り込みコネクタに対応する前提条件を構成します。

  1. イベント フィルタの割り当て: イベント フィルタ(All Events やスコープ付き組織フィルタなど)を統合ユーザー グループに割り当てて、コネクタが取得できるセキュリティ イベントのデータスコープを定義します。

    グループ単位のイベント フィルタを構成する手順については、ArcSight ESM 管理者ガイドをご覧ください。

  2. ArcSight - セキュリティ イベント コネクタ: Security Events: Inspect、Reports: Inspect、Reports: Execute のオペレーション権限を付与し、相関イベントをエクスポートする ArcSight の特定のレポート リソースに Read と Execute の ACL 権限を割り当てます。

    リソース ACL の手順については、ArcSight ESM コンソール ユーザーガイドの「リソースのアクセス制御の管理」セクションをご覧ください。

  3. ArcSight ESM コネクタ: Security Events: Inspect オペレーション権限と Cases: Inspect オペレーション権限を付与し、ArcSight ESM コンソール ユーザーガイドに従って、ターゲット ケースフォルダと相関リソースに Read ACL 権限を割り当てます。

ジョブとアクション固有の要件

スケジュール設定されたジョブとハンドブックのアクションは、ベース統合接続を継承します。また、操作する特定の ArcSight リソースに応じて、きめ細かい操作権限とオブジェクト レベルの ACL 権限が必要です。

デプロイする統合機能に基づいて権限と ACL を付与します。

  1. アクションの有効化: ハンドブックのアクションでは、Google SecOps で個別の接続構成は必要ありません。ArcSight のサービス アカウント グループに必要なオペレーション権限とリソース ACL を付与すると、すぐにハンドブックで使用できるようになります。

  2. Close Cases ジョブ: Cases: Inspect オペレーションと Cases: Edit オペレーションの権限を付与し、ArcSight ESM Console ユーザーガイドに記載されているように、ターゲット ケース フォルダに Read ACL 権限と Modify ACL 権限を割り当てます。

  3. アクティブ リストのアクション: Active Lists: Inspect オペレーションと Active Lists: Edit Content(または Active Lists: Edit)オペレーションの権限を付与し、ハンドブックのアクション パラメータの対象となる特定のアクティブ リストに Read ACL 権限と Write ACL 権限を割り当てます。

  4. ケース管理アクション: Cases: Inspect オペレーションと Cases: Edit オペレーションの権限を付与し、ターゲット ケースフォルダに Read ACL 権限と Modify ACL 権限を割り当てます。

  5. クエリと検索アクション: Query Viewers: Inspect オペレーション権限と Query Viewers: Execute オペレーション権限を付与し、ターゲット クエリ閲覧者に Read ACL 権限と Execute ACL 権限を割り当てます。

  6. レポート アクション: Reports: Inspect オペレーション権限と Reports: Execute オペレーション権限を付与し、ターゲット レポートに Read ACL 権限と Execute ACL 権限を割り当てます。

コンポーネントの権限マッピング

次の表に、各統合コンポーネント タイプに必要な最小限のオペレーション権限とリソース ACL を示します。

権限の要件については、次の表をご覧ください。

  1. ベース セッション: ベース統合には、有効なログイン認証情報とデフォルトの認証済みユーザー権限のみが必要です。

  2. 取り込みコネクタ: コネクタには、イベント フィルタリング権限、イベント検査権限、レポートまたはケースへの読み取りアクセス権が必要です。

  3. ジョブとアクション: プレイブック アクションと同期ジョブには、アクセスされる特定のリソースに対する機能タスク権限と ACL 権限が必要です。これらは、ArcSight ESM コンソール ユーザーガイドを使用して構成します。

コンポーネントのタイプ コンポーネント名 API サービス 必要なオペレーション権限 必要なリソース ACL
基本統合 ベース接続と認証 LoginService デフォルトの認証済みユーザー権限 なし
コネクタ ArcSight - セキュリティ イベント コネクタ SecurityEventService、ReportService Security Events: Inspect, Reports: Inspect, Reports: Execute ターゲット レポート リソースに対する Read と Execute
コネクタ ArcSight ESM コネクタ SecurityEventService、CaseService Security Events: Inspect、Cases: Inspect ターゲット ケースフォルダと相関オブジェクトに対する Read
ジョブ ケースのクローズ ジョブ CaseService Cases: Inspect、Cases: Edit ターゲット ケースフォルダに対する Read と Modify
操作 アクティブ リストのアクション(エンティティの追加、エントリの追加、エントリの取得、値の確認) ActiveListService Active Lists: Inspect、Active Lists: Edit Content(または Active Lists: Edit) ターゲット アクティブ リストに対する Read と Write
操作 ケースのステージを変更するアクション CaseService Cases: Inspect、Cases: Edit ターゲット ケースフォルダに対する Read と Modify
操作 クエリと検索のアクション(クエリ結果の取得、検索) QueryViewerService、SearchService Query Viewers: Inspect、Query Viewers: Execute ターゲット クエリの閲覧者に対する Read と Execute
操作 レポート取得アクション ReportService Reports: Inspect、Reports: Execute ターゲット レポートに対する Read と Execute
操作 リソース一覧表示アクション ActiveListService, CaseService, QueryViewerService, ReportService 有効なリソースタイプごとに Inspect 権限 ターゲット リソース フォルダに対する Read

構成ワークフロー

このマルチフェーズ ワークフローに沿って、ArcSight ESM で権限をプロビジョニングし、Google SecOps で選択したコンポーネントを有効にします。

次の順序で構成手順を完了します。

  1. ArcSight サービス アカウントとグループのプロビジョニング: ArcSight ESM で専用のサービス ユーザーを作成し、専用のユーザー グループを作成して、サービス ユーザーをグループに割り当てます。ArcSight ESM 管理者ガイドに記載されているように、イベント フィルタを適用してデータの可視性を定義します。

  2. 選択したコンポーネントに権限と ACL を割り当てる: 計画したコネクタ、ジョブ、アクションをコンポーネント権限マッピング テーブルと相互参照し、対応するオペレーション権限をユーザー グループに付与します。また、ArcSight ESM Console ユーザーガイド の特定のターゲット リソース フォルダにオブジェクト レベルの ACL(アクティブ リストの Read/Write やレポートの Read/Execute など)を割り当てます。

  3. Google SecOps で構成する: 以下のセクションの説明に沿って、Google SecOps で基本統合、取り込みコネクタ、スケジュール設定されたジョブ、ハンドブック アクションを構成します。

統合のパラメータ

次のパラメータを使用して統合を構成します。

パラメータ名 種類 デフォルト値 必須 説明
インスタンス名 文字列 なし いいえ 統合を構成するインスタンスの名前。
説明 文字列 なし いいえ インスタンスの説明。
API ルート 文字列 https://{IP}:{PORT} はい ArcSight インスタンスのサーバー アドレス。
ユーザー名 文字列 なし はい ArcSight アカウントのユーザー名。
パスワード パスワード なし はい ArcSight アカウントのパスワード。
リモートで実行 チェックボックス オフ いいえ 構成した統合をリモートで実行するには、フィールドのチェックボックスをオンにします。オンにすると、リモート ユーザー(エージェント)を選択するオプションが表示されます。

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

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

操作

アクションの詳細については、 デスクから保留中のアクションに対応するとケースで手動アクションを実行するをご覧ください。

アクティブ リストにエントリを追加する

レポートに加えて、レポート以外のトレンドから情報を取得するメカニズムを提供します。トレンドによって更新されたアクティブ リストは、複数のトレンドからの情報の概要ビューをサポートします。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
列 文字列 なし はい 例: Message;Username
エントリ 文字列 なし はい 例: test1|Me1;Test|Me2
アクティブ リストの UUID 文字列 なし はい 例: HCN75QGABABCZXCOdT9P51w==

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_succeed 正誤問題 is_succeed:False

ケースのステージを変更する

ケースのステージを変更する。有効なステージは、INITIAL、QUEUED、CLOSED、FINAL、FOLLOW_UP です。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
ケース名 文字列 なし はい 更新するケースの名前。
ステージ 文字列 なし はい ケースのステージ。thought 例: CLOSED、INITIAL

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
成功 正誤問題 success:False

アクティブリスト エントリを取得する

ArcSight のアクティブ リスト エントリを取得し、CSV 出力を返します。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
アクティブ リストの UUID 文字列 なし はい 例: HTcILQWABABCr553ieI0Xmw==

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
Success_Indicator なし なし
JSON の結果
[
"12346e4d96f0a72c42015d69aaf0e8ab ,
 file.txt",
 "0e0776034e5e096704cd28cbd40cdbb5 ,
 Test.config"
]

クエリ結果を取得する

クエリ ID でクエリ結果を取得します。クエリは、レポートのプライマリ データソースとして使用できます。また、1 つのクエリに基づくトレンドを、最初のクエリ結果をさらに絞り込む別のクエリのデータソースとして使用することもできます。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
クエリ ID 文字列 なし はい クエリ ID。
返されるアイテムの最大数 整数 100 いいえ レスポンスで返すアイテムの数を指定します。

ユースケース

返す結果の数に制限を追加します。

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
成功 正誤問題 success:False
JSON の結果
[
    {
        "Target User Name": "user",
        "Attacker Address": "192.0.2.1",
        "External ID": "127",
        "Name": "A Kerberos authentication ticket (TGT) was requested.",
        "Target Address": "192.0.2.1"
    },{
        "Target User Name": "user",
        "Attacker Address": "192.0.2.1",
        "External ID": "127",
        "Name": "A Kerberos authentication ticket (TGT) was requested.",
        "Target Address": "192.0.2.1"
    }
]

レポートの取得

動的フィールドを含むレポートを取得します。レポートは、クエリまたはトレンドのデータを既存のレポート テンプレートにバインドする ArcSight リソースです。実行すると、レポートの結果を ArcSight コンソールのビューア パネルで表示したり、保存(アーカイブ)したり、さまざまな形式でエクスポートしたりできます。レポートは、定期的に実行するようにスケジュールすることも、必要に応じてオンデマンドで実行することもできます。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
レポートのフルパス(URI) 文字列 なし はい 関連するレポートの URI。
フィールド 2 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 3 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 4 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 6 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 6 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 7 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 8 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 9 文字列 なし いいえ レポートを生成するクエリの動的フィールド。
フィールド 10 文字列 なし いいえ レポートを生成するクエリの動的フィールド。

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
json_report なし なし

アクティブリスト列の値

特定の値がアクティブなリストに含まれているかどうかを確認します。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
アクティブ リストの UUID 文字列 なし はい アクティブなリストの UUID。例: cuser。
列名 文字列 なし はい 列の名前。例: sourceUserName。

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
Success_Indicator なし なし

Ping

接続をテストします。

パラメータ

なし

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
is_succeed 正誤問題 is_succeed:False

コンソール イベント チャネルから ArcSight Command Center で検索を開始できます。イベント完全検索では、複数のフィールド(abc など)に保存されている関連属性が検索されます。イベントの検索では、指定されたフィールド(たとえば、名前のみのフィールド)に格納されている値(たとえば、abc)を検索します。

パラメータ

パラメータ名 種類 デフォルト値 必須 説明
検索クエリ 文字列 なし はい 検索クエリ。
返されるアイテムの最大数 整数 100 いいえ レスポンスで返すアイテムの数を指定します。

ユースケース

返す結果の数に制限を追加します。

実行

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

アクションの結果

このアクションにより、次の結果が得られます。

スクリプトの結果
スクリプトの結果名 値のオプション 例
成功 正誤問題 success:False
JSON の結果
[
    {
        "score": 1.2440307,
        "uuid": "UUID",
        "uri": "/All_Fields/ArcSight_Foundation/Variables_Library/IPv6/Attacker_IPv6_Address",
        "name": "Attacker IPv6 Address"
    }, {
        "score": 1.2440307,
        "uuid": "UUID",
        "uri": "/All_Fields/ArcSight_Foundation/Variables_Library/IPv6/Attacker_IPv6_Address",
        "name": "Attacker IPv6 Address"
    }
]

コネクタ

Google SecOps でコネクタを構成する方法については、データを取り込む(コネクタ)をご覧ください。

Arcsight ESM コネクタ

このガイドは、ArcSight ESM バージョン 6.9.1 以降を対象としています。

ESM ルールまたはケースの Google SecOps への転送

トリガールール / 相関の操作

Google SecOps を SIEM プロバイダとして ArcSight ESM で機能するように構成し、承認されたユーザーを介して ArcSight ESM への API アクセスを提供しながら、最新の相関オブジェクトを Google SecOps に転送するように ArcSight ESM を構成する必要があります。

この機能により、Google SecOps は ArcSight ESM 内でトリガーされたルールを準リアルタイムで取得し、翻訳とコンテキスト化のためにケースのアラートとして転送できます。

Google SecOps と ArcSight ESM 間のデータフロー

Google SecOps は、Google SecOps に転送され、ArcSight Forwarding Connector モジュールと API アクセスを介して ArcSight ESM でトリガーされた相関関係を自動的にインデックス化してコンテキスト化します。

コネクタの重大度の優先順位付け

コネクタは、次の優先度値を使用して重大度を割り当てます。

  • 1 と 2 - 非常に低い
  • 3、4 - 低
  • 5、6 - 中
  • 7、8 - 高
  • 9、10 - 重大

コネクタの入力

次のパラメータを使用してコネクタを構成します。

パラメータ名 種類 デフォルト値 必須 説明
環境 DDL なし はい

必要な環境(Customer One など)を選択します。

アラートの [環境] フィールドが空の場合、このアラートはこの環境に挿入されます。

実行間隔 整数 0:0:0:10 いいえ 接続を実行する時間を選択します。
プロダクト フィールド名 文字列 device_product いいえ

商品名が保存されるフィールドの名前。

デフォルト値は device_product です。

商品名は主にマッピングに影響します。コネクタのマッピング プロセスを合理化して改善するため、デフォルト値 device_product は、コードから参照されるフォールバック値に解決されます。このパラメータに無効な入力があると、デフォルトでフォールバック値に解決されます。

イベント フィールド名 文字列 name いいえ イベント名(サブタイプ)を特定するために使用されるフィールド名。
スクリプトのタイムアウト(秒) 文字列 500 いいえ 現在のスクリプトを実行している Python プロセスのタイムアウト上限(秒単位)。
サーバー アドレス 文字列 なし はい https://{IP}:{PORT}
ユーザー名 文字列 なし はい ArcSight アカウントのユーザー名。
パスワード パスワード なし はい ArcSight アカウントのパスワード。
イベント数の上限 Integer 15 はい 相関ごとに取得するイベントの最大数を入力します。イベントの数を制限します(例: 10)。
Cases Folder Path 文字列 I:\SiemShare\CorrelationSource はい

ケースファイルの場所(I:\SiemShare\CorrelationSource など)

注: Cases Folder Path パスパラメータは、お客様ごとに変更できます。

フルパス。例: C:\Desktop\CorrelationSource

アラート数の上限 整数 10 はい コネクタ サイクルごとに処理するアラートの最大数(例: 10)。
環境フィールド名 文字列 event.customerURI はい ケースの環境を取得するフィールドの名前(例: event.customerUri)。
セカンダリ デバイスのプロダクト フィールド 文字列 なし いいえ 元のプロダクト フィールド(コネクタの DeviceProductField から、セカンダリ プロダクト フィールドの値)を置き換えます。例: CustomDeviceString2
アラートのカスタム フィールド名 文字列 なし いいえ ArcSight からカスタム フィールド値(baseEventCount、agent_address、device_assetId など)をアラートに pull します。
完了ファイルの保持日数 Integer 3 はい 各 DONE CSV ファイルを保持する日数。
エラーファイルの保持日数 Integer 14 はい 各 ERROR CSV ファイルを保持する日数。
プロキシ サーバーのアドレス 文字列 なし いいえ 使用するプロキシ サーバーのアドレス。
プロキシのユーザー名 文字列 なし いいえ 認証に使用するプロキシのユーザー名。
プロキシ パスワード パスワード なし いいえ 認証に使用するプロキシ パスワード。

コネクタルール

コネクタはプロキシをサポートしています。

ArcSight - セキュリティ イベント コネクタ

ArcSight から相関関係を pull します。このコネクタは、Google SecOps の SaaS デプロイに適しており、本番環境での使用におすすめです。

このコネクタを使用するには、前提条件の手順を完了する必要があります。

コネクタの入力

次のパラメータを使用してコネクタを構成します。

パラメータの表示名 種類 デフォルト値 必須 説明
プロダクト フィールド名 文字列 タイプ はい

商品名が保存されるフィールドの名前。

デフォルト値は type です。

商品名は主にマッピングに影響します。コネクタのマッピング プロセスを合理化して改善するため、デフォルト値 type は、コードから参照されるフォールバック値に解決されます。このパラメータに無効な入力があると、デフォルトで代替値に解決されます。

イベント フィールド名 文字列 name はい

イベント名(サブタイプ)を決定するフィールドの名前。

環境フィールド名 文字列 "" いいえ

環境名が保存されるフィールドの名前。

environment フィールドがない場合、コネクタはデフォルト値を使用します。

Environment Regex Pattern 文字列 .* FALSE いいえ

Environment Field Name フィールドで見つかった値に対して実行する正規表現パターン。このパラメータを使用すると、正規表現ロジックを使用して環境フィールドを操作できます。

デフォルト値 .* を使用して、必要な未加工の Environment Field Name 値を取得します。

正規表現パターンが null か空の場合、または環境値が null の場合、最終的な環境の結果はデフォルト環境になります。

スクリプトのタイムアウト(秒) Integer 360 はい

現在のスクリプトを実行する Python プロセスのタイムアウト上限(秒単位)。

API ルート 文字列 https://{ip} はい ArcSight インスタンスの API ルート。
ユーザー名 文字列 なし はい ArcSight アカウントのユーザー名。
パスワード パスワード なし はい ArcSight アカウントのパスワード。
レポート名 文字列 なし はい イベントの取得に使用されるレポートの名前。
ベースとなる予定を取得する チェックボックス オン はい 有効にすると、コネクタはベースイベントも取得します。
取得する最も低い優先度 整数 なし いいえ イベントの取得に使用される最も低い優先度。有効な値の範囲は 1 ~ 10 です。何も指定しないと、すべてのイベントが取り込まれます。
取得する最大イベント数 整数 100 いいえ コネクタのイテレーションごとに処理するアラートの数。最大許容値は 1,000 です。
動的リストをブロックリストとして使用する チェックボックス オン はい

選択すると、コネクタは動的リストを拒否リストとして使用します。

SSL を確認する チェックボックス オフ はい 選択すると、統合は ArcSight サーバーに接続するときに SSL 証明書を検証します。
プロキシ サーバーのアドレス 文字列 なし いいえ 使用するプロキシ サーバーのアドレス。
プロキシのユーザー名 文字列 なし いいえ 認証に使用するプロキシのユーザー名。
プロキシ パスワード パスワード いいえ 認証に使用するプロキシ パスワード。

コネクタルール

コネクタはプロキシをサポートしています。

ジョブ

ジョブの詳細については、 新しいジョブを構成すると 高度なスケジューリングをご覧ください。

ケースをクローズ

このジョブには次のパラメータが必要です。

パラメータ名 種類 デフォルト値 必須 説明
サーバー アドレス 文字列 192.0.2.1 はい なし
ユーザー名 文字列 なし ○ なし
パスワード パスワード なし ○ なし

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