將 Splunk 與 Google SecOps 整合

本文提供指南,說明如何整合 Splunk 與 Google SecOps。

事前準備

將 Splunk 與 Google SecOps 整合前,請先為部署架構選擇合適的擷取方法,並確認環境符合所有必要依附元件、網路路徑和存取權。

Google SecOps 支援兩種擷取方法:

  • 以推送為基礎的擷取:Splunk 會在本地評估快訊,並使用 TA-Siemplify 外掛程式和快訊觸發動作,將事件直接推送至 Google SecOps。您不必在 Google SecOps 中設定任何連結器。

  • 提取式擷取: Google SecOps 連接器會定期查詢 Splunk REST API 端點,以擷取快訊、SPL 搜尋結果或 Splunk ES 顯著事件。

推送式擷取

以推送為基礎的擷取作業需要從 Splunk 直接連出 HTTPS 連線至 Google SecOps,以及在 Splunk 搜尋頭上進行特定外掛程式設定。

設定以推送為基礎的擷取作業前,請先確認符合下列規定:

  1. Splunkbase 下載並安裝 TA-Siemplify 套件至所有目標 Splunk 搜尋頭。在分散式環境中,請使用 Splunk Deployer 或 Deployment Server,在整個搜尋頭叢集中部署外掛程式。

  2. 確認 Search Head 已安裝相容版本的 Splunk Common Information Model (Splunk_SA_CIM),以支援模組化快訊和記錄。

  3. 請確認 Splunk Search Heads 可透過 HTTPS (TCP 通訊埠 443) 存取 Google SecOps 執行個體網址。

  4. 確認您在 Google SecOps 中擁有帳戶,且具備產生 API 金鑰的管理權限 (依序點選「設定」>「進階」>「API」)。確認產生的 API 金鑰已指派具備警報和案件建立權限的角色。

  5. 如果您打算從轉換搜尋 (例如使用 statscharttimechart 的搜尋) 擷取原始事件,請確保在搜尋標題的 savedsearches.conf 中設定 dispatch.buckets = 1

提取式擷取

如要執行提取式擷取、劇本動作和同步工作,Google SecOps (或遠端代理程式) 必須與 Splunk 建立連入管理連線。

設定提取連接器、動作或工作前,請先確認下列需求:

  1. 網路連線:確認從 Google SecOps (或遠端代理程式) 到 Splunk 管理 REST API 連接埠 (預設為 8089/TCP) 的網路視線。

  2. 自訂 CA 憑證:如果 Splunk 執行個體使用私人或內部 CA 憑證,請確認您在 Google SecOps 中執行的 Splunk 整合版本為 26.0 以上。

  3. 驗證:取得有效的 Splunk 使用者憑證 (使用者名稱和密碼),或產生 Splunk Bearer 權杖 (如要在 Splunk 平台上啟用這項驗證方法,必須進行權杖驗證)。

  4. Splunk 角色功能:確認驗證 Splunk 帳戶的角色具備下列功能:

    • search
    • schedule_search
    • edit_tcp (僅在使用「提交活動」動作時為必填)
    • edit_notable_events (只有在使用「Update Notable Events」動作或 Splunk ES 同步處理作業時才需要)
  5. 資料儲存庫和查詢權限:確認驗證帳戶有權存取所選元件的相關 Splunk 資料儲存庫:

    • Splunk 提取連接器siemplify_alerts 對照表 (在「提取」模式中安裝及設定 TA-Siemplify 時填入) 的讀取權限。
    • Splunk 查詢連接器和動作
      • 目標事件索引的搜尋權限 (不需要 TA-Siemplify)
      • 如果使用「提交事件」動作,則需要目標索引的寫入和輸入權限。
    • Splunk ES - 重要事件連接器和工作:已安裝並啟用 Splunk Enterprise Security (ES),且具備 notable 索引的讀取權限,以及 get_notable_index 巨集的存取權 (不需 TA-Siemplify)

整合參數

請使用下列參數設定整合:

參數顯示名稱 類型 預設值 為必填項目 說明
伺服器位址 字串 {SCHEMA}://{IP}:{PORT} Splunk 伺服器的位址。
使用者名稱 字串 不適用 用來連線至 Splunk 的使用者電子郵件地址。
密碼 密碼 不適用 相應使用者的密碼。
API 權杖 密碼 不適用 Splunk API 權杖。如果這個欄位不是空白,API 權杖的優先順序會高於其他驗證方法。
驗證 SSL 核取方塊 已取消勾選 如果 Splunk 連線需要 SSL 驗證 (預設為取消勾選),請勾選這個核取方塊。
CA 憑證檔案 字串 不適用 Base64 編碼的 CA 憑證檔案。

