整合 ArcSight 與 Google SecOps

本文說明如何將 ArcSight 與 Google Security Operations (Google SecOps) 整合。

整合版本:42.0

安全性事件連接器先決條件

這個連接器可搭配 ArcSight 自動產生的報表使用。連接器會下載產生的報表、擷取事件 ID,然後使用 ArcSight API 取得事件的詳細資料。

設定安全性事件連接器

  1. 登入 ArcSight 控制台。

  2. 前往「報表」分頁,然後前往「查詢」部分。

  3. 如要建立新查詢,請輸入下列查詢名稱: Google SecOps SOAR Security Events Connector Query

    請注意「開始時間」和「結束時間」參數。建議以一小時為間隔查詢資料,但如有需要,可以增加間隔。

    設定範例如下:

    • 名稱:Google SecOps SOAR Security Events Connector Query
    • 查詢對象:活動
    • 開始時間: $Now - 1h
    • 結束時間: $Now
    • 做為時間戳記:結束時間
    • 列數上限:5000
  4. 定義查詢的欄位。就欄位而言,您需要具備下列項目:

    • 事件 ID
    • 名稱
    • 開始時間
    • 結束時間
    • 優先順序

    請確認「排序依據」欄中顯示「結束時間 ASC」

  5. 設定「條件」。您可以在這裡提供自己的篩選條件。

  6. 儲存查詢。

  7. 前往「報表」部分並建立新報表。如要指定報表,請輸入下列名稱:Google SecOps SOAR Security Events Connector Report。請為連接器設定的「報表名稱」參數使用相同名稱。

  8. 在「資料」分頁中,選取先前步驟中建立的查詢做為「資料來源」

  9. 在「參數」分頁中,將「報表格式」變更為「csv」,以符合連結器需求。

  10. 儲存報表。

  11. 在「報表名稱」參數的連接器設定中提供報表名稱。

  12. 執行測試,確保連接器正常運作。

為 ArcSight 設定 Google SecOps 共用資料夾

Google SecOps 伺服器

  1. /etc/passwd 檔案中找出 UIDGID

    cat /etc/passwd | grep scripting

    指令輸出範例如下:

    scripting:x:1001:1001:/home/scripting:/bin/bash

    UID 是第三個欄位,GID 則是指令輸出中的第四個欄位。

  2. 建立指令碼:

    1. 建立名為 configure_smp_nfs.sh 的檔案。

    2. 將下列內容複製到該檔案中。

      #!/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
      
    3. 請根據環境宣告 uidgidarcisght_ip 變數。

    4. 授予權限:

      chmod +x configure_smp_nfs.sh

    5. 執行指令碼:

      ./configure_smp_nfs.sh

ArcSight 伺服器

  1. 建立指令碼:

    1. 建立名為 configure_smp_nfs.sh 的檔案。

    2. 將下列內容複製到該檔案中。

      #!/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
      
    3. 根據您的環境宣告 siemplify_ip 變數。

舊版路徑使用者注意事項

修補程式安裝程式會將 /opt/siemplify/Correlations 資料夾權限覆寫為 siemplifyadmin

如果您使用舊路徑並套用升級,則需要按照下列步驟,將權限改回指令碼使用者:

  1. 開始升級前,請停止 NFS 伺服器服務:

    _systemctl stop nfs-server_

  2. 升級完成後,請變更資料夾權限:

    _chmod -R 755 /opt/siemplify/Correlations/_

    _chown -R scripting:scripting/opt/siemplify/Correlations/_

    _systemctl start nfs-server_

    _exportfs -a_

  3. 如要確認變更後 NFS 伺服器是否正常運作,請檢查其狀態:

    _systemctl status nfs-server_

建立及設定使用者,以便存取 API

  1. 登入 ArcSight 控制台。

  2. 建立Google_SecOps_API使用者群組,並在其中新增Google_SecOps_API使用者。Google SecOps 會透過 ArcSight ESM API 使用這個使用者。

    1. 前往「屬性」分頁,將「使用者類型」屬性設為Normal User

    2. 在「資源」分頁中,按一下建立的使用者群組。

    3. 從選單中選擇「編輯存取權控制」

    4. 在 ACL 編輯器的「檢查/編輯」視窗中:

      1. 在「事件」分頁中,新增先前建立的篩選器, Google_SecOps_Correlations_Filter。您也可以新增任何來源篩選器,授予 Google SecOps 存取權。

      2. 其他分頁使用預設設定。

      3. 按一下「新增」,選取「ArcSight System」>「Core」,然後選取「All Events」核取方塊。

        請務必確認已選取「所有事件」核取方塊。最低要求是納入所有會擷取至 Google SecOps 的關聯事件。

