將 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 搜尋頭上進行特定外掛程式設定。
設定以推送為基礎的擷取作業前,請先確認符合下列規定:
從 Splunkbase 下載並安裝 TA-Siemplify 套件至所有目標 Splunk 搜尋頭。在分散式環境中,請使用 Splunk Deployer 或 Deployment Server,在整個搜尋頭叢集中部署外掛程式。
確認 Search Head 已安裝相容版本的 Splunk Common Information Model (Splunk_SA_CIM),以支援模組化快訊和記錄。
請確認 Splunk Search Heads 可透過 HTTPS (TCP 通訊埠 443) 存取 Google SecOps 執行個體網址。
確認您在 Google SecOps 中擁有帳戶,且具備產生 API 金鑰的管理權限 (依序點選「設定」>「進階」>「API」)。確認產生的 API 金鑰已指派具備警報和案件建立權限的角色。
如果您打算從轉換搜尋 (例如使用
stats、chart或timechart的搜尋) 擷取原始事件,請確保在搜尋標題的savedsearches.conf中設定dispatch.buckets = 1。
提取式擷取
如要執行提取式擷取、劇本動作和同步工作,Google SecOps (或遠端代理程式) 必須與 Splunk 建立連入管理連線。
設定提取連接器、動作或工作前,請先確認下列需求:
網路連線:確認從 Google SecOps (或遠端代理程式) 到 Splunk 管理 REST API 連接埠 (預設為
8089/TCP) 的網路視線。自訂 CA 憑證:如果 Splunk 執行個體使用私人或內部 CA 憑證,請確認您在 Google SecOps 中執行的 Splunk 整合版本為 26.0 以上。
驗證:取得有效的 Splunk 使用者憑證 (使用者名稱和密碼),或產生 Splunk Bearer 權杖 (如要在 Splunk 平台上啟用這項驗證方法,必須進行權杖驗證)。
Splunk 角色功能:確認驗證 Splunk 帳戶的角色具備下列功能:
資料儲存庫和查詢權限:確認驗證帳戶有權存取所選元件的相關 Splunk 資料儲存庫:
整合參數
請使用下列參數設定整合:
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 伺服器位址 | 字串 | {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 |
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止劇本執行: 動作應會失敗並停止執行劇本: |
一般 |
Splunk Csv Viewer
參數
| 參數 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 結果 | 字串 | 不適用 | 是 | 原始結果。 |
Run On
這項操作會對所有實體執行。
動作執行結果
指令碼執行結果
| 指令碼結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_succeed | True/False | is_succeed:False |
SplunkQuery
在 Splunk 中執行查詢。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 搜尋模式 | DDL | 聰明有智慧 可能的值:
|
否 | 指定執行搜尋的模式。 |
| 查詢 | 字串 | 是 | 指定要執行的查詢。例如:index="_internal" | |
| 結果數量上限 | 整數 | 100 | 否 | 指定要傳回的結果數量。 |
| 結果來自 | 字串 | -24 小時 | 否 | 指定查詢的開始時間。預設值:-24h |
| 結果 | 字串 | 現在 | 否 | 指定查詢的結束時間。預設值:now。 |
| 結果欄位 | CSV | 否 | 指定要傳回的欄位清單 (以逗號分隔)。 |
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 | 不適用 | 否 | 指定要傳回的欄位清單 (以逗號分隔)。 |
| 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 查詢範例
查詢應以動態清單 (
whitelist) 規則的形式輸入。如果搜尋查詢包含多個篩選條件,請在篩選條件之間使用空格做為分隔符號,例如
index=cim_modactions sourcetype=modular_alerts:risk。使用多個動態清單 (
whitelist) 規則,而不是在同一個規則中輸入多個以空格分隔的搜尋篩選器,會導致系統為每個新增規則執行個別搜尋。index=cim_modactionssourcetype=modular_alerts:send_data_to_siemplifyindex=_internal sourcetype=splunkdcomponent=sendmodalertaction=send_data_to_siemplifyindex=_internal source=/opt/splunk/var/log/splunk/send_data_to_siemplify_modalert.log
連接器參數
如要設定連接器,請使用下列參數:
| 參數 | |
|---|---|
Product Field Name |
必要
輸入來源欄位名稱,以擷取 預設值為 |
Event Field Name |
必要
輸入要擷取的來源欄位名稱。 預設值為 |
API Root |
必要
Splunk 執行個體的 API 根目錄。 預設值為 |
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 |
選填
要在 預設值 您可以使用規則運算式邏輯,透過這個參數操控環境欄位。 如果規則運算式模式為空值或空白,或環境值為空值,最終環境結果就是預設環境。 |
連接器規則
連接器支援 Proxy。
Splunk Pull 連接器
將 Splunk 中的警告和事件擷取至 Google SecOps。
連接器參數
如要設定連接器,請使用下列參數:
| 參數 | |
|---|---|
Product Field Name |
必要
輸入來源欄位名稱,以擷取 預設值為 |
Event Field Name |
必要
輸入要擷取的來源欄位名稱。 預設值為 |
Environment Field Name |
選填
儲存環境名稱的欄位名稱。 如果找不到環境欄位,結果環境為 預設值為 |
Environment Regex Pattern |
選填
要在 預設值 您可以使用規則運算式邏輯,透過這個參數操控環境欄位。 如果規則運算式模式為空值或空白,或環境值為空值,最終環境結果為 |
PythonProcessTimeout (Seconds) |
必要 執行目前指令碼的 Python 程序逾時限制。 預設值為 60 秒。 |
Server Address |
必要
Splunk API 伺服器的 IP 位址。 |
Port |
必要
Splunk 執行個體的通訊埠。 預設值為 |
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 |
必要
輸入來源欄位名稱,以擷取 預設值為 |
Event Field Name |
必要
輸入要擷取的來源欄位名稱。 預設值為 |
Environment Field Name |
選填
儲存環境名稱的欄位名稱。 如果找不到環境欄位,系統會使用預設環境。 預設值為 |
Environment Regex Pattern |
選填
要在 預設值 您可以使用規則運算式邏輯,透過這個參數操控環境欄位。 如果規則運算式模式為空值或空白,或環境值為空值,最終環境結果就是預設環境。 |
Script Timeout (Seconds) |
必要 執行目前指令碼的 Python 程序逾時限制。 預設值為 180 秒。 |
Server Address |
必要
Splunk 執行個體的伺服器位址。 預設值為 |
Username |
選填
Splunk 帳戶的使用者名稱。 |
Password |
選填
Splunk 帳戶的密碼。 |
API Token |
必要
Splunk API 權杖。 如果這個欄位有任何值,API 權杖的優先順序會高於其他驗證方法。 |
Lowest Urgency To Fetch |
必要
系統會使用最低急迫性擷取重要事件。 可能的值包括:
預設值為 |
Fetch Max Hours Backwards |
選填
要從幾小時前開始擷取重要事件。 預設值為 1 小時。 |
Only Drilldown 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 事件。 如果這項參數設為 (預設為啟用)。 |
Multivalue Fields |
選填
以半形逗號分隔的欄位清單,內含多個實體。 舉例來說,如果某個欄位包含兩個主機名稱,系統會將重要事件拆分成兩個 Google SecOps 事件,以便正確對應實體。 |
Notable Event Data Along Base Event |
選填
啟用後,除了基本事件外,這個連結器還會根據顯著事件新增 Google SecOps 事件。 預設為停用。 |
Rule Generator Field Name |
選填
用於對應規則產生器值的欄位名稱。 系統只會使用重大事件本身的資訊進行對應,並忽略其他事件。如果提供無效值,連接器會將欄位設為 |
Alert Name Source |
選填
快訊名稱的來源。 可能的值包括:
預設值為 |
如何使用 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 連接器會使用動態清單和封鎖清單 (whitelist 和 blacklist)。連接器會使用事件中的 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 專業人員尋求解答。