如需在 Google SecOps 中設定整合功能的操作說明,請參閱「設定整合功能」。

如有需要,您可以在稍後階段進行變更。設定整合執行個體後,您可以在應對手冊中使用該執行個體。如要進一步瞭解如何設定及支援多個執行個體,請參閱「支援多個執行個體」。

動作

如要進一步瞭解動作,請參閱「 從工作台回覆待處理動作」和「執行手動動作」。

取得主辦活動

在 Splunk 中取得與主機相關的事件。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
每個主辦方的活動上限 整數 100 指定每個主機要傳回的事件數。
結果來源 字串 -24 小時 指定活動的開始時間。
結果傳送至 字串 現在 指定活動的結束時間。
結果欄位 CSV 不適用 指定要傳回的欄位清單 (以半形逗號分隔)。
索引 字串 不適用 搜尋與主機相關的事件時,請指定要使用的索引。如果未提供任何內容,動作就不會使用索引。
住家房卡 字串 主機 指定用來取得主機事件資訊的鍵。預設值:host。

Run On

這項操作會對主機名稱實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
成功 True/False success:False
JSON 結果
[{
    "app": "SA-AccessProtection",
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087674",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "02-02-2021 04:01:58.404 +0200 INFO  SavedSplunker - savedsearch_id=\"nobody;SA-AccessProtection;Access - Default Account Usage - Rule\", search_type=\"\", user=\"admin\", app=\"SA-AccessProtection\", savedsearch_name=\"Access - Default Account Usage - Rule\", priority=default, status=success, digest_mode=1, scheduled_time=1612179932, window_time=0, dispatch_time=1612179969, run_time=51348.242, result_count=0, alert_actions=\"\", sid=\"rt_scheduler__admin_U0EtQWNjZXNzUHJvdGVjdGlvbg__RMD509c859ea7b9951b8_at_1612179932_61.40533\", suppressed=1, thread_id=\"AlertNotifierWorker-0\", workload_pool=\"\"",
    "_serial": "0",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "scheduler",
    "_subsecond": ".404",
    "_time": "2021-02-02T04:01:58.404+02:00"
},
{
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087731",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "127.0.0.1 - admin [02/Feb/2021:04:01:58.172 +0200] \"POST /servicesNS/nobody/SA-AccessProtection/saved/searches/Access%20-%20Default%20Account%20Usage%20-%20Rule/notify?trigger.condition_state=1 HTTP/1.1\" 200 1985 - - - 3ms",
    "_serial": "1",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "splunkd_access",
    "_subsecond": ".172",
    "_time": "2021-02-02T04:01:58.172+02:00"
},
{
    "app": "SA-EndpointProtection",
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087653",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "02-02-2021 04:01:57.804 +0200 INFO  SavedSplunker - savedsearch_id=\"nobody;SA-EndpointProtection;Endpoint - Should Timesync Host Not Syncing - Rule\", search_type=\"\", user=\"admin\", app=\"SA-EndpointProtection\", savedsearch_name=\"Endpoint - Should Timesync Host Not Syncing - Rule\", priority=default, status=success, digest_mode=1, scheduled_time=1612179932, window_time=300, dispatch_time=1612179970, run_time=51347.420, result_count=0, alert_actions=\"\", sid=\"rt_scheduler__admin_U0EtRW5kcG9pbnRQcm90ZWN0aW9u__RMD5ef3c08822811b7cd_at_1612179932_62.25751\", suppressed=1, thread_id=\"AlertNotifierWorker-0\", workload_pool=\"\"",
    "_serial": "2",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "scheduler",
    "_subsecond": ".804",
    "_time": "2021-02-02T04:01:57.804+02:00"
}]
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗或停止應對手冊執行:

如果成功且有結果:「Successfully returned events for the following hosts in Splunk: \n {0}」。format(entity.identifier)

如果成功,但部分主機沒有結果:「No events were found for the following hosts in Splunk:\n {0}".format(entity.identifier)

如果成功,但並非所有主機都有結果:「No events were found for the provided hosts in Splunk」(在 Splunk 中找不到所提供主機的事件)

動作應會失敗並停止執行應對手冊:

如果發生重大錯誤,例如憑證錯誤、無法連線至伺服器等:「執行『取得主辦方活動』動作時發生錯誤。原因:{0}''.format(error.Stacktrace)

如果為 400:「Error executing action "Get Host Events". 原因:{0}''.format(messages/text)

一般
案件總覽表格

名稱:{Entity.identifier} 事件

欄:根據結果。

Ping

