Splunk
整合版本:50.0
Splunk 應用程式會準備案件,並附上 Splunk 的所有相關快訊和事件。您可以透過兩種方式將這些案件擷取至 Google Security Operations:以提取為基礎的方法,以及以推送為基礎的方法。
第一種方法稱為「以提取為基礎」。使用這個方法時,如要將案件匯入 Google SecOps,您必須設定 Splunk Pull Connector,從 Splunk 應用程式提取案件。這個方法不需要在 Splunk 應用程式中進行任何額外設定。
第二種方法稱為「以推送為基礎」。使用這個方法時,Splunk 應用程式會對 Google SecOps 執行 API 呼叫,以新增案件。如要使用這個方法,您必須產生 Google SecOps API 金鑰,並在應用程式設定中新增 Google SecOps URI。
建立 API 金鑰:
依序前往「設定」「進階」「API」。
按一下右上方的加號,即可新增 API 金鑰。
輸入 API 金鑰名稱,然後按一下「建立」。
複製 API 金鑰。
如何設定 Splunk 以與 Google SecOps 搭配使用
啟用或停用權杖驗證功能的事前準備
如要啟用權杖驗證,請務必先完成下列規定事項:
如要啟用權杖驗證,Splunk 平台執行個體不得以舊版模式運作,也就是 Splunk Web 以獨立程序運作。如果 Splunk 平台處於舊版模式,系統不會執行權杖驗證。如要進一步瞭解舊版模式,請參閱 Splunk Enterprise 管理手冊中的「啟動和停止 Splunk Enterprise」一文。
您必須使用具有 edit_tokens_settings Splunk 平台功能的角色登入 Splunk 平台,才能啟用或停用權杖驗證。
使用 Splunk Web 啟用權杖驗證
如果停用權杖驗證,Splunk Web 的「權杖」頁面會顯示以下訊息:
Token authentication is currently disabled > To enable token authentication, click Enable Token Authentication.
在要啟用權杖驗證的執行個體上完成下列步驟:
以管理員使用者或可管理權杖設定的使用者身分,登入 Splunk 平台執行個體。您無法使用權杖登入 Splunk Web。您必須提供有效的使用者名稱和密碼。
成功登入後,請在系統列中依序選取「設定」>「權杖」。
按一下「啟用權杖驗證」。Splunk 平台執行個體會立即啟用權杖驗證,不需要重新啟動執行個體。
使用 Splunk Web 建立驗證權杖
在系統列中,依序點選「設定」> 權杖。
按一下「New Token」。
在「New Token」(新增權杖) 對話方塊的「User」(使用者) 欄位中,輸入要建立權杖的 Splunk 平台使用者。
在「目標對象」欄位中,輸入權杖用途的簡短說明。
(選用) 在「Expiration」(到期時間) 清單中,選取「Absolute Time」(絕對時間) 或「Relative Time」(相對時間)。這項選取項目會決定要在清單下方的文字欄位中輸入什麼內容。
如果選取「絕對時間」,清單下方會顯示兩個文字欄位。
在第一個欄位中輸入有效日期。您也可以點選欄位,從彈出式日曆選取日期。
在第二個欄位中輸入有效的 24 小時制時間。
如果不是,下拉式清單下方會顯示一個文字欄位。
- 輸入字串,代表您希望權杖在目前時間後維持有效多久。舉例來說,如要讓權杖在 10 天後過期,請在這個欄位中輸入
+10d
。
- 輸入字串,代表您希望權杖在目前時間後維持有效多久。舉例來說,如要讓權杖在 10 天後過期,請在這個欄位中輸入
(選用) 在「Not Before」(不早於) 清單中,選取「Absolute Time」(絕對時間) 或「Relative Time」(相對時間)。
重複您為「到期」控制項執行的步驟。「生效時間」不得早於目前時間,也不得晚於「到期時間」。
點按「Create」(建立)。「New Token」視窗會更新「Token」欄位,顯示產生的權杖。
選取欄位中的所有權杖文字。視作業系統和瀏覽器而定,您可以點選「權杖」欄位,然後按三下滑鼠,或按下鍵盤上的 Ctrl 鍵 + A 鍵或 Command 鍵 + A 鍵。確認已選取所有權杖文字。關閉視窗後,就無法再查看完整權杖。
複製「權杖」欄位中的文字。
將權杖貼到文字檔、電子郵件或其他通訊方式中,然後傳送給您授權使用權杖的人員。確認您只與授權使用者共用權杖。只要有完整權杖,任何人都能用來驗證。
按一下 [關閉]。
使用權杖設定 Google SecOps Splunk 整合功能。
安裝
單一搜尋頭
將 TA-Siemplify 套件下載到本機電腦。 https://splunkbase.splunk.com/app/5010/
在搜尋頭上安裝應用程式。
選取「應用程式:搜尋與報表」。系統會隨即顯示「上傳應用程式」對話方塊。
按一下「選擇檔案」,然後選取應用程式檔案。
按一下 [上傳]。等待檔案上傳完成。
重新啟動 Splunk。
設定 TA-Siemplify
在 Splunk Enterprise 中,前往「Apps」頁面。
選取「Siemplify」Siemplify。
在「外掛程式設定」分頁中,新增下列項目:
如果是以推送為基礎的方法:
- 將 Siemplify API URI 設為 Google SecOps 伺服器的 URI。
- 將「模式」設為「推送模式」。
- 在「API Key」欄位中,輸入「API Keys」專區中產生的權杖值。
提取式方法:
- 將「模式」設為「提取模式」。
按一下 [儲存]。
快訊設定
如要將快訊和事件資料傳送至 Google SecOps,必須在現有 Splunk 快訊中新增觸發動作。
「環境」、「裝置供應商」、「裝置產品」和「事件類型」欄位支援事件範本。事件範本可讓您根據快訊中的值,動態設定 Google SecOps 中的特定欄位。如要使用事件範本,請以方括號「[ ]」括住欄位名稱。系統會使用快訊中的第一個事件填入這些欄位。
示例:假設您收到含有 device_vendor 欄位 (值為 Microsoft
) 的快訊,您可以在「裝置供應商」設定參數中輸入 [device_vendor],當快訊傳送至 Google SecOps 時,供應商就會設為 Microsoft
。
在 Splunk 中,前往「快訊」。
在「編輯」清單中,選取「編輯快訊」。
在「觸發動作」部分,依序前往「新增動作」>「傳送快訊至 Siemplify」。
請按照下列步驟設定快訊:
- 名稱:這裡設定的值會影響快訊名稱。
- 優先順序:您在此處設定的值會影響 Google SecOps 案件的優先順序。
- 類別:用於定義視覺系列。
- 環境:對應至 Google SecOps 中的環境。 如要不使用環境,請留空。系統支援使用方括號建立範本。
- 裝置供應商:用於定義將事件傳送至 Google SecOps 的系統供應商。如果警報是由 Microsoft Sysmon 產生,請使用 Microsoft 或警報/事件中的值 (使用範本)。
- 裝置產品:用於定義將事件傳送至 Google SecOps 的系統產品。如果警報是由 Microsoft Sysmon 產生,這個值應為 Sysmon,或使用範本從警報/事件中的值取得。
- 事件類型:用於在 Google SecOps 事件設定部分定義事件類型。如果警示是為了尋找惡意程序,事件類型應為「找到程序」或使用範本的警示/事件中的值。
- 時間欄位:用於定義 Google SecOps 案件的開始時間和結束時間。如未提供,系統會檢查「_indextime」欄位。如果找不到「_indextime」,系統會使用產生快訊的時間。不支援範本。
- 展開多值欄位:將此值設為 1,系統就會找出所有多值欄位,並為多值欄位中的每個值建立額外欄位對應。舉例來說,如果多值欄位 src_hosts 包含以下值:Server1、Server2、Server3,系統會建立下列新欄位:src_hosts_0:Server1、src_hosts_1:Server2、src_hosts_2:Server3。只有在停用「匯入所有事件資料」時,才能使用這個選項。
- 匯入所有事件資料:這項設定會嘗試匯入構成警報的原始事件,其中包含轉換指令 (圖表、時間圖表、統計資料、前幾名、罕見、突發狀況、醒目顯示)。如要支援這項功能,必須變更 Splunk 搜尋標頭。
如要啟用轉換搜尋中的原始事件,請複製:
$SPLUNK_HOME/etc/apps/TA-siemplify/default/savedsearches.conf
至$SPLUNK_HOME/etc/apps/TA-siemplify/local/savedsearches.conf
編輯:$SPLUNK_HOME/etc/apps/TA-siemplify/local/savedsearches.conf
取消註解:#dispatch.buckets =1
儲存檔案並重新啟動 Splunk,這些設定就會生效。
疑難排解
如要將記錄層級變更為 DEBUG
,請完成下列步驟:
在 Splunk Web 中選取應用程式。
依序前往「設定」>「伺服器設定」>「伺服器記錄」。
在「Log level」(記錄層級) 參數中,選取「DEBUG」(偵錯)。
按一下 [儲存]。
從 Google SecOps TA 查詢記錄資料的方式,取決於您的 Splunk 實作項目。如果已安裝 Splunk CIM,記錄檔會位於 cim_modactions
索引中。否則記錄檔會位於 _internal
索引中。
網路
從 Google SecOps 存取 Splunk API 的網路存取權: 允許透過通訊埠 8089 傳輸流量。
如何在叢集環境中部署 Google SecOps 外掛程式
如要建立部署伺服器和搜尋頭,請完成下列步驟:
使用 SSH 登入部署伺服器。
確認
/opt/splunk/etc/system/local/serverclass.conf
檔案是否存在。 如果沒有,請執行:vi /opt/splunk/etc/system/local/serverclass.conf
設定範例如下:
[global] # whitelist matches all clients. [serverClass:AllApps] [serverClass:AllApps:app:*] [serverClass: Google Security OperationsAPP]
在
/opt/splunk/etc/deployment-apps
目錄中上傳及解壓縮應用程式檔案。建立 Splunk 使用者 (如果不存在):
useradd splunk
建立不存在的 Splunk 群組:
groupadd splunk
為應用程式新增 Splunk 使用者權限:
chown splunk:splunk {app path}
使用 SSH 登入搜尋頭。
將搜尋頭新增為部署伺服器的用戶端:
/opt/splunk/bin/splunk set deploy-poll IP_ADDRESS:8089 #(deployment server ip address)
重新啟動所有搜尋頭。
登入部署伺服器的 UI。
依序前往「設定」>「分散式環境」>「轉送器管理工具」。
前往「伺服器類別」分頁,然後按一下「新增伺服器類別」。
提供伺服器類別的名稱。
將 Google SecOps 外掛程式新增為應用程式,並將 Search Heads 新增為用戶端。
重新啟動所有搜尋頭。
請確認所有搜尋頭上的應用程式設定正確無誤。Splunk 無法在整個叢集中持續同步應用程式。
已知問題
如果在記錄中收到 int() argument must be a string, a bytes-like object or a
number, not 'NoneType'. Please double check spelling and also verify that a
compatible version of Splunk_SA_CIM is installed
錯誤,請確認設定中的 API 根目錄和 API 金鑰參數有值,即使您使用「拉取」模式也一樣。
在 Google SecOps 中設定 Splunk 整合
透過 Splunk 整合功能,您可以使用 CA 憑證檔案驗證連線。這是額外的連線驗證方法。
如要使用這種方法,您必須符合下列條件:*
- CA 憑證檔案
- Splunk 整合版本 26.0 以上
在 Google SecOps 中設定整合:
將 CA 憑證檔案剖析為 Base64 字串。
開啟整合設定頁面。
在「CA Certificate File」欄位中,輸入 CA 憑證字串。
如要測試連線,請勾選「驗證 SSL」核取方塊,然後按一下「測試」。
如需在 Google SecOps 中設定整合功能的詳細操作說明,請參閱「設定整合功能」。
整合參數
請使用下列參數設定整合:
參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
---|---|---|---|---|
執行個體名稱 | 字串 | 不適用 | 否 | 您要設定整合的執行個體名稱。 |
說明 | 字串 | 不適用 | 否 | 執行個體的說明。 |
伺服器位址 | 字串 | {SCHEMA}://{IP}:{PORT} | 是 | Splunk 伺服器的位址。 |
使用者名稱 | 字串 | 不適用 | 否 | 用來連線至 Splunk 的使用者電子郵件地址。 |
密碼 | 密碼 | 不適用 | 否 | 相應使用者的密碼。 |
API 權杖 | 密碼 | 不適用 | 否 | Splunk API 權杖。如果這個欄位不是空白,API 權杖的優先順序會高於其他驗證方法。 |
驗證 SSL | 核取方塊 | 已取消勾選 | 否 | 如果 Splunk 連線需要 SSL 驗證,請勾選這個核取方塊 (預設為取消勾選)。 |
CA 憑證檔案 | 字串 | 不適用 | 否 | Base64 編碼的 CA 憑證檔案。 |
遠端執行 | 核取方塊 | 已取消勾選 | 否 | 勾選這個欄位,即可遠端執行設定的整合項目。勾選後,系統會顯示選取遠端使用者 (服務專員) 的選項。 |
動作
取得主辦活動
說明
在 Splunk 中取得與主機相關的事件。
參數
參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
---|---|---|---|---|
每個主辦方的活動上限 | 整數 | 100 | 是 | 指定每個主機要傳回的事件數量。 |
結果來源 | 字串 | -24 小時 | 是 | 指定活動的開始時間。 |
結果傳送至 | 字串 | 現在 | 是 | 指定活動的結束時間。 |
結果欄位 | CSV | 不適用 | 否 | 指定要傳回的欄位清單 (以半形逗號分隔)。 |
索引 | 字串 | 不適用 | 否 | 搜尋與主機相關的事件時,請指定要使用的索引。如果未提供任何內容,動作就不會使用索引。 |
住家房卡 | 字串 | 主機 | 否 | 指定用來取得主機事件資訊的鍵。預設值:host。 |
執行時間
這項動作會在主機名稱實體上執行。
動作執行結果
指令碼執行結果
指令碼結果名稱 | 值選項 | 範例 |
---|---|---|
成功 | 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}」(已成功傳回 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}」事件 欄:根據結果。 |
乒乓
說明
在 Google Security Operations Marketplace 分頁的整合設定頁面中,使用提供的參數測試與 Splunk 的連線。
參數
不適用
執行時間
這項動作不會在實體上執行,也沒有強制輸入參數。
動作執行結果
指令碼執行結果
指令碼結果名稱 | 值選項 | 範例 |
---|---|---|
is_success | True/False | is_success:False |
案件總覽
結果類型 | 值 / 說明 | 類型 |
---|---|---|
輸出訊息* | 動作不應失敗,也不應停止劇本執行: 動作應會失敗並停止執行應對手冊: |
一般 |
Splunk Csv Viewer
說明
參數
參數 | 類型 | 預設值 | 為必填項目 | 說明 |
---|---|---|---|---|
結果 | 字串 | 不適用 | 是 | 原始結果。 |
執行時間
這項操作會對所有實體執行。
動作執行結果
指令碼執行結果
指令碼結果名稱 | 值選項 | 範例 |
---|---|---|
is_succeed | True/False | is_succeed:False |
SplunkQuery
說明
在 Splunk 中執行查詢。
參數
參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
---|---|---|---|---|
搜尋模式 | DDL | 聰明有智慧 可能的值:
|
否 | 指定執行搜尋的模式。 |
查詢 | 字串 | 是 | 指定要執行的查詢。例如:index="_internal" | |
結果數量上限 | 整數 | 100 | 否 | 指定要傳回的結果數量。 |
結果來自 | 字串 | -24 小時 | 否 | 指定查詢的開始時間。預設值:-24h |
結果 | 字串 | 現在 | 否 | 指定查詢的結束時間。預設值:now。 |
結果欄位 | CSV | 否 | 指定要傳回的欄位清單 (以半形逗號分隔)。 |
執行時間
這項操作不會對實體執行。
動作執行結果
指令碼執行結果
指令碼結果名稱 | 值選項 | 範例 |
---|---|---|
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) 非同步訊息:「Waiting for query {0} to finish execution.」(等待查詢「{0}」執行完畢)。format(query name) 動作應會失敗並停止執行應對手冊: 如果發生重大錯誤,例如憑證錯誤、無法連線至伺服器或其他錯誤:「Error executing action "SplunkQuery". 原因:{0}''.format(error.Stacktrace) 如果為 400:「Error executing action "SplunkQuery". 原因:{0}''.format(messages/text) |
一般 |
案件總覽表格 | 名稱:Splunk 查詢結果 資料欄 - 根據結果。 |
一般 |
提交活動
說明
將事件提交至 Splunk。
參數
參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
---|---|---|---|---|
索引 | 字串 | main | 是 | 指定要建立事件的索引。 |
事件 | 字串 | 不適用 | 是 | 指定需要提交的原始事件。 |
主機 | 字串 | 不適用 | 否 | 指定與活動相關的主機。 |
來源 | 字串 | 不適用 | 否 | 指定事件來源。例如:www. |
Sourcetype | 字串 | 不適用 | 否 | 指定事件的來源類型。範例:web_event |
執行時間
這項操作不會對實體執行。
動作執行結果
指令碼執行結果
指令碼結果名稱 | 值選項 | 範例 |
---|---|---|
成功 | 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 | 請選取一項 可能的值包括: 請選取一項 重大 高 中 低 參考用 |
是 | 為重要事件指定新的緊急程度。 |
新擁有者 | 字串 | 不適用 | 是 | 指定重要事件的新擁有者。 |
註解 | 字串 | 不適用 | 是 | 指定重大事件的註解。 |
執行時間
這項操作不會對實體執行。
動作執行結果
指令碼執行結果
指令碼結果名稱 | 值選項 | 範例 |
---|---|---|
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 | 或 可能的值: 或 且 |
是 | 指定不同實體類型之間應使用的邏輯運算子。 |
執行時間
這項動作會對下列實體執行:
- 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) 非同步訊息:「Waiting for query {0} to finish execution.」(等待查詢「{0}」執行完畢)。format(query name) 如果啟用「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:「Error executing action "Execute Entity Query". 原因:{0}''.format(messages/text) |
一般 |
案件總覽表格 | 名稱:Splunk 查詢結果 欄:根據結果。 |
一般 |
連接器
如需在 Google SecOps 中設定連接器的詳細操作說明,請參閱設定連接器。
如要設定所選的連接器,請使用下列表格列出的連接器專屬參數:
Splunk 查詢連接器
連結器會傳送動態清單 (whitelist
) 中的查詢、擷取結果,並根據擷取的結果建立案件。
查看記錄的 Splunk 查詢範例
查詢應以動態清單 (
whitelist
) 規則的形式輸入。如果搜尋查詢包含多個篩選條件,請在篩選條件之間使用空格做為分隔符號,例如
index=cim_modactions sourcetype=modular_alerts:risk
。如果使用多個動態清單 (
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 |
必要
輸入來源欄位名稱,以擷取 預設值為 |
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 專業人員尋求答案。