VMware Carbon Black Enterprise EDR
本文說明如何將 VMware Carbon Black Enterprise EDR 與 Google SecOps 整合。
產品用途
- 執行調查動作:在 Google Security Operations 進行警告分析時,從 CB Enterprise EDR 取得資料。
- 執行設定動作:透過 Google SecOps 設定 CB Enterprise EDR 動態消息/監控清單。
產品權限
存取 Carbon Black Enterprise EDR (ThreatHunter) API 須瞭解的概念:
- 服務主機名稱
- API 金鑰
- RBAC
- 組織金鑰
服務主機名稱
Carbon Black Cloud 主機名稱有兩種:
- https://defense-<environment>.conferdeploy.net/
- https://api-<environment>.conferdeploy.net/
此外,我們有多個環境,例如 (非完整清單):
- prod02
- prod04
- prod05
Carbon Black Enterprise EDR (ThreatHunter) API 會使用下列主機名稱:https://defense-<environment>.conferdeploy.net/
API 金鑰
Carbon Black Enterprise EDR (ThreatHunter) API 和服務會透過 API 金鑰進行驗證。使用者可以在 Carbon Black Cloud 控制台的「Settings」(設定) >「API Keys」(API 金鑰) 下方查看 API 金鑰設定。
API 金鑰包含兩個部分:
- API 密鑰 (先前稱為 API 金鑰)。
- API ID (先前稱為連接器 ID)。
驗證資訊會透過 X-Auth-Token HTTP 標頭傳遞至 API。
- 如要產生適當的標頭,請將 API 密鑰與 API ID 串連,並在兩者之間加上正斜線。
- 舉例來說,如果 API 密鑰是 ABCD,API ID 是 1234,則對應的 X-Auth-Token HTTP 標頭會是:X-Auth-Token: ABCD/1234
所有 API 要求都必須使用 API 密鑰和 API ID 進行驗證。未經驗證的要求會傳回 HTTP 401 錯誤。
如何取得 API 密鑰和 API ID
- 登入 Carbon Black Cloud 機構。
- 依序前往「Settings」 >「API 金鑰」。
- 按一下「新增 API 金鑰」。
- 設定名稱、存取層級等。
- 取得 API 密鑰和 API ID。
組織管理員可以定義 API 金鑰,並取得 API 密鑰和 API ID,用於驗證 API 要求。此外,基於安全考量,管理員可以限制這組 API 金鑰只能用於特定 IP 位址。
API 金鑰存取層級
目前「API 金鑰」頁面提供四種主要的 API 金鑰存取層級。每個存取層級對 API 路徑提供的存取層級不同:
自訂金鑰存取層級:提供可自訂的授權。
- 自訂 API 金鑰是我們角色式存取控管 (RBAC) 措施的成果。
- 客戶可以套用存取控管機制,並建立最小權限 API 金鑰。
- 自訂 API 金鑰可指派使用者角色或存取層級。
API 金鑰存取層級:提供所有 API 的存取權,但 Notifications API 和 Live Response API 除外。
SIEM 金鑰存取層級:可存取 Notifications API。
即時回應金鑰存取層級:可存取上述 (1) 的所有 API,以及即時回應 API。
Carbon Black Enterprise EDR (ThreatHunter) Service to API 存取層級 Correlation Platform API is bolded
| API/服務類別 | 允許的 API 金鑰存取層級 |
|---|---|
| PSC /appservices/* | 自訂 (具備適當權限) |
| CB-TH /threathunter/* | 自訂 (具備適當權限) API |
| CB-LO /livequery/* | 自訂 (具備適當權限) |
| CB-D /integrationServices/v3/notification/ | SIEM |
| CB-D /integrationServices/* | APILive 回應 |
組織金鑰
除了 API 金鑰外,許多 Carbon Black Cloud API 或服務都需要在 API 要求路徑中提供 org_key。這是為了支援管理多個機構的客戶。
您可以在 Carbon Black Cloud 控制台的「Settings」>「API Keys」下方找到 org_key。
設定 Carbon Black Enterprise EDR (ThreatHunter) Google SecOps 整合的 API 存取權
如要設定 Carbon Black Enterprise EDR (ThreatHunter) Google SecOps 整合的 API 存取權,請按照下列步驟操作:
- 登入 Carbon Black Cloud 控制台,依序前往「Settings」 >「API Access」。
- 在「API 存取權」頁面,前往「存取層級」。
- 在「存取層級」頁面,按一下「+ 新增存取層級」。
在開啟的視窗中,輸入新存取層級的名稱和說明,然後選取權限,如下方螢幕截圖所示:

返回「API 存取權」分頁。
按一下「+ 新增 API 金鑰」,建立新的 API 金鑰。
在開啟的分頁中填寫必填欄位,然後選取您在步驟 4 設定的存取層級:

點選「儲存」後,系統會顯示 API ID 和 API 密鑰。請儲存這些值,因為系統只會顯示一次。
儲存 API ID 和 API 密鑰後,Carbon Black Enterprise EDR (ThreatHunter) 的 API 存取權就設定完成。
在 Google SecOps 中設定 VMware Carbon Black Enterprise EDR (Threat Hunter) 整合
如要瞭解如何在 Google SecOps 中設定整合功能,請參閱「設定整合功能」一文。
整合參數
請使用下列參數設定整合:
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 執行個體名稱 | 字串 | 不適用 | 否 | 要設定整合的執行個體名稱。 |
| 說明 | 字串 | 不適用 | 否 | 執行個體的說明。 |
| API 根層級 | 字串 | 不適用 | 是 | VMware Carbon Black Cloud API 根網址。 |
| 機構金鑰 | 字串 | 不適用 | 是 | VMware Carbon Black Cloud 機構金鑰。 |
| API ID | 字串 | 不適用 | 是 | VMware Carbon Black Cloud API ID (自訂 API 金鑰 ID)。 |
| API 密鑰 | 字串 | 不適用 | 是 | VMware Carbon Black Cloud API 密鑰 (自訂 API 密鑰)。 |
| 遠端執行 | 核取方塊 | 不適用 | 否 | 勾選這個欄位,即可從遠端執行設定的整合項目。勾選後,系統會顯示選取遠端使用者 (代理) 的選項。 |
動作
乒乓
說明
使用 Google SecOps Content Hub 整合設定頁面提供的參數,測試與 VMware Carbon Black Enterprise EDR 的連線能力。
參數
不適用
應對手冊用途範例
這項動作可用於在 Google SecOps Content Hub 頁面的整合設定頁面測試連線能力,並可做為人工判決處罰執行,不適用於教戰手冊。
執行日期
這項動作不會對實體執行,也沒有必要輸入參數。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
案件總覽
| 結果類型 | 值/說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊:
動作應失敗並停止執行應對手冊:
|
一般 |
程序搜尋
說明
根據提供的搜尋參數,在具有 CB 感應器的主機上搜尋程序活動相關資訊。這項動作接受主機 Google SecOps 實體。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 查詢 | 字串 | 不適用 | 否 | 在程序搜尋中執行的查詢。例如,process_name:svchost.exe - 依程序名稱搜尋,process_hash:9520a99e77d6196d0d09833146424113 - 依程序雜湊搜尋。 |
| 時間範圍 | 整數 | 4 | 否 | 指定擷取快訊的時間範圍 (以小時為單位)。 |
| 記錄上限 | 整數 | 20 | 是 | 指定動作可傳回的記錄數量。 |
| 排序依據 | 字串 | 不適用 | 否 | 指定資料排序參數。 |
| 排列順序 | DDL | 遞增 | 否 | 排列順序。 |
應對手冊用途範例
根據提供的搜尋參數,搜尋由程序引起的事件。
分析與 CB Platform 管理的特定主機相關的警示時,使用者想要調查主機,根據提供的搜尋參數,搜尋由執行中的程序引起的特定事件。使用者可以執行這項動作,主動搜尋相關主機上是否有任何可疑程序/事件,進行威脅偵查活動。
執行日期
這項動作會在主機實體上執行。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
"results": [
{
"alert_id": [
"null/WSD2CQMT"
],
"backend_timestamp": "2020-03-04T21:42:45.080Z",
"device_id": 3078944,
"device_name": "qaam\\manticorewin864",
"device_policy_id": 6525,
"device_timestamp": "2020-03-04T21:39:33.180Z",
"enriched": true,
"enriched_event_type": "CREATE_PROCESS",
"event_description": "The script \"<share><link hash=\"74fcbbb574bfd505cf0680575a1c025f6cead071fce78ee0cc2c7bac7dd24ce9\">C:\\programdata\\wmirepair.bat</link></share>\" invoked the application \"<share><link hash=\"7eadc73f8aa77148ca289d5ce5c2632f3a157d313079583454c0421bb97d5646\">C:\\windows\\syswow64\\regsvr32.exe</link></share>\". ",
"event_id": "ecc6954f5e6011eaa0de89cc027330db",
"event_type": "childproc",
"ingress_time": 1583358118950,
"legacy": true,
"org_id": "7DESJ9GN",
"parent_guid": "7DESJ9GN-002efb20-00001604-00000000-1d5f26cab1067fe",
"parent_pid": 5636,
"process_guid": "7DESJ9GN-002efb20-00000d58-00000000-1d5f26d6615c568",
"process_hash": [
"629ae017d28848b68485bd2aeede9129",
"74fcbbb574bfd505cf0680575a1c025f6cead071fce78ee0cc2c7bac7dd24ce9"
],
"process_name": "c:\\programdata\\wmirepair.bat",
"process_pid": [
3416
],
"process_username": [
"NT AUTHORITY\\SYSTEM"
]
},
...
] }
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊:
動作應失敗並停止執行應對手冊:
|
兩者並用 |
| 資料表 | 資料表名稱:處理「{entityIdentifier}」的搜尋結果 資料欄:
|
實體 |
依程序 GUID 取得與程序相關聯的事件
說明
根據 VMware Carbon Black Enterprise EDR 的資訊,取得與特定程序相關聯的事件。這項動作可取得比「程序搜尋」動作更詳細的特定程序活動結果。請注意,如要讓動作正常運作,傳遞至動作的 Google SecOps 處理構件必須是程序 GUID 類型。
參數
| 參數顯示名稱 | 類型 | 預設值 | 為必填項目 | 說明 |
|---|---|---|---|---|
| 搜尋條件 | 字串 | 不適用 | 否 | 指定要求的搜尋條件。目前,系統只接受「event_type」值做為搜尋條件,例如 netconn。如有多個值,請以半形逗號分隔。 |
| 查詢 | 搜尋 | 不適用 | 是 | 在程序搜尋中執行的查詢,例如「netconn_action:ACTION_CONNECTION_CREATE OR netconn_action:ACTION_CONNECTION_ESTABLISHED」 |
| 時間範圍 | 整數 | 4 | 否 | 指定擷取快訊的時間範圍 (以小時為單位)。 |
| 記錄上限 | 整數 | 20 | 否 | 指定動作可傳回的記錄數量。 |
| 排序依據 | 字串 | 不適用 | 否 | 指定資料排序參數。 |
| 排列順序 | DDL | 遞增 | 否 | 排列順序 |
應對手冊用途範例
調查特定程序活動。
在分析與 CB Platform 管理的特定主機相關的警示時,發現主機上有可疑程序正在執行。Google SecOps 使用者需要一項動作,使用 CB Enterprise EDR 功能從 Google SecOps 取得與特定程序相關聯的事件。
執行日期
這項動作不會對實體執行。
動作執行結果
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
"results": [
{
"backend_timestamp": "2020-04-26T18:38:50.128Z",
"created_timestamp": "2020-05-19T03:56:53.483Z",
"event_guid": "ufzid3pPQs-yrRlPBe8-ww",
"event_hash": "ce6a949bcd3879897c9eac258ec6a091",
"event_timestamp": "2020-04-26T18:34:16.258Z",
"event_type": "netconn",
"legacy": false,
"netconn_action": "ACTION_CONNECTION_CREATE",
"netconn_inbound": true,
"netconn_local_ipv6": "FF020000000000000000000000010003",
"netconn_local_port": 5355,
"netconn_protocol": "PROTO_UDP",
"netconn_remote_ipv6": "FE800000000000000000000000000000",
"netconn_remote_port": 58994,
"process_guid": "7DESJ9GN-002efb20-000003ec-00000000-1d5fb6d63ba535c",
"process_pid": 1004
},
...
]
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊:
動作應失敗並停止執行應對手冊:
|
一般 |
| 資料表 | 資料表名稱:找到程序「{process artifact identifier}」的事件 資料欄:應根據傳回的結果自動產生。 |
實體 |
充實雜湊
說明
根據 VMware Carbon Black Enterprise EDR 的資訊,充實 Google SecOps 檔案雜湊實體。
應對手冊用途範例
使用 CB Enterprise EDR 的資訊,擴充 Google SecOps filehash 實體。
在處理與具有 CB Platform 感應器的主機相關聯的可能惡意軟體感染警示時,使用者需要從 CB Enterprise EDR (平台的一部分) 取得與相關警示相關聯的特定檔案雜湊的豐富資料,以便進行調查。舉例來說,在擴充過程中,使用者可以取得相關的檔案雜湊中繼資料、這個檔案雜湊首次在組織中偵測到的時間,以及所在的主機。
執行日期
這項動作會對 Sha256 格式的 Filehash 實體執行。
動作執行結果
實體資料充實
| 補充資料欄位名稱 | 來源 (JSON 金鑰) | 邏輯 - 應用時機 |
|---|---|---|
| CB_ENT_EDR.sha256 | sha256 | 一律 |
| CB_ENT_EDR.md5 | md5 | 一律 |
| CB_ENT_EDR.architecture | 架構 | 一律 |
| CB_ENT_EDR.available_file_size | available_file_size | 一律 |
| CB_ENT_EDR.charset_id | charset_id | 一律 |
| CB_ENT_EDR.comments | 留言 | 如果不是空值 |
| CB_ENT_EDR.company_name | company_name | 一律 |
| CB_ENT_EDR.copyright | 版權 | 一律 |
| CB_ENT_EDR.file_available | file_available | 一律 |
| CB_ENT_EDR.file_description | file_description | 一律 |
| CB_ENT_EDR.file_size | file_size | 一律 |
| CB_ENT_EDR.file_version | file_version | 一律 |
| CB_ENT_EDR.internal_name | internal_name | 一律 |
| CB_ENT_EDR.lang_id | lang_id | 如果不是空值 |
| CB_ENT_EDR.original_filename | original_filename | 一律 |
| CB_ENT_EDR.os_type | os_type | 一律 |
| CB_ENT_EDR.private_build | private_build | 如果不是空值 |
| CB_ENT_EDR.product_description | product_description | 如果不是空值 |
| CB_ENT_EDR.product_name | product_name | 一律 |
| CB_ENT_EDR.product_version | product_version | 一律 |
| CB_ENT_EDR.special_build | special_build | 如果不是空值 |
| CB_ENT_EDR.trademark | trademark | 如果不是空值 |
| CB_ENT_EDR.found_times | num_devices | 一律 |
| CB_ENT_EDR.first_seen_device_timestamp | first_seen_device_timestamp | 一律 |
| CB_ENT_EDR.first_seen_device_id | first_seen_device_id | 一律 |
| CB_ENT_EDR.first_seen_device_name | first_seen_device_name | 一律 |
| CB_ENT_EDR.last_seen_device_timestamp | last_seen_device_timestamp | 一律 |
| CB_ENT_EDR.last_seen_device_id | last_seen_device_id | 一律 |
| CB_ENT_EDR.last_seen_device_name | last_seen_device_name | 一律 |
指令碼執行結果
| 指令碼執行結果名稱 | 值選項 | 範例 |
|---|---|---|
| is_success | True/False | is_success:False |
JSON 結果
{
"sha256": "e24dd278cec867486b68418c9066ffa9bd4f394dac3ba94125d58415f677f0f4",
"architecture": [
"amd64"
],
"available_file_size": 207800,
"charset_id": 1200,
"comments": null,
"company_name": "Example Organization",
"copyright": "Copyright © 2019",
"file_available": true,
"file_description": "OpenJDK Platform binary",
"file_size": 207800,
"file_version": "8.0.2320.9",
"internal_name": "java",
"lang_id": null,
"md5": "afede6f64ed8878bc0cac57e1831a3bc",
"original_filename": "java.exe",
"os_type": "WINDOWS",
"private_build": null,
"product_description": null,
"product_name": "OpenJDK Platform 8",
"product_version": "8.0.2320.9",
"special_build": null,
"trademark": null
}
案件總覽
| 結果類型 | 值 / 說明 | 類型 |
|---|---|---|
| 輸出訊息* | 動作不應失敗,也不應停止執行應對手冊:
動作應失敗並停止執行應對手冊:
|
一般 |