在 Google Security Operations Marketplace 分頁的整合設定頁面中,使用提供的參數測試與 Splunk 的連線。

參數

不適用

Run On

這項動作不會在實體上執行,也沒有強制輸入的參數。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗,也不應停止劇本執行:
如果成功:「Successfully connected to the Splunk server with the provided connection parameters!」(已使用提供的連線參數成功連線至 Splunk 伺服器!)

動作應會失敗並停止執行劇本:
如果未成功:「Failed to connect to the Splunk server! Error is {0}".format(exception.stacktrace)

一般

Splunk Csv Viewer

參數

參數 類型 預設值 為必填項目 說明
結果 字串 不適用 原始結果。

Run On

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

動作執行結果

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

SplunkQuery

在 Splunk 中執行查詢。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
搜尋模式 DDL

聰明有智慧

可能的值:

  • 詳細
  • 聰明有智慧
  • 快速
指定執行搜尋的模式。
查詢 字串 指定要執行的查詢。例如:index="_internal"
結果數量上限 整數 100

指定要傳回的結果數量。
注意:這項參數會將「head」關鍵字附加至提供的查詢。預設值為 100。

結果來自 字串 -24 小時 指定查詢的開始時間。預設值:-24h
結果 字串 現在 指定查詢的結束時間。預設值:now。
結果欄位 CSV

指定要傳回的欄位清單 (以逗號分隔)。
注意:這個參數會將「fields」關鍵字附加至提供的查詢。

Run On

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_succeed True/False is_succeed:False
JSON 結果
[{
    "app": "SA-AccessProtection",
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087674",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "02-02-2021 04:01:58.404 +0200 INFO  SavedSplunker - savedsearch_id=\"nobody;SA-AccessProtection;Access - Default Account Usage - Rule\", search_type=\"\", user=\"admin\", app=\"SA-AccessProtection\", savedsearch_name=\"Access - Default Account Usage - Rule\", priority=default, status=success, digest_mode=1, scheduled_time=1612179932, window_time=0, dispatch_time=1612179969, run_time=51348.242, result_count=0, alert_actions=\"\", sid=\"rt_scheduler__admin_U0EtQWNjZXNzUHJvdGVjdGlvbg__RMD509c859ea7b9951b8_at_1612179932_61.40533\", suppressed=1, thread_id=\"AlertNotifierWorker-0\", workload_pool=\"\"",
    "_serial": "0",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "scheduler",
    "_subsecond": ".404",
    "_time": "2021-02-02T04:01:58.404+02:00"
},
{
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087731",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "127.0.0.1 - admin [02/Feb/2021:04:01:58.172 +0200] \"POST /servicesNS/nobody/SA-AccessProtection/saved/searches/Access%20-%20Default%20Account%20Usage%20-%20Rule/notify?trigger.condition_state=1 HTTP/1.1\" 200 1985 - - - 3ms",
    "_serial": "1",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "splunkd_access",
    "_subsecond": ".172",
    "_time": "2021-02-02T04:01:58.172+02:00"
},
{
    "app": "SA-EndpointProtection",
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087653",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "02-02-2021 04:01:57.804 +0200 INFO  SavedSplunker - savedsearch_id=\"nobody;SA-EndpointProtection;Endpoint - Should Timesync Host Not Syncing - Rule\", search_type=\"\", user=\"admin\", app=\"SA-EndpointProtection\", savedsearch_name=\"Endpoint - Should Timesync Host Not Syncing - Rule\", priority=default, status=success, digest_mode=1, scheduled_time=1612179932, window_time=300, dispatch_time=1612179970, run_time=51347.420, result_count=0, alert_actions=\"\", sid=\"rt_scheduler__admin_U0EtRW5kcG9pbnRQcm90ZWN0aW9u__RMD5ef3c08822811b7cd_at_1612179932_62.25751\", suppressed=1, thread_id=\"AlertNotifierWorker-0\", workload_pool=\"\"",
    "_serial": "2",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "scheduler",
    "_subsecond": ".804",
    "_time": "2021-02-02T04:01:57.804+02:00"
}]
案件總覽
結果類型 值/說明 類型
輸出訊息*

動作不應失敗或停止應對手冊執行:

如果成功且有結果:「Successfully returned results for the query "{0}" in Splunk」。format(query)

如果成功但沒有結果:「在 Splunk 中找不到與查詢『{0}』相符的結果」。format(query)

非同步訊息:「等待查詢 {0} 執行完畢。」。format(查詢名稱)

動作應會失敗並停止執行應對手冊:

如果發生重大錯誤,例如憑證錯誤、無法連線至伺服器或其他錯誤:「Error executing action "SplunkQuery". 原因:{0}''.format(error.Stacktrace)