使用 ArcSight ESM API 時,Google Security Operations 主要會採用下列方法:

  • 核心服務:LoginGetSession

  • 管理員服務: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 True 或 False is_succeed:False

變更案件階段

說明

變更案件階段。有效階段包括 INITIAL、QUEUED、CLOSED、FINAL 和 FOLLOW_UP。

參數

參數名稱 類型 預設值 為必填項目 說明
案件名稱 字串 不適用 要更新的案件名稱。
階段 字串 不適用 案件的階段。示例:CLOSED、INITIAL

執行日期

這項操作會對所有實體執行。

動作結果

指令碼結果
指令碼結果名稱 值選項 範例
成功 True 或 False success:False

取得 Activelist 項目

說明

擷取 ArcSight 作用中清單項目,並傳回 CSV 輸出內容。

參數

參數名稱 類型 預設值 為必填項目 說明
有效清單 UUID 字串 不適用 範例:HTcILQWABABCr553ieI0Xmw==

執行日期

這項操作會對所有實體執行。

動作結果

指令碼結果
指令碼結果名稱 值選項 範例
Success_Indicator 不適用 不適用
JSON 結果
[
"12346e4d96f0a72c42015d69aaf0e8ab ,
 file.txt",
 "0e0776034e5e096704cd28cbd40cdbb5 ,
 Test.config"
]

取得查詢結果

說明

依據查詢 ID 取得查詢結果。查詢可做為報表的主要資料來源,或做為趨勢 (以一項查詢為準),用於另一項查詢的資料來源,進一步修正初始查詢結果。

參數

參數名稱 類型 預設值 為必填項目 說明
查詢 ID 字串 不適用 查詢 ID。
要傳回的項目數量上限 整數 100 指定要在回應中傳回多少項目。

應用實例

新增限制,指定要傳回的結果數量。

執行日期

這項操作會對所有實體執行。

動作結果

指令碼結果
指令碼結果名稱 值選項 範例
成功 True 或 False 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 不適用 不適用

乒乓

說明

測試連線。

參數

執行日期

這項操作會對所有實體執行。

動作結果

指令碼結果
指令碼結果名稱 值選項 範例
is_succeed True 或 False is_succeed:False

說明

您可以從控制台事件通道啟動 ArcSight Command Center 的搜尋作業。「事件完成搜尋」會尋找相關聯的屬性,該屬性儲存在多個欄位中 (例如 abc)。搜尋事件時,系統會搜尋儲存在指定欄位中的值 (例如,僅在名稱欄位中)。

參數

參數名稱 類型 預設值 為必填項目 說明
搜尋查詢 字串 不適用 搜尋查詢。
要傳回的項目數量上限 整數 100 指定要在回應中傳回多少項目。

應用實例

新增限制,指定要傳回的結果數量。

執行日期

這項操作會對所有實體執行。

動作結果

指令碼結果
指令碼結果名稱 值選項 範例
成功 True 或 False 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 Connector

本指南適用於 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 會自動為轉送至 Google SecOps 並在 ArcSight ESM 中觸發的關聯性建立索引和情境,方法是透過 ArcSight Forwarding Connector 模組和 API 存取權。

連接器嚴重程度優先順序

連接器會使用下列優先順序值指派嚴重程度:

  • 1 和 2 - 極低
  • 3 和 4 - 低
  • 5 和 6 - 中
  • 7 和 8 - 高
  • 9 和 10 - 嚴重

連接器輸入內容

請使用下列參數設定連接器:

參數名稱 類型 預設值 為必填項目 說明
環境 DDL 不適用

選取所需環境,例如「Customer One」

如果警報的「環境」欄位空白,警報就會插入此環境。

執行頻率 整數 0:0:0:10 選取執行連線的時間。
產品欄位名稱 字串 device_product

儲存產品名稱的欄位名稱。

預設值為 device_product

產品名稱主要會影響對應。為簡化及改善連接器的對應程序,預設值 device_product 會解析為程式碼參照的回退值。這個參數的任何無效輸入內容,預設都會解析為備用值。

事件欄位名稱 字串 名稱 用於判斷事件名稱 (子類型) 的欄位名稱。
指令碼逾時 (秒) 字串 500 執行目前指令碼的 Python 程序逾時限制 (以秒為單位)。
伺服器位址 字串 不適用 https://{IP}:{PORT}
使用者名稱 字串 不適用 ArcSight 帳戶的使用者名稱。
密碼 密碼 不適用 ArcSight 帳戶的密碼。
事件計數上限 整數 15 輸入每個關聯要擷取的事件數量上限。限制事件數量,例如 10 個。
案件資料夾路徑 字串 I:\SiemShare\CorrelationSource

