整合 SiemplifyUtilities 與 Google SecOps
本文說明如何將 SiemplifyUtilities 與 Google Security Operations (Google SecOps) 整合。
用途
SiemplifyUtilities 整合功能可解決下列用途:
匯出及共用:使用 Google SecOps 功能和「Export Entities as OpenIOC File」(將實體匯出為 OpenIOC 檔案) 動作,快速從安全性實體 (例如 IP、檔案雜湊或網址) 產生標準化 OpenIOC 檔案,並與威脅情報平台或其他資安團隊共用。
邏輯清單操作:使用 Google SecOps 功能搭配「List Operations」動作,對 Playbook 中的兩個不同值清單執行複雜的邏輯運算 (例如交集、聯集、減法),提供進階篩選或合併資料來源。
資料轉換與數據分析:使用 Google SecOps 功能和「從 JSON 擷取前幾項」動作,根據特定巢狀鍵 (例如嚴重性分數) 排序,處理大型巢狀 JSON 資料集並排定優先順序,且只傳回前幾項相關結果,以便立即進行數據分析。
電子郵件鑑識:使用 Google SecOps 功能和「剖析 EML 為 JSON」動作,將原始、Base64 編碼的電子郵件訊息 (EML 或 MSG 檔案) 轉換為結構化 JSON 格式,讓電子郵件的標頭、內文、附件和連結可供自動剖析和調查。
事前準備
這項整合功能提供原生平台功能,不需要外部第三方 API 金鑰或憑證即可進行驗證。開始之前,請確認已從 Google SecOps 執行個體的內容中心安裝整合項目。
整合參數
無
如要瞭解如何在 Google SecOps 中設定整合功能,請參閱「設定整合功能」。
如有需要,您可以在後續階段進行變更。設定整合執行個體後,即可在應對手冊中使用。如要進一步瞭解如何設定及支援多個執行個體,請參閱「支援多個執行個體」。
動作
如要進一步瞭解動作,請參閱「 在工作區回應待處理動作」和「在案件中執行手動動作」。
計算範圍內的實體
使用「Count Entities in Scope」,擷取特定範圍內的實體數量。
這項動作會對所有 Google SecOps 實體執行。
動作輸入內容
「Count Entities in Scope」動作需要下列參數:
| 參數 | 說明 |
|---|---|
Entity Type |
這是必填欄位。 目標實體的類型。 |
動作輸出內容
「Count Entities in Scope」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 無法使用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
輸出訊息
「Count Entities in Scope」動作可能會傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Count Entities in Scope". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表說明使用「計算範圍內的實體數量」動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
list_count |
NUMBER_OF_ENTITIES |
計數清單
使用「Count List」動作擷取清單中的項目數量。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
「Count List」動作需要下列參數:
| 參數 | 說明 |
|---|---|
Input String |
選填。 以逗號分隔的清單字串,例如 |
Delimiter |
選填。 用來分隔 |
動作輸出內容
「Count List」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 無法使用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
輸出訊息
Count List 動作可傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Count List". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表說明使用「Count List」動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
list_count |
NUMBER_OF_ENTITIES |
刪除檔案
使用「刪除檔案」動作,從檔案系統中刪除所選檔案。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
「Delete File」動作需要下列參數:
| 參數 | 說明 |
|---|---|
File Path |
這是必填欄位。 要刪除的檔案絕對路徑。 |
動作輸出內容
「刪除檔案」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 可用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
JSON 結果
以下範例顯示使用「Delete File」動作時,收到的 JSON 結果輸出內容:
{
"filepath": ""
"status": "deleted/not found"
}
輸出訊息
「Delete File」動作可能會傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Delete File". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表列出使用「Delete File」(刪除檔案) 動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
is_success |
true或false |
將實體匯出為 OpenIOC 檔案
使用「Export Entities as OpenIOC File」動作,將目前案件中支援的資安構件,封裝成標準 OpenIOC 檔案格式。這個檔案可用於分享、威脅情報,或匯入其他安全性工具。
這項動作會在下列 Google SecOps 實體上執行:
FilehashIP AddressURLHostnameUser
動作輸入內容
「Export Entities as OpenIOC File」(將實體匯出為 OpenIOC 檔案) 動作需要下列參數:
| 參數 | 說明 |
|---|---|
Export Folder Path | 這是必填欄位。 儲存所產生 OpenIOC 檔案的資料夾本機路徑。 |
動作輸出內容
「Export Entities as OpenIOC File」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 可用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
JSON 結果
以下範例顯示使用「Export Entities as OpenIOC File」(將實體匯出為 OpenIOC 檔案) 動作時,收到的 JSON 結果輸出內容:
{
"absolute_file_path": OpenIOC_{random_guid}.txt
}
輸出訊息
「Export Entities as OpenIOC File」動作可傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Export Entities as OpenIOC File". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
從 JSON 擷取頂層
使用「從 JSON 擷取前幾項」動作,依特定索引鍵排序輸入 JSON,並傳回排名最高的項目。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
「Extract top From JSON」動作需要下列參數:
| 參數 | 說明 |
|---|---|
JSON Data | 這是必填欄位。 要處理的 JSON 資料。 |
Key To Sort By | 這是必填欄位。 用於排序的巢狀鍵,區隔以半形句號分隔。 使用 |
Field Type | 這是必填欄位。 指定用於排序的鍵資料類型。 可能的值如下:
|
Reverse (DESC -> ASC) | 選填。 如果選取,排列順序為「遞減」。如未選取,排列順序會是「遞增」。 (預設為啟用)。 |
Top Rows | 選填。 要從排序 JSON 輸出內容擷取的重要記錄 (資料列) 數量。 |
動作輸出內容
「Extract top From JSON」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 可用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
JSON 結果
以下範例說明使用「Extract top From JSON」動作時,收到的 JSON 結果輸出內容:
[
{
"HOST": {
"DETECTION":{
"QID": "82003",
"SEVERITY": "1",
"RESULTS": "Timestamp of host (network byte ordering): 03:40:14 GMT"
},
"IP": "1.1.1.1",
"LAST_SCAN_DATETIME": "2018-08-13T10:24:35Z",
"OS": "Windows 10"
},
"DATETIME": "2018-08-29T14:01:12Z"
}, {
"HOST":{
"DETECTION": {
"PORT": "443",
"QID": "11827",
"PROTOCOL": "tcp",
"RESULTS": "X-Frame-Options or Content-Security-Policy: frame-ancestors HTTP Headers missing on port 443.",
"SEVERITY": "2"
},
"IP": "1.1.1.1",
"LAST_SCAN_DATETIME": "2018-08-13T08:31:58Z",
"OS": "Linux 3.13"
},
"DATETIME": "2018-08-29T14:01:12Z"
}, {
"HOST": {
"DETECTION": {
"PORT": "53",
"QID": "15033",
"PROTOCOL": "udp",
"RESULTS": "--- IPv4 --- ",
"SEVERITY": "4"
},
"IP": "1.1.1.1",
"LAST_SCAN_DATETIME": "2018-08-13T08:31:58Z",
"OS": "Linux 3.13"
},
"DATETIME": "2018-08-29T14:01:12Z"
}
]
輸出訊息
「從 JSON 擷取頂層」動作可傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Extract top From JSON". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表列出使用「Extract top From JSON」動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
result |
RESULTS |
篩選 JSON
使用「Filter JSON」(篩選 JSON) 動作,根據指定條件篩選 JSON 物件,並擷取特定結果。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
「Filter JSON」動作需要下列參數:
| 參數 | 說明 |
|---|---|
JSON Data | 這是必填欄位。 要套用篩選器的 JSON 字典資料。 |
Root Key Path | 選填。 JSON 搜尋的起始路徑,以點分隔。 |
Condition Path | 這是必填欄位。 以點分隔的路徑,指向要根據 |
Condition Operator | 這是必填欄位。 條件中使用的比較運算子。 可能的值如下:
|
Condition Value | 這是必填欄位。 要在 |
Output Path | 選填。 以點分隔的路徑,指向要從篩選 JSON 傳回的特定資料元素。 |
Delimiter | 選填。 如果傳回多個元素,則使用這個字元彙整輸出值。 預設值為 |
動作輸出內容
「篩選 JSON」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 可用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
JSON 結果
以下範例顯示使用「Filter JSON」動作時,收到的 JSON 結果輸出內容:
{
"a": {
"HOST": [
{
"DETECTION": {
"QID": "82003",
"SEVERITY": "1",
"RESULTS": "Timestamp of host (network byte ordering): 03:40:14 GMT"
},
"IP": "1.1.1.1",
"LAST_SCAN_DATETIME": "2018-08-13T10:24:35Z",
"OS": "Windows 10"
}
],
"DATETIME": "2018-08-29T14:01:12Z"
}
}
輸出訊息
「篩選 JSON」動作可傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Filter JSON". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表列出使用「Filter JSON」(篩選 JSON) 動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
is_success |
true或false |
取得部署作業網址
使用「Get Deployment URL」動作,擷取目前 Google SecOps 執行個體的部署作業網址。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
無
動作輸出內容
「Get Deployment URL」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 可用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
JSON 結果
以下範例顯示使用「Get Deployment URL」動作時,收到的 JSON 結果輸出內容:
{
"url": ""
}
輸出訊息
「Get Deployment URL」動作可能會傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Get Deployment URL". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表列出使用「Get Deployment URL」動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
is_success |
true或false |
可列出作業
使用「List Operations」動作,在兩個提供的逗號分隔的清單之間執行集合運算。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
List Operations 動作需要下列參數:
| 參數 | 說明 |
|---|---|
First List | 這是必填欄位。
|
Second List | 這是必填欄位。
|
Delimiter | 選填。 用於分隔 預設值為 |
Operator | 這是必填欄位。 要執行的 可能的值如下:
|
動作輸出內容
「List Operations」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 可用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
JSON 結果
以下範例顯示使用列出作業動作時,收到的 JSON 結果輸出內容:
{
"results": {
"count": 6,
"data": [
"item",
"item1",
"item2"
]
}
}
指令碼執行結果
下表列出使用「List Operations」動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
result_list |
RESULTS |
將 EML 剖析為 JSON
使用「將 EML 剖析為 JSON」動作,將 EML 或 MSG 電子郵件檔案的內容,轉換為 Google SecOps 中的結構化 JSON 物件。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
「Parse EML to JSON」動作需要下列參數:
| 參數 | 說明 |
|---|---|
EML Content | 這是必填欄位。 EML 或 MSG 檔案的 Base64 編碼內容。 |
Blacklisted Headers | 選填。 列出要從最終 JSON 輸出內容中排除的標頭,並以半形逗號分隔。 |
Use Blacklist As Whitelist | 選填。 如果選取這個選項, |
動作輸出內容
「Parse EML to JSON」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 可用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
JSON 結果
以下範例顯示使用「Parse EML to JSON」動作時,收到的 JSON 結果輸出內容:
{
"HTML Body": "<div><br></div>",
"Attachments": {},
"Recipients": "john_doe@example.com",
"CC": "",
"Links": {
"urls_1": "https://lh4.googleusercontent.com/rE6-WYjfFuiHbHUV33G31NCtUeBl9YGnw4bvlorqMeNaC60qWagqtohFwCpq2eJxlMYMJPPDAqqXRZW6Oja8GqOjt3jB3aB6tzJP-jdtbCBoj-m3vu49tttHmWpXGJUSI6UuTUYS",
"urls_2": "https://lh4.googleusercontent.com/Uih5TalWnJjBbG_QaRICp8emX5wIakbCmstEDP3YHT7l45qdjIllcxg_Ddapvrh5DqGKszK3KKM5M0kEoC1YX6TgbWKJKPX0OxD5BeWr3uu6SRAHs7lwP20khjHSlxsIM46egQ-M"
},
"BCC": "",
"To": "john_doe@example.com",
"Date": "Mon, 13 Aug 2018 13:20:34 +0300",
"From": "john_doe@example.com",
"Subject": "TEST6:::Test:::ADVANCE NOTICE: 07.08.2018-Disable Accounts-user\\\r\\\\n Office Il Office"
}
指令碼執行結果
下表列出使用「Parse EML To JSON」動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
parsed_eml |
RESULTS |
系統會重新建構 with 欄位的動作 JSON 輸出內容,將 ID 值分隔至專屬欄位。這項異動適用於第 10 版及更新版本的整合,詳情請參閱下表:
| 整合項目版本 | 欄位結構和說明 | 範例 JSON |
|---|---|---|
| 第 9 版以下 | ID 和通訊協定會合併到 with 欄位。 | {"with": "smtp id ID"} |
| 10 以上版本 | ID 會儲存在新的 id 欄位中,而 with 欄位只會包含通訊協定。 | {"id": "ID", "with": "SMTP"} |
乒乓
使用 Ping 動作測試與 SiemplifyUtilities 的連線能力。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
無
動作輸出內容
Ping 動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 無法使用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
輸出訊息
Ping 動作會提供下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
Connection Established. |
動作成功。 |
Failed to connect to SiemplifyUtilities. Error is
ERROR_REASON
|
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表說明使用 Ping 動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
is_success |
True或False |
查詢聯結器
使用「Query Joiner」動作,結合搜尋值清單、目標欄位和邏輯運算子,動態建構結構化查詢字串。
這項動作不會在 Google SecOps 實體上執行。
動作輸入內容
查詢聯結器動作需要下列參數:
| 參數 | 說明 |
|---|---|
Values |
必要。 以半形逗號分隔的值清單,例如 |
Query Field |
必要。 要搜尋的目標欄位名稱,例如 |
Query Operator |
必要。 用於合併值的邏輯運算子,例如 |
Add Quotes |
選填。 如果選取,動作會在 |
Add Double Quotes |
選填。 如果選取,這項動作會在 |
Add Backticks |
選填。 如果選取,這項動作會在 這項功能可用於逸出複雜字串或特殊字元 (例如長網址),避免查詢編譯錯誤。 |
Delimiter |
選填。 用於分隔 如未提供值,預設分隔符號為半形逗號 ( |
動作輸出內容
「Query Joiner」動作會提供下列輸出內容:
| 動作輸出類型 | 可用性 |
|---|---|
| 案件總覽附件 | 無法使用 |
| 案件總覽連結 | 無法使用 |
| 案件總覽表格 | 無法使用 |
| 補充資訊表格 | 無法使用 |
| JSON 結果 | 無法使用 |
| 輸出訊息 | 可用 |
| 指令碼執行結果 | 可用 |
輸出訊息
Query Joiner 動作可傳回下列輸出訊息:
| 輸出訊息 | 訊息說明 |
|---|---|
|
動作成功。 |
Error executing action "Query Joiner". Reason:
ERROR_REASON |
動作失敗。 請檢查伺服器連線、輸入參數或憑證。 |
指令碼執行結果
下表列出使用「Query Joiner」動作時,指令碼結果輸出的值:
| 指令碼結果名稱 | 值 |
|---|---|
query |
QUERY_FIELD=
VALUE_1
OPERATOR
QUERY_FIELD=
VALUE_2
OPERATOR
QUERY_FIELD=
VALUE_3 |
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求解答。