如果為 400:「Error executing action "SplunkQuery". 原因:{0}''.format(messages/text)

一般
案件總覽表格

名稱:Splunk 查詢結果

資料欄 - 根據結果。

一般

提交活動

將事件提交至 Splunk。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
索引 字串 main 指定要建立事件的索引。
事件 字串 不適用 指定需要提交的原始事件。
主機 字串 不適用 指定與活動相關的主機。
來源 字串 不適用 指定事件來源。例如:www.
Sourcetype 字串 不適用 指定事件的來源類型。範例:web_event

Run On

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
成功 True/False success:False
JSON 結果
{
    "index": "default",
    "bytes": 70,
    "host": "dogo",
    "source": "www",
    "sourcetype": "web_event"
}
案件總覽
結果類型 值/說明 類型
輸出訊息*

動作不應失敗或停止應對手冊執行:

如果成功:「Successfully added a new event to index "{0}" in Splunk.」。format(index)

動作應會失敗並停止執行應對手冊:

如果發生嚴重錯誤,例如憑證錯誤、無法連線至伺服器或其他錯誤:「執行『提交事件』動作時發生錯誤。原因:{0}''.format(error.Stacktrace)

如果為 400:「Error executing action "Submit Event". 原因:{0}''.format(messages/text)

一般

更新重要事件

更新 Splunk ES 中的重大事件。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
重要事件 ID CSV 不適用 指定重要事件的 ID。範例:1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7@@notable@@cb87390ae72763679d3f6f8f097ebe2b,1D234D5B-1531-2D2B-BB94-41C439BE12B7@@notable@@cb87390ae72763679d3f6f8f097ebe2b
狀態 DDL

請選取一項

可能的值包括:

請選取一項

未指派

新增

進行中

待處理

已解決

已關閉

指定重要事件的新狀態。
急迫性 DDL

請選取一項

可能的值包括:

請選取一項

重大

參考用

為重要事件指定新的緊急程度。
新擁有者 字串 不適用 指定重要事件的新擁有者。
註解 字串 不適用 指定重大事件的註解。

Run On

這項操作不會對實體執行。

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_success True/False is_success:False
案件總覽
結果類型 值 / 說明 類型
輸出訊息*

動作不應失敗或停止應對手冊執行:

如果成功且有可用資料 (is_success=true)

print "Successfully updated {0} notable events in Splunk.".format(count(notable_events))

如果更新失敗 (status_code=400,is_success=false):

print "Action wasn't able to update notable events. Reason:{0}".format(string_from_response)

動作應會失敗並停止執行應對手冊:

如果發生重大錯誤 (例如憑證錯誤、無法連線至伺服器等):

print "Error executing action "Update Notable Events". 原因:{0}''.format(error.Stacktrace)

一般

執行實體查詢

在 Splunk 中執行實體查詢。

如何使用動作參數?

這項動作可讓您輕鬆擷取與實體相關的資訊。舉例來說,您可能想查看受所提供雜湊影響的端點事件數量,但不想建立複雜的查詢,這時就能使用這項功能。如要在 Splunk 中解決這個問題,您需要準備下列查詢:index="main" | where (device_ip="10.0.0.1" or device_ip="10.12.12.12") and (hash="bad_hash_1" or hash="bad_hash_2")如要使用「執行實體查詢」動作建立相同查詢,請按照下列方式填寫動作參數:

查詢 index="main"
IP 實體金鑰 device_ip
檔案雜湊實體金鑰 hash
跨實體運算子

其他欄位則可留空。

如果想瞭解有多少端點受到提供的雜湊影響,則「執行實體查詢」的設定如下所示。

查詢 index="main"
檔案雜湊實體金鑰 hash

在這種情況下,「跨實體運算子」不會有影響,因為只有在提供多個「實體鍵」時,才會影響查詢。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
搜尋模式 DDL

聰明有智慧

可能的值:

  • 詳細
  • 聰明有智慧
  • 快速

指定執行搜尋的模式。
查詢 字串 指定需要執行的查詢,但不含「Where」子句。例如:index="_internal"
結果數量上限 整數 100 指定要傳回的結果數量。附註:這個參數會將「head」關鍵字附加至提供的查詢。預設值為 100。
結果來自 字串 -24 小時 指定查詢的開始時間。預設值:-24h
結果 字串 現在 指定查詢的結束時間。預設值:now。
結果欄位 CSV 不適用

指定要傳回的欄位清單 (以逗號分隔)。
注意:這個參數會將「fields」關鍵字附加至提供的查詢。

