ArcSight を Google SecOps と統合する
このドキュメントでは、ArcSight を Google Security Operations(Google SecOps)と統合する方法について説明します。
統合バージョン: 42.0
セキュリティ イベント コネクタの前提条件
このコネクタは、ArcSight で自動的に生成されるレポートと連携します。コネクタは、生成されたレポートをダウンロードし、イベント ID を抽出してから、ArcSight API を使用してイベントの詳細を取得します。
セキュリティ イベント コネクタを構成する
ArcSight コンソールにログインします。
[レポート] タブに移動し、[クエリ] セクションに移動します。
新しいクエリを作成するには、クエリ名
Google SecOps SOAR Security Events Connector Query
を入力します。[開始時間] パラメータと [終了時間] パラメータに注意してください。1 時間間隔でデータをクエリすることをおすすめしますが、必要に応じて間隔を増やすことができます。
構成の例:
- 名前: Google SecOps SOAR セキュリティ イベント コネクタ クエリ
- Query On: Event
- 開始時間: $Now - 1h
- 終了時間: $Now
- Use as TimeStamp: End Time(タイムスタンプとして使用: 終了時間)
- 行の上限: 5,000
クエリのフィールドを定義します。フィールドについては、次のものが必要です。
- イベント ID
- 名前
- 開始時刻
- 終了時刻
- 優先度
[Order By] 列に [End Time ASC] が表示されていることを確認します。
[条件] を設定します。ここに独自のフィルタを指定できます。
クエリを保存します。
[レポート] セクションに移動し、新しいレポートを作成します。レポートを指定するには、
Google SecOps SOAR Security Events Connector Report
という名前を入力します。コネクタ構成の [レポート名] パラメータに同じ名前を使用します。[データ] タブで、前の手順で作成したクエリを [データソース] として選択します。
[パラメータ] タブで、コネクタの要件を満たすように [レポート形式] を csv に変更します。
レポートを保存します。
レポートの名前は、[レポート名] パラメータのコネクタ構成で指定します。
テスト実行を行い、コネクタが想定どおりに動作することを確認します。
ArcSight 用に Google SecOps 共有フォルダを構成する
Google SecOps サーバー
/etc/passwd
ファイルでUID
とGID
を探します。cat /etc/passwd | grep scripting
コマンドの出力例は次のとおりです。
scripting:x:1001:1001:/home/scripting:/bin/bash
UID
は 3 番目のフィールドで、GID
はコマンド出力の 4 番目のフィールドです。スクリプトを作成します。
ファイルを作成し、
configure_smp_nfs.sh
という名前を付けます。次の内容をこのファイルにコピーします。
#!/bin/bash #Declare the variables: uid=SCRIPTING_USER_UID gid=SCRIPTING_USER_GID arcsight_ip=ARCSIGHT_IP #Install nfs-utils yum install nfs-utils -y #Create the directory that will be shared mkdir /opt/Correlations #Change the permissions chmod -R 755 /opt/Correlations/ chown -R scripting:scripting /opt/Correlations/ #Start the services and enable them to be started at boot time systemctl enable rpcbind systemctl enable nfs-server systemctl enable nfs-lock systemctl enable nfs-idmap systemctl start rpcbind systemctl start nfs-server systemctl start nfs-lock systemctl start nfs-idmap #Edit the exports file as follows echo "/opt/Correlations/ $arcsight_ip(rw,sync,all_squash,anonuid=$uid,anongid=$gid)">>/etc/exports #Restart the NFS service and export the path systemctl restart nfs-server exportfs -a #If FirewallD is running add the next rules: firewall-cmd --permanent --zone=public --add-service=nfs firewall-cmd --permanent --zone=public --add-service=mountd firewall-cmd --permanent --zone=public --add-service=rpc-bind firewall-cmd --reload setsebool -P nfs_export_all_rw 1
環境に応じて
uid
、gid
、arcisght_ip
の各変数を宣言します。権限を付与します。
chmod +x configure_smp_nfs.sh
スクリプトを実行します。
./configure_smp_nfs.sh
ArcSight サーバー
スクリプトを作成します。
ファイルを作成し、
configure_smp_nfs.sh
という名前を付けます。次の内容をこのファイルにコピーします。
#!/bin/bash #Declare the variables: siemplify_ip=SIEMPLIFY_IP #Install nfs-utils yum install nfs-utils -y #Start the services and enable them to be started at boot time systemctl enable rpcbind systemctl enable nfs-server systemctl enable nfs-lock systemctl enable nfs-idmap systemctl start rpcbind systemctl start nfs-server systemctl start nfs-lock systemctl start nfs-idmap #If FirewallD is running add the next rules: firewall-cmd --permanent --zone=public --add-service=nfs firewall-cmd --permanent --zone=public --add-service=mountd firewall-cmd --permanent --zone=public --add-service=rpc-bind firewall-cmd --reload #Create the NFS directory mount point mkdir -p /mnt/nfs/var/SiemShare #Add the values: echo "$siemplify_ip:/opt/Correlations /mnt/nfs/var/SiemShare nfs defaults 0 0">>/etc/fstab mount -a
環境に応じて
siemplify_ip
変数を宣言します。
古いパスを使用しているお客様向けの注意事項
ホットフィックス インストーラは、/opt/siemplify/Correlations
フォルダの権限を siemplifyadmin
に上書きします。
古いパスを使用してアップグレードを適用する場合は、次の手順で権限をスクリプト ユーザーに戻す必要があります。
アップグレードを開始する前に、NFS サーバー サービスを停止します。
_systemctl stop nfs-server_
アップグレードが完了したら、フォルダの権限を変更します。
_chmod -R 755 /opt/siemplify/Correlations/_
_chown -R scripting:scripting/opt/siemplify/Correlations/_
_systemctl start nfs-server_
_exportfs -a_
変更後に NFS サーバーが正しく動作していることを確認するには、そのステータスを確認します。
_systemctl status nfs-server_
API アクセス用のユーザーを作成して構成する
ArcSight コンソールにログインします。
Google_SecOps_API
ユーザー グループを作成し、Google_SecOps_API
ユーザーを追加します。このユーザーは、ArcSight ESM API を介して Google SecOps で使用されます。[属性] タブに移動し、[ユーザータイプ] 属性を
Normal User
に設定します。[リソース] タブで、作成したユーザー グループを右クリックします。
メニューから [アクセス制御を編集] を選択します。
ACL エディタの [Inspect/Edit] ウィンドウで、次の操作を行います。
[イベント] タブで、前に作成したフィルタ
Google_SecOps_Correlations_Filter
を追加します。任意の送信元フィルタを追加して、Google SecOps にアクセス権を付与することもできます。他のタブはデフォルトの設定を使用します。
[追加] をクリックし、[ArcSight System > Core] を選択して、[すべてのイベント] チェックボックスをオンにします。
[すべてのイベント] チェックボックスがオンになっていることを確認することが重要です。最小要件は、Google SecOps に取り込まれるすべての関連付けイベントを含めることです。
Google Security Operations では、ArcSight ESM API を使用する際に、次の主なメソッドを使用します。
コアサービス:
Login
、GetSession
マネージャー サービス:
GetSecurityEvents
ArcSight ESM によるネットワーク アクセス
Google SecOps から ArcSight ESM にアクセスするには、ポート 443(HTTPS)と 8443(SSL 経由の API)経由のトラフィックを許可するか、環境で構成されているトラフィックを許可します。
ArcSight ESM から Google SecOps にアクセスするには、ポート 445 と 139(SMB/SAMBA/CIFS)経由のトラフィックを許可するか、環境で構成されているトラフィックを許可します。
関数 | ポート | 方向 | プロトコル |
---|---|---|---|
NFS | 111、1039、1047、1048、2049 | アウトバウンドとインバウンド | UDP |
NFS | 111、1039、1047、1048、2049 | アウトバウンドとインバウンド | TCP |
統合のパラメータ
Google SecOps で統合を構成する方法について詳しくは、統合を構成するをご覧ください。
次のパラメータを使用して統合を構成します。
パラメータ名 | 種類 | デフォルト値 | 必須 | 説明 |
---|---|---|---|---|
インスタンス名 | 文字列 | なし | いいえ | 統合を構成するインスタンスの名前。 |
説明 | 文字列 | なし | いいえ | インスタンスの説明。 |
API ルート | 文字列 | https://{IP}:{PORT} |
はい | ArcSight インスタンスのサーバー アドレス。 |
ユーザー名 | 文字列 | なし | はい | ArcSight アカウントのユーザー名。 |
パスワード | パスワード | なし | はい | ArcSight アカウントのパスワード。 |
リモートで実行 | チェックボックス | オフ | いいえ | 構成した統合をリモートで実行するには、フィールドのチェックボックスをオンにします。オンにすると、リモート ユーザー(エージェント)を選択するオプションが表示されます。 |
操作
アクティブ リストにエントリを追加する
説明
レポート以外にも、トレンドから情報を取得するメカニズムを提供します。トレンドによって更新されるアクティブ リストは、複数のトレンドからの情報の概要ビューをサポートしています。
パラメータ
パラメータ名 | 種類 | デフォルト値 | 必須 | 説明 |
---|---|---|---|---|
列 | 文字列 | なし | はい | 例: Message;Username |
エントリ | 文字列 | なし | はい | 例: test1|Me1;Test|Me2 |
アクティブ リストの UUID | 文字列 | なし | はい | 例: HCN75QGABABCZXCOdT9P51w== |
実行
このアクションはすべてのエンティティに対して実行されます。
アクションの結果
スクリプトの結果
スクリプトの結果名 | 値のオプション | 例 |
---|---|---|
is_succeed | 正誤問題 | is_succeed:False |
ケースのステージを変更する
説明
ケースのステージを変更します。有効なステージは、INITIAL、QUEUED、CLOSED、FINAL、FOLLOW_UP です。
パラメータ
パラメータ名 | 種類 | デフォルト値 | 必須 | 説明 |
---|---|---|---|---|
ケース名 | 文字列 | なし | はい | 更新するケースの名前。 |
ステージ | 文字列 | なし | はい | ケースのステージ。例: 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 | なし | なし |
Is Value in Activelist Column
説明
特定の値がアクティブ リストに含まれているかどうかを確認します。
パラメータ
パラメータ名 | 種類 | デフォルト値 | 必須 | 説明 |
---|---|---|---|---|
アクティブ リストの 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 への転送
トリガーされたルール/相関関係の操作
ArcSight ESM を構成して最新の相関オブジェクトを Google SecOps に転送し、Google SecOps を構成して ArcSight ESM で SIEM プロバイダとして機能させ、承認済みユーザーを介して ArcSight ESM に API アクセスを提供する必要があります。
この機能により、Google SecOps は ArcSight ESM 内でトリガーされたルールをほぼリアルタイムで取得し、翻訳とコンテキスト化のためにケースのアラートとして転送できます。
Google SecOps と ArcSight ESM 間のデータフロー
Google SecOps は、ArcSight Forwarding Connector モジュールと API アクセスを介して Google SecOps に転送され、ArcSight ESM でトリガーされた相関関係を自動的にインデックス登録してコンテキスト化します。
コネクタの重要度の優先順位付け
コネクタは、次の優先度値で重大度を割り当てます。
- 1 と 2 - 非常に低い
- 3、4 - 低
- 5 と 6 - 中
- 7 と 8 - 高
- 9 と 10 - クリティカル
コネクタの入力
次のパラメータを使用してコネクタを構成します。
パラメータ名 | 種類 | デフォルト値 | 必須 | 説明 |
---|---|---|---|---|
環境 | DDL | なし | はい | 必要な環境(例: Customer One)を選択します。 アラートの [環境] フィールドが空の場合、このアラートはこの環境に挿入されます。 |
実行間隔 | 整数 | 0:0:0:10 | いいえ | 接続を実行する時間を選択します。 |
プロダクト フィールド名 | 文字列 | device_product | いいえ | 商品名が保存されるフィールドの名前。 デフォルト値は 商品名は主にマッピングに影響します。コネクタのマッピング プロセスを合理化して改善するために、デフォルト値 |
イベント フィールド名 | 文字列 | name | いいえ | イベント名(サブタイプ)を特定するために使用されるフィールド名。 |
スクリプトのタイムアウト(秒) | 文字列 | 500 | いいえ | 現在のスクリプトを実行している Python プロセスのタイムアウト上限(秒単位)。 |
サーバー アドレス | 文字列 | なし | はい | https://{IP}:{PORT} |
ユーザー名 | 文字列 | なし | はい | ArcSight アカウントのユーザー名。 |
パスワード | パスワード | なし | はい | ArcSight アカウントのパスワード。 |
イベント数の上限 | Integer | 15 | はい | 相関関係ごとに取得するイベントの最大数を入力します。イベントの数を制限します(10 など)。 |
Cases Folder Path | 文字列 | I:\SiemShare\CorrelationSource |
はい | ケースファイルの場所( 注: Cases Folder Path パラメータは、お客様ごとに変更できます。 フルパス。例: |
アラート数の上限 | 整数 | 10 | はい | コネクタのサイクルごとに処理するアラートの最大数(10 など)。 |
環境フィールド名 | 文字列 | event.customerURI | はい | ケースの環境を取得するフィールドの名前(例: event.customerUri)。 |
Secondary Device Product Field | 文字列 | なし | いいえ | 元のプロダクト フィールド(コネクタの DeviceProductField)をセカンダリ プロダクト フィールドの値に置き換えます。例: CustomDeviceString2 |
アラート カスタム フィールド名 | 文字列 | なし | いいえ | baseEventCount、agent_address、device_assetId などのカスタム フィールド値を ArcSight からアラートに取得します。 |
完了したファイルの保持日数 | Integer | 3 | はい | 各 DONE CSV ファイルを保持する日数。 |
エラー ファイルの保持日数 | Integer | 14 | はい | 各 ERROR csv ファイルを保持する日数。 |
プロキシ サーバーのアドレス | 文字列 | なし | いいえ | 使用するプロキシ サーバーのアドレス。 |
プロキシのユーザー名 | 文字列 | なし | いいえ | 認証に使用するプロキシのユーザー名。 |
プロキシ パスワード | パスワード | なし | いいえ | 認証に使用するプロキシ パスワード。 |
コネクタルール
コネクタはプロキシをサポートしています。
ArcSight - セキュリティ イベント コネクタ
ArcSight から相関関係を取得します。このコネクタは Google SecOps の SaaS デプロイに適しており、本番環境での使用におすすめです。
このコネクタを使用するには、前提条件の手順を完了する必要があります。
コネクタの入力
次のパラメータを使用してコネクタを構成します。
パラメータの表示名 | 種類 | デフォルト値 | 必須 | 説明 | |
---|---|---|---|---|---|
プロダクト フィールド名 | 文字列 | タイプ | はい | 商品名が保存されるフィールドの名前。 デフォルト値は 商品名は主にマッピングに影響します。コネクタのマッピング プロセスを合理化して改善するため、デフォルト値 |
|
イベント フィールド名 | 文字列 | name | はい | イベント名(サブタイプ)を特定するフィールドの名前。 |
|
環境フィールド名 | 文字列 | "" | いいえ | 環境名が保存されるフィールドの名前。 環境フィールドがない場合、コネクタはデフォルト値を使用します。 |
|
Environment Regex Pattern |
文字列 | .* | FALSE | いいえ |
デフォルト値 正規表現パターンが null か空の場合、または環境値が null の場合、最終的な環境の結果はデフォルト環境になります。 |
スクリプトのタイムアウト(秒) | Integer | 360 | はい | 現在のスクリプトを実行する Python プロセスのタイムアウト上限(秒単位)。 |
|
API ルート | 文字列 | https://{ip} |
はい | ArcSight インスタンスの API ルート。 | |
ユーザー名 | 文字列 | なし | はい | ArcSight アカウントのユーザー名。 | |
パスワード | パスワード | なし | はい | ArcSight アカウントのパスワード。 | |
レポート名 | 文字列 | なし | はい | イベントの取得に使用されるレポートの名前。 | |
基本イベントを取得する | チェックボックス | オン | はい | 有効にすると、コネクタはベースイベントも取得します。 | |
取得する最も低い優先度 | 整数 | なし | いいえ | イベントの取得に使用される最も低い優先度。有効な値の範囲は 1 ~ 10 です。何も指定しない場合、すべてのイベントが取り込まれます。 | |
取得する最大イベント数 | 整数 | 100 | いいえ | コネクタのイテレーションごとに処理するアラートの数。許容最大値は 1000 です。 | |
動的リストをブロックリストとして使用する | チェックボックス | オン | はい | 選択すると、コネクタは動的リストを拒否リストとして使用します。 |
|
SSL を確認する | チェックボックス | オフ | はい | 選択すると、ArcSight サーバーに接続するときに SSL 証明書が検証されます。 | |
プロキシ サーバーのアドレス | 文字列 | なし | いいえ | 使用するプロキシ サーバーのアドレス。 | |
プロキシのユーザー名 | 文字列 | なし | いいえ | 認証に使用するプロキシのユーザー名。 | |
プロキシ パスワード | パスワード | いいえ | 認証に使用するプロキシ パスワード。 |
コネクタルール
コネクタはプロキシをサポートしています。
ジョブ
ケースをクローズ
このジョブには次のパラメータが必要です。
パラメータ名 | 種類 | デフォルト値 | 必須 | 説明 |
---|---|---|---|---|
サーバー アドレス | 文字列 | 192.0.2.1 | はい | なし |
ユーザー名 | 文字列 | なし | ○ | なし |
パスワード | パスワード | なし | ○ | なし |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。