收集 Halcyon Anti-Ransomware 記錄
支援的國家/地區:
Google SecOps
SIEM
本文說明如何使用 Google Cloud Storage V2,將 Halcyon Anti-Ransomware 記錄檔擷取至 Google Security Operations。
Halcyon 是一種反勒索軟體平台,可運用 AI 技術偵測、防範及復原勒索軟體攻擊。並在偵測到勒索軟體事件、加密嘗試和復原動作時產生快訊。剖析器會將 JSON 格式的記錄欄位對應至統合式資料模型 (UDM),並處理檔案作業、使用者活動和安全性結果等事件類型。
事前準備
請確認您已完成下列事前準備事項:
- Google SecOps 執行個體
- 已啟用 Cloud Storage API 的 GCP 專案
- 有權建立及管理 GCS bucket 和 IAM 政策
- 具備記錄檔匯出功能的 Halcyon 控制台特殊存取權
建立 Google Cloud Storage bucket
- 前往 Google Cloud 控制台。
- 選取專案或建立新專案。
- 在導覽選單中,依序前往「Cloud Storage」>「Bucket」。
- 按一下「建立值區」。
請提供下列設定詳細資料:
設定 值 為 bucket 命名 輸入全域不重複的名稱 (例如 halcyon-logs)位置類型 根據需求選擇 (區域、雙區域、多區域) 位置 選取位置 (例如 us-central1)儲存空間級別 標準 (建議用於經常存取的記錄) 存取控管 統一 (建議) 保護工具 選用:啟用物件版本管理或資料保留政策 點選「建立」。
將 Halcyon 記錄匯出至 Google Cloud Storage
Halcyon 支援以 JSON 格式匯出記錄資料。請使用下列其中一種方法,將記錄檔傳送至 GCS。
選項 A:使用 Halcyon API 匯出記錄並上傳至 GCS
- 登入 Halcyon 管理控制台。
- 依序前往「Settings」>「API Access」,然後產生具有讀取權限的 API 金鑰。
- 複製並儲存「API Key」。
- 使用排定的指令碼或 Cloud Run 函式呼叫 Halcyon REST API、擷取事件記錄,並以 JSON 格式寫入 GCS。
選項 B:設定 SIEM 整合並轉送至 GCS
- 登入 Halcyon 管理控制台。
- 依序前往「設定」>「整合」>「SIEM」。
- 設定記錄匯出目的地,將 JSON 格式的事件寫入本機目錄或中繼儲存空間。
使用 Cloud Run 函式,定期將記錄上傳至 GCS bucket。
- 確認匯出的檔案為 JSON 格式。
- 每個檔案應包含一或多個事件記錄。
擷取 Google SecOps 服務帳戶
- 登入 Google SecOps 控制台。
- 依序前往「SIEM 設定」>「動態饋給」。
- 按一下「新增動態消息」。
- 按一下「設定單一動態饋給」。
- 選取「Google Cloud Storage V2」做為「來源類型」。
- 選取「Halcyon Anti Ransomware」做為「記錄類型」。
按一下「取得服務帳戶」。系統會顯示專屬服務帳戶電子郵件地址,例如:
chronicle-12345678@chronicle-gcp-prod.iam.gserviceaccount.com複製這個電子郵件地址,後續步驟會用到。
將 IAM 權限授予 Google SecOps 服務帳戶
- 依序前往「Cloud Storage」>「Buckets」。
- 按一下 bucket 名稱。
- 前往「權限」分頁標籤。
- 按一下「授予存取權」。
- 請提供下列設定詳細資料:
- 新增主體:貼上 Google SecOps 服務帳戶電子郵件地址。
- 指派角色:選取「Storage 物件檢視者」。
按一下 [儲存]。
- 如果您打算使用刪除選項 (刪除轉移的檔案),請授予 Storage 物件管理員角色,而非 Storage 物件檢視者。
在 Google SecOps 中設定動態饋給,擷取 Halcyon Anti-Ransomware 記錄
- 依序前往「SIEM 設定」>「動態饋給」。
- 按一下「新增動態消息」。
- 按一下「設定單一動態饋給」。
- 在「動態饋給名稱」欄位中輸入動態饋給名稱 (例如
Halcyon Anti-Ransomware logs)。 - 選取「Google Cloud Storage V2」做為「來源類型」。
- 選取「Halcyon Anti Ransomware」做為「記錄類型」。
- 點選「下一步」。
指定下列輸入參數的值:
欄位 值 儲存空間 bucket URI gs://halcyon-logs/halcyon/events/刪除來源的選項 根據偏好選取刪除選項 檔案存在時間上限 (天) 預設值為 180 天 資產命名空間 資產命名空間 擷取標籤 要套用至這個動態饋給事件的標籤 - 請將
halcyon-logs替換成實際的 GCS 值區名稱。 - 請務必在 URI 結尾加上尾端斜線 (
/)。
- 請將
點選「下一步」。
在「Finalize」(完成) 畫面中檢查新的動態饋給設定,然後按一下「Submit」(提交)。
UDM 對應表
| 記錄欄位 | UDM 對應 | 邏輯 |
|---|---|---|
| sshd、tty、euid、dataType、filterName、totalOccurrences、occurredAt、count、occurrences.IncorrectPasswords、occurrences.FailedPassword、occurrences.AuthFailure、policyMode、action | additional.fields | 如果存在,則與從每個欄位建立的標籤合併;totalOccurrences、count、occurrences 欄位會轉換為字串 |
| dnsArtifact.uri | network.dns.questions | 與包含名稱的問題陣列合併 |
| asset.id | principal.asset.asset_id | 串連為「ASSET:」+ asset.id |
| asset.kind | principal.asset.attribute.labels | 已與從 asset.kind 建立的 asset_kind_label 合併 |
| asset.name | principal.asset.hostname | 直接複製值 |
| ipArtifact.ipAddress | principal.asset.ip | 直接複製值 |
| summary.applicationName | principal.application | 直接複製值 |
| phost、asset.name | principal.hostname | 如果存在,則為 phost 的值,如果存在,則由 asset.name 覆寫 |
| ipArtifact.ipAddress | principal.ip | 直接複製值 |
| process.commandLine | principal.process.command_line | 直接複製值 |
| modifiedFilePath、artifact.filePath、process.artifact.filePath、processes.artifact.filePath | principal.process.file.full_path | 如果存在,值會設為 modifiedFilePath;如果存在,值會由 artifact.filePath 覆寫;如果存在,值會由 process.artifact.filePath 覆寫;如果存在,值會由 processes.artifact.filePath 覆寫 (已移除 processes.artifact.filePath 的引號) |
| lastOccurredAt | principal.process.file.last_seen_time | 使用日期篩選器轉換為 ISO8601 格式 |
| process.artifact.kind、artifact.kind、primaryProcess.artifact.kind | principal.process.file.mime_type | 如果存在,則為 process.artifact.kind 的值;如果存在,則由 artifact.kind 覆寫;如果存在,則由 primaryProcess.artifact.kind 覆寫 |
| artifact.sha256、process.artifact.sha256、processes.artifact.sha256 | principal.process.file.sha256 | 如果存在,則為構件的 sha256 值;如果存在,則由程序.構件.sha256 覆寫;如果存在,則由程序.構件.sha256 覆寫 |
| process.parentPid | principal.process.parent_pid | 直接複製值 |
| process.pid | principal.process.pid | 直接複製值 |
| user_displayname | principal.user.user_display_name | 直接複製值 |
| 使用者 | principal.user.userid | 直接複製值 |
| summary.artifact.filePath | target.file.full_path | 直接複製值 |
| summary.artifact.sha256 | target.file.sha256 | 直接複製值 |
| primaryProcess.commandLine | target.process.command_line | 移除引號後直接複製的值 |
| primaryProcess.kind | target.process.file.mime_type | 直接複製值 |
| primaryProcess.parentPid | target.process.parent_process.pid | 直接複製值 |
| primaryProcess.pid | target.process.pid | 直接複製值 |
| uid | target.user.userid | 直接複製值 |
| id | target.asset_id | 串連為「ASSET:」+ ID |
| 動作 | security_result.action | 如果動作是「封鎖」或「允許」,則為大寫 |
| reason.exitCode | security_result.action_details | 直接複製值 |
| dxpRule、monitoringReason、tenantId | security_result.detection_fields | 如果存在,則與從每個欄位建立的標籤合併;移除 dxpRule 的反斜線 |
| dxpRuleType | security_result.rule_type | 直接複製值 |
| ipArtifact.version | security_result.rule_version | 直接複製值 |
| msg, reason.cause | security_result.summary | 如果 msg 中有值,則會使用該值,但如果 reason.cause 中有值,則會覆寫該值 |
| 時間戳記 | metadata.event_timestamp | 使用日期篩選器轉換,格式為 MMM dd HH:mm:ss 或 MMM d HH:mm:ss |
| phost、ipArtifact.ipAddress、asset.name、user、uid、summary.artifact.sha256、summary.artifact.filePath | metadata.event_type | 如有主體和目標檔案,請設為 FILE_UNCATEGORIZED;如有主體和目標,請設為 USER_UNCATEGORIZED;如有主體,請設為 STATUS_UPDATE;否則請設為 GENERIC_EVENT (旗標衍生自來源) |
| kind | metadata.product_event_type | 直接複製值 |
| gupid、guid | metadata.product_log_id | 如果存在,則為 gupid 的值;如果存在,則為 guid 的值 |
| metadata.product_name | 設為「Halcyon Anti Ransomware」 | |
| metadata.vendor_name | 設為「Halcyon」 | |
primaryProcess.kind |
event.idm.read_only_udm.target.process.file.mime_type |
從變更記錄對應 |
primaryProcess.artifact.kind |
event.idm.read_only_udm.principal.process.file.mime_type |
從變更記錄對應 |
processes.artifact.filePath |
event.idm.read_only_udm.principal.process.file.full_path |
從變更記錄對應 |
processes.artifact.sha256 |
event.idm.read_only_udm.principal.process.file.sha256 |
從變更記錄對應 |
action |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
filterName |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
policyMode |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
euid |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
occurrences.AuthFailure |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
occurrences.FailedPassword |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
occurredAt |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
occurrences.IncorrectPasswords |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
guid |
event.idm.read_only_udm.metadata.product_log_id |
從變更記錄對應 |
gupid |
event.idm.read_only_udm.metadata.product_log_id |
從變更記錄對應 |
count |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
artifact.filePath |
event.idm.read_only_udm.principal.process.file.full_path |
從變更記錄對應 |
artifact.sha256 |
event.idm.read_only_udm.principal.process.file.sha256 |
從變更記錄對應 |
artifact.kind |
event.idm.read_only_udm.principal.process.file.mime_type |
從變更記錄對應 |
monitoringReason |
event.idm.read_only_udm.security_result.detection_fields |
從變更記錄對應 |
dxpRule |
event.idm.read_only_udm.security_result.detection_fields |
從變更記錄對應 |
modifiedFilePath |
event.idm.read_only_udm.principal.process.file.full_path |
從變更記錄對應 |
ipArtifact.version |
event.idm.read_only_udm.security_result.rule_version |
從變更記錄對應 |
ipArtifact.ipAddress |
event.idm.read_only_udm.principal.ip |
從變更記錄對應 |
ipArtifact.ipAddress |
event.idm.read_only_udm.principal.asset.ip |
從變更記錄對應 |
process.parentPid |
event.idm.read_only_udm.principal.process.parent_pid |
從變更記錄對應 |
dxpRuleType |
event.idm.read_only_udm.security_result.rule_type |
從變更記錄對應 |
summary.applicationName |
event.idm.read_only_udm.principal.application |
從變更記錄對應 |
process.pid |
event.idm.read_only_udm.principal.process.pid |
從變更記錄對應 |
reason.exitCode |
event.idm.read_only_udm.security_result.action_details |
從變更記錄對應 |
reason.cause |
event.idm.read_only_udm.security_result.summary |
從變更記錄對應 |
dnsArtifact_uri |
event.idm.read_only_udm.network.dns.questions |
從變更記錄對應 |
uid |
event.idm.read_only_udm.target.user.userid |
從變更記錄對應 |
tty |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
sshd |
event.idm.read_only_udm.additional.fields |
從變更記錄對應 |
phost |
event.idm.read_only_udm.principal.hostname |
從變更記錄對應 |
user_displayname |
event.idm.read_only_udm.principal.user.user_display_name |
從變更記錄對應 |
msg |
event.idm.read_only_udm.security_result.summary |
從變更記錄對應 |
timestamp |
event.idm.read_only_udm.metadata.event_timestamp |
從變更記錄對應 |
user |
event.idm.read_only_udm.principal.user.userid |
從變更記錄對應 |
變更記錄
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。