IP 實體金鑰 字串 不適用 指定要搭配 IP 實體使用的金鑰。詳情請參閱動作說明文件。
主機名稱實體鍵 字串 不適用 準備 . 時,請指定應搭配主機名稱實體使用的金鑰。詳情請參閱動作說明文件。
檔案雜湊實體金鑰 字串 不適用 指定要與檔案雜湊實體搭配使用的金鑰。詳情請參閱動作說明文件。
使用者實體鍵 字串 不適用 指定應搭配使用者實體使用的鍵。詳情請參閱動作說明文件。
網址實體鍵 字串 不適用 指定應搭配網址實體使用的金鑰。詳情請參閱動作說明文件。
電子郵件地址實體鍵 字串 不適用 指定要搭配電子郵件地址實體使用的金鑰。詳情請參閱動作說明文件。
Stop If Not Enough Entities 核取方塊 已勾選 如果啟用這項設定,除非指定「.. 實體鍵」的所有實體類型都適用,否則動作不會開始執行。舉例來說,如果指定「IP 實體鍵」和「檔案雜湊實體鍵」,但範圍內沒有檔案雜湊,則啟用這個參數後,動作就不會執行查詢。
跨實體運算子 DDL

可能的值:

指定不同實體類型之間應使用的邏輯運算子。

Run On

這項動作會對下列實體執行:

  • IP 位址
  • 主機
  • 使用者
  • 雜湊
  • 網址

動作執行結果

指令碼執行結果
指令碼結果名稱 值選項 範例
is_succeed True/False is_succeed:False
JSON 結果
[{
    "app": "SA-AccessProtection",
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087674",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "02-02-2021 04:01:58.404 +0200 INFO  SavedSplunker - savedsearch_id=\"nobody;SA-AccessProtection;Access - Default Account Usage - Rule\", search_type=\"\", user=\"admin\", app=\"SA-AccessProtection\", savedsearch_name=\"Access - Default Account Usage - Rule\", priority=default, status=success, digest_mode=1, scheduled_time=1612179932, window_time=0, dispatch_time=1612179969, run_time=51348.242, result_count=0, alert_actions=\"\", sid=\"rt_scheduler__admin_U0EtQWNjZXNzUHJvdGVjdGlvbg__RMD509c859ea7b9951b8_at_1612179932_61.40533\", suppressed=1, thread_id=\"AlertNotifierWorker-0\", workload_pool=\"\"",
    "_serial": "0",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "scheduler",
    "_subsecond": ".404",
    "_time": "2021-02-02T04:01:58.404+02:00"
},
{
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087731",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "127.0.0.1 - admin [02/Feb/2021:04:01:58.172 +0200] \"POST /servicesNS/nobody/SA-AccessProtection/saved/searches/Access%20-%20Default%20Account%20Usage%20-%20Rule/notify?trigger.condition_state=1 HTTP/1.1\" 200 1985 - - - 3ms",
    "_serial": "1",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "splunkd_access",
    "_subsecond": ".172",
    "_time": "2021-02-02T04:01:58.172+02:00"
},
{
    "app": "SA-EndpointProtection",
    "_bkt": "_internal~425~1A082D7B-D5A1-4A2B-BB94-41C439BE3EB7",
    "_cd": "425:9087653",
    "_indextime": "1612231318",
    "_kv": "1",
    "_raw": "02-02-2021 04:01:57.804 +0200 INFO  SavedSplunker - savedsearch_id=\"nobody;SA-EndpointProtection;Endpoint - Should Timesync Host Not Syncing - Rule\", search_type=\"\", user=\"admin\", app=\"SA-EndpointProtection\", savedsearch_name=\"Endpoint - Should Timesync Host Not Syncing - Rule\", priority=default, status=success, digest_mode=1, scheduled_time=1612179932, window_time=300, dispatch_time=1612179970, run_time=51347.420, result_count=0, alert_actions=\"\", sid=\"rt_scheduler__admin_U0EtRW5kcG9pbnRQcm90ZWN0aW9u__RMD5ef3c08822811b7cd_at_1612179932_62.25751\", suppressed=1, thread_id=\"AlertNotifierWorker-0\", workload_pool=\"\"",
    "_serial": "2",
    "_si": [
        "splunk",
        "_internal"
    ],
    "_sourcetype": "scheduler",
    "_subsecond": ".804",
    "_time": "2021-02-02T04:01:57.804+02:00"
}]
案件總覽
結果類型 值/說明 類型
輸出訊息*

動作不應失敗或停止應對手冊執行:

如果成功且有結果:「Successfully returned results for the query "{0}" in Splunk」。format(query)

如果成功但沒有結果:「在 Splunk 中找不到與查詢『{0}』相符的結果」。format(query)