案件檔案的位置,例如 I:\SiemShare\CorrelationSource

注意:案件資料夾路徑參數可從一個客戶變更為另一個客戶。

完整路徑。範例:C:\Desktop\CorrelationSource

快訊數量上限 整數 10 每個連接器週期要處理的警報數量上限,例如 10 個。
環境欄位名稱 字串 event.customerURI 要取得案件環境的欄位名稱,例如 event.customerUri。
次要裝置產品欄位 字串 不適用 將原始產品欄位 (來自連結器的 DeviceProductField) 替換為次要產品欄位的值。範例:CustomDeviceString2
警告自訂欄位名稱 字串 不適用 將 ArcSight 中的自訂欄位值 (例如 baseEventCount、agent_address、device_assetId) 擷取到快訊中。
已完成檔案的保留天數 整數 3 保留每個「已完成」CSV 檔案的天數。
錯誤檔案保留天數 整數 14 保留每個錯誤 CSV 檔案的天數。
Proxy 伺服器位址 字串 不適用 要使用的 Proxy 伺服器位址。
Proxy 使用者名稱 字串 不適用 用於驗證的 Proxy 使用者名稱。
Proxy 密碼 密碼 不適用 用於驗證的 Proxy 密碼。

連接器規則

連接器支援 Proxy。

ArcSight - Security Events Connector

從 ArcSight 提取關聯性。這個連結器適用於 Google SecOps 的 SaaS 部署作業,建議用於實際工作環境。

使用這個連結器前,請先完成必要步驟

連接器輸入內容

請使用下列參數設定連接器:

參數顯示名稱 類型 預設值 為必填項目 說明
產品欄位名稱 字串 類型

儲存產品名稱的欄位名稱。

預設值為 type

產品名稱主要會影響對應。為簡化及改善連接器的對應程序,預設值 type 會解析為程式碼參照的回退值。這個參數的任何無效輸入內容,預設都會解析為備用值。

事件欄位名稱 字串 名稱

決定事件名稱 (子類型) 的欄位名稱。

環境欄位名稱 字串 ""

儲存環境名稱的欄位名稱。

如果缺少環境欄位,連接器會使用預設值。

Environment Regex Pattern 字串 .* FALSE

要在「Environment Field Name」欄位中找到的值上執行的規則運算式模式。這個參數可讓您使用規則運算式邏輯,操控環境欄位。

使用預設值 .* 擷取必要的原始 Environment Field Name 值。

如果規則運算式模式為空值或空白,或環境值為空值,最終環境結果就是預設環境。

指令碼逾時 (秒) 整數 360

執行目前指令碼的 Python 程序逾時限制 (以秒為單位)。

API 根層級 字串 https://{ip} ArcSight 執行個體的 API 根目錄。
使用者名稱 字串 不適用 ArcSight 帳戶的使用者名稱。
密碼 密碼 不適用 ArcSight 帳戶的密碼。
報告名稱 字串 不適用 用於擷取事件的報表名稱。
擷取基本事件 核取方塊 已勾選 如果啟用,連接器也會擷取基本事件。
要擷取的最低優先順序 整數 不適用 用於擷取事件的最低優先順序。可能的值介於 1 到 10 之間。如未提供,系統會擷取所有事件。
要擷取的事件數量上限 整數 100 每個連接器疊代要處理的快訊數量。最多可輸入 1000 個字元。
將動態清單設為封鎖清單 核取方塊 已勾選

如果選取這個選項,連接器會將動態清單做為封鎖清單。

驗證 SSL 核取方塊 已取消勾選 如果選取這個選項,整合服務會在連線至 ArcSight 伺服器時驗證 SSL 憑證。
Proxy 伺服器位址 字串 不適用 要使用的 Proxy 伺服器位址。
Proxy 使用者名稱 字串 不適用 用於驗證的 Proxy 使用者名稱。
Proxy 密碼 密碼 用於驗證的 Proxy 密碼。

連接器規則

連接器支援 Proxy。

工作

關閉案件

這項作業需要下列參數:

參數名稱 類型 預設值 為必填項目 說明
伺服器位址 字串 192.0.2.1 不適用
使用者名稱 字串 不適用 不適用
密碼 密碼 不適用 不適用

還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。