非同步訊息:「等待查詢 {0} 執行完畢。」。format(查詢名稱)

如果啟用「Stop If Not Enough Entities」(實體不足時停止),但提供的「Entity Keys」(實體鍵) 實體類型不足 (is_success=false):動作無法建構查詢,因為指定「.. Entity Keys」的實體類型不足。請停用「Stop If Not Enough Entities」參數,或為每個指定的「.. Entity Key」至少提供一個實體。

動作應會失敗並停止執行應對手冊:

如果發生重大錯誤,例如憑證錯誤、無法連線至伺服器或其他錯誤:「Error executing action "Execute Entity Query". 原因:{0}''.format(error.Stacktrace)

如果為 400:「執行動作『Execute Entity Query』時發生錯誤。原因:{0}''.format(messages/text)

一般
案件總覽表格

名稱:Splunk 查詢結果

欄:根據結果。

一般

連接器

如要進一步瞭解如何在 Google SecOps 中設定連接器,請參閱「擷取資料 (連接器)」。

Splunk 查詢連接器

連結器會傳送動態清單 (whitelist) 中的查詢、擷取結果,並根據擷取的結果建立案件。

查看記錄的 Splunk 查詢範例

  1. 查詢應以動態清單 (whitelist) 規則的形式輸入。

  2. 如果搜尋查詢包含多個篩選條件,請在篩選條件之間使用空格做為分隔符號,例如 index=cim_modactions sourcetype=modular_alerts:risk

  3. 使用多個動態清單 (whitelist) 規則,而不是在同一個規則中輸入多個以空格分隔的搜尋篩選器,會導致系統為每個新增規則執行個別搜尋。

    • index=cim_modactions
    • sourcetype=modular_alerts:send_data_to_siemplify
    • index=_internal sourcetype=splunkd
    • component=sendmodalert
    • action=send_data_to_siemplify
    • index=_internal source=/opt/splunk/var/log/splunk/send_data_to_siemplify_modalert.log

連接器參數

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

參數
Product Field Name 必要

輸入來源欄位名稱,以擷取 Product Field 名稱。

預設值為 device_product

Event Field Name 必要

輸入要擷取的來源欄位名稱。Event Field name。

預設值為 app

API Root 必要

Splunk 執行個體的 API 根目錄。

預設值為 https://IP:8089

Username 必要

Splunk 帳戶的使用者名稱。

Password 必要

Splunk 帳戶的密碼。

API Token 選填

Splunk API 權杖。

如果這個欄位有任何值,API 權杖的優先順序會高於其他驗證方法。

Verify SSL 必要

如果勾選這個選項,系統會驗證連線至 CrowdStrike 伺服器的 SSL 憑證是否有效。

(預設為不勾選)。

Environment Field Name 選填

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

Rule Generator Field 必要

用於對應規則產生器值的欄位名稱。

Alert Name Field Name 必要

快訊名稱。

Events Count Limit Per Query 選用

每項查詢要擷取的事件數量上限。

Max Day Backwards 選用

要擷取事件的天數。

Aggregate Events Query 選用

啟用後,連接器會將所有事件合併為一則快訊。

預設為停用。

PythonProcessTimeout (Seconds) 必要

執行目前指令碼的 Python 程序逾時限制。

預設值為 60 秒。

Proxy Server Address 選填

要使用的 Proxy 伺服器位址。

Proxy Username 選填

用於驗證的 Proxy 使用者名稱。

Proxy Password 選填

用於驗證的 Proxy 密碼。

Environment Regex Pattern 選填

要在 Environment Field Name 欄位中找到的值上執行的規則運算式模式。

預設值 .* 會擷取所有值,並傳回未變更的值。

您可以使用規則運算式邏輯,透過這個參數操控環境欄位。

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

連接器規則

連接器支援 Proxy。

Splunk Pull 連接器

將 Splunk 中的警告和事件擷取至 Google SecOps。

連接器參數

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

參數
Product Field Name 必要

輸入來源欄位名稱,以擷取 Product Field 名稱。

預設值為 device_product

Event Field Name 必要

輸入要擷取的來源欄位名稱。Event Field name。

預設值為 name

Environment Field Name 選填

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

如果找不到環境欄位,結果環境為 ""

預設值為 ""

Environment Regex Pattern 選填

要在 Environment Field Name 欄位中找到的值上執行的規則運算式模式。

預設值 .* 會擷取所有值,並傳回未變更的值。

您可以使用規則運算式邏輯,透過這個參數操控環境欄位。

如果規則運算式模式為空值或空白,或環境值為空值,最終環境結果為 ""

PythonProcessTimeout (Seconds) 必要

執行目前指令碼的 Python 程序逾時限制。

預設值為 60 秒。

Server Address 必要

Splunk API 伺服器的 IP 位址。

Port 必要

Splunk 執行個體的通訊埠。

預設值為 8089

Username 必要

Splunk 帳戶的使用者名稱。

Password 必要

Splunk 帳戶的密碼。

Time Frame 選填

擷取快訊的時間範圍。

預設值為 1 小時。

範例:

如果值設為 1 分鐘,連接器會擷取 1 分鐘前的快訊。

如果值設為 3 小時,連線器會從 3 小時前開始擷取快訊。

如果值設為 1 天或 1 週,連接器會分別從 1 天 (24 小時) 或 1 週前開始擷取快訊。

Alerts Count Limit 選填

連接器在每次疊代中傳回的快訊數量。

預設值為 100。

Use SSL 選填

勾選以啟用 SSL 或 TLS 連線。

(預設為不勾選)。

Proxy Server Address 選填

要使用的 Proxy 伺服器位址。

Proxy Username 選填

用於驗證的 Proxy 使用者名稱。

Proxy Password 選填

用於驗證的 Proxy 密碼。

連接器規則

連接器支援 Proxy。

Splunk ES - Notable Events Connector

從 Splunk ES 擷取重要事件。

定義案件優先順序

案件優先順序是由重大事件中的 Urgency 參數定義。將重要事件擷取至 Google SecOps 時,系統只會考量這項參數。

連接器參數

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

參數
Product Field Name 必要

輸入來源欄位名稱,以擷取 Product Field 名稱。

預設值為 Product Name

Event Field Name 必要

輸入要擷取的來源欄位名稱。Event Field name。

預設值為 index

Environment Field Name 選填

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

如果找不到環境欄位,系統會使用預設環境。

預設值為 ""

Environment Regex Pattern 選填

要在 Environment Field Name 欄位中找到的值上執行的規則運算式模式。

預設值 .* 會擷取所有值,並傳回未變更的值。

您可以使用規則運算式邏輯,透過這個參數操控環境欄位。

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

Script Timeout (Seconds) 必要

執行目前指令碼的 Python 程序逾時限制。

預設值為 180 秒。

Server Address 必要

Splunk 執行個體的伺服器位址。

預設值為 https://:8089

Username 選填

Splunk 帳戶的使用者名稱。

Password 選填

Splunk 帳戶的密碼。

API Token 必要

Splunk API 權杖。

如果這個欄位有任何值,API 權杖的優先順序會高於其他驗證方法。

Lowest Urgency To Fetch 必要

系統會使用最低急迫性擷取重要事件。

可能的值包括:

  • Informational
  • Low
  • Medium
  • High
  • Critical

預設值為 Medium

Fetch Max Hours Backwards 選填

要從幾小時前開始擷取重要事件。

預設值為 1 小時。

Only Drilldown Events 選填

啟用後,連接器會嘗試擷取下鑽事件,而不擷取基本事件。這項參數需要啟用 Fetch Base Events 選項。

預設為停用。

Padding Time 選填

用來做為緩衝的時間量 (以小時為單位)。

如未提供值,這個參數就不適用。

最長 12 小時。

Max Notable Events To Fetch 選填

每個連接器疊代要處理的重大事件數。

預設值為 10。

Use whitelist as a blacklist 必要

如果啟用,動態清單會做為封鎖清單使用。

預設為停用。

Verify SSL 必要

如果勾選這個選項,系統會驗證連線至 CrowdStrike 伺服器的 SSL 憑證是否有效。

(預設為不勾選)。

Proxy Server Address 選填

要使用的 Proxy 伺服器位址。

Proxy Username 選填

用於驗證的 Proxy 使用者名稱。

Proxy Password 選填

用於驗證的 Proxy 密碼。

Query Filter 選填

傳送至 Splunk 的額外查詢篩選器,用於取得重要事件。

這裡提供的值會附加至 WHERE 查詢子句。

Extract Base Events 選填

啟用後,連接器會使用作業相關資訊,擷取與重要事件相關的基礎事件。在其他情況下,連接器會根據重要事件建立 Google SecOps 事件。

如果這項參數設為 True,但連接器無法處理工作,連接器會改用重大事件的相關資訊。

(預設為啟用)。

Multivalue Fields 選填

以半形逗號分隔的欄位清單,內含多個實體。

舉例來說,如果某個欄位包含兩個主機名稱,系統會將重要事件拆分成兩個 Google SecOps 事件,以便正確對應實體。

Notable Event Data Along Base Event 選填

啟用後,除了基本事件外,這個連結器還會根據顯著事件新增 Google SecOps 事件。

預設為停用。

Rule Generator Field Name 選填

用於對應規則產生器值的欄位名稱。

系統只會使用重大事件本身的資訊進行對應,並忽略其他事件。如果提供無效值,連接器會將欄位設為 rule_name 值。

Alert Name Source 選填

快訊名稱的來源。

可能的值包括:

  • Search Name
  • Rule Name

預設值為 Search Name

如何使用 Query Filter 參數

如要根據特定參數縮小重大事件的範圍,請使用 Query Filter 參數。這個參數中提供的值會附加至查詢的 WHERE 子句,用於取得重要事件。

傳送的查詢範例如下:

(`get_notable_index` OR `get_sequenced_index`) | eval `get_event_id_meval`,
rule_id=event_id | tags outputfield=tag | `mvappend_field(tag,orig_tag)` |
`notable_xref_lookup` | `get_correlations` | `get_current_status` | `get_owner`
| `get_urgency` | typer | where (urgency="medium" AND urgency="low") AND
(status_label="Unassigned" OR status_label="New")  | tail 50 | fields *

舉例來說,如果 Query Filter = isTesting = True,查詢會如下所示:

search (`get_notable_index` OR `get_sequenced_index`) | eval epoch=_time | eval
`get_event_id_meval`,rule_id=event_id | tags outputfield=tag |
`mvappend_field(tag,orig_tag)` | `notable_xref_lookup` | `get_correlations` |
`get_current_status` | `get_owner` | `get_urgency` | typer | where
(urgency!="informational" AND urgency!="low" **AND isTesting = "True"**) |
fields *

連接器規則

Splunk ES 連接器會使用動態清單和封鎖清單 (whitelistblacklist)。連接器會使用事件中的 search_name 欄位與動態清單進行比較。

連接器事件

[{
    "indicator": "2012/06/29_21:50", 
    "tlp": "TLP:RED", 
    "itype": "mal_url", 
    "severity": "very-high", 
    "classification": "public", 
    "detail": "", 
    "confidence": 50, 
    "actor": "", 
    "feed_name": "import", 
    "source": "admin", 
    "feed_site_netloc": "localhost", 
    "campaign": "", 
    "type": "url", 
    "id": "anomali:indicator-578a9be5-0e03-4ec0-940d-4b1842f40fd0", 
    "date_last": "2020-07-15 08:12:07 AM",
"Url": "indicator"
  },{
    "indicator": "2010/12/19_16:35", 
    "tlp": "TLP:RED", 
    "itype": "mal_url", 
    "severity": "very-high", 
    "classification": "public", 
    "detail": "", 
    "confidence": 50, 
    "actor": "", 
    "feed_name": "import", 
    "source": "admin", 
    "feed_site_netloc": "localhost", 
    "campaign": "", 
    "type": "url", 
    "id": "anomali:indicator-52cadd07-330a-45fd-962f-32e22d36a89a", 
    "date_last": "2020-07-15 08:12:07 AM"
  }]

工作

如要進一步瞭解工作,請參閱「 設定新工作」和「 進階排程」。

同步處理 Splunk ES 已結案的事件

同步處理已結案的 Splunk ES 顯著事件和 Google SecOps 快訊。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
伺服器位址 字串 https://IP:8089 Splunk 執行個體的伺服器位址。
使用者名稱 字串 不適用 Splunk 帳戶的使用者名稱。
密碼 密碼 不適用 Splunk 帳戶的密碼。
API 權杖 密碼 不適用 Splunk API 權杖。如果這個欄位不是空白,API 權杖會優先於其他驗證方法。
可回溯的小時數上限 整數 24 指定要回溯多少小時來同步處理狀態。預設值為 24 小時。
驗證 SSL 核取方塊 已勾選 如果啟用,請確認連線至 Splunk 伺服器的 SSL 憑證有效。

同步處理 Splunk ES 註解

這項工作會同步處理 Splunk ES 事件和 Google SecOps 案件中的留言。

參數

參數顯示名稱 類型 預設值 為必填項目 說明
伺服器位址 字串 https://IP:8089 Splunk 執行個體的伺服器位址。
使用者名稱 字串 不適用 Splunk 帳戶的使用者名稱。
密碼 密碼 不適用 Splunk 帳戶的密碼。
API 權杖 密碼 不適用 Splunk API 權杖。如果這個欄位不是空白,API 權杖會優先於其他驗證方法。
驗證 SSL 核取方塊 已勾選 如果啟用,請確認連線至 Splunk 伺服器的 SSL 憑證有效。

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