收集 Windows 事件記錄
本文說明如何使用 Bindplane 將 Windows 事件記錄檔擷取至 Google Security Operations。
Windows 事件記錄是 Microsoft Windows 作業系統的主要記錄機制,可記錄系統、安全性、應用程式和自訂事件。這些記錄提供重要的稽核資料,包括使用者登入/登出、程序建立、政策變更和系統健康資訊,可用於安全監控和法規遵循。Bindplane 代理程式會使用 windowseventlog 接收器,以原生方式收集 Windows 事件記錄,不需轉送 syslog。剖析器支援 JSON、XML、SYSLOG+KV、SYSLOG+JSON 和 SYSLOG+XML 格式,並將擷取的欄位對應至統合式資料模型 (UDM)。
事前準備
請確認您已完成下列事前準備事項:
- Google SecOps 執行個體
- Windows Server 2012 R2 以上版本,或 Windows 10/11 用戶端
- Windows 系統的管理員存取權
- 如果透過 Proxy 執行,請確保防火牆通訊埠已根據 Bindplane 代理程式需求開啟
取得 Google SecOps 擷取驗證檔案
- 登入 Google SecOps 控制台。
- 依序前往「SIEM 設定」>「收集代理程式」。
- 下載擷取驗證檔案。將檔案安全地儲存在要安裝 Bindplane 的系統上。
取得 Google SecOps 客戶 ID
- 登入 Google SecOps 控制台。
- 依序前往「SIEM 設定」>「設定檔」。
- 複製並儲存「機構詳細資料」專區中的客戶 ID。
安裝 Bindplane 代理程式
在 Windows 作業系統上安裝 Bindplane 代理程式。
Windows 安裝
- 以管理員身分開啟「命令提示字元」或「PowerShell」。
執行下列指令:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet等待安裝完成。
執行下列指令來驗證安裝:
sc query observiq-otel-collector
服務應顯示為「RUNNING」(執行中)。
其他安裝資源
如需其他安裝選項和疑難排解資訊,請參閱 Bindplane 代理程式安裝指南。
設定 Bindplane 代理程式,收集 Windows 系統監控記錄並傳送至 Google SecOps
找出設定檔
Windows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
編輯設定檔
將
config.yaml的所有內容替換為下列設定:receivers: windowseventlog/application: channel: Application raw: true max_reads: 100 poll_interval: 5s start_at: end windowseventlog/security: channel: Security raw: true max_reads: 100 poll_interval: 5s start_at: end windowseventlog/system: channel: System raw: true max_reads: 100 poll_interval: 5s start_at: end exporters: chronicle/chronicle_w_labels: compression: gzip creds_file_path: 'C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json' customer_id: 'YOUR_CUSTOMER_ID' endpoint: malachiteingestion-pa.googleapis.com log_type: 'WINEVTLOG' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - windowseventlog/application - windowseventlog/security - windowseventlog/system exporters: - chronicle/chronicle_w_labels
設定參數
替換下列預留位置:
- 匯出工具設定:
creds_file_path:擷取驗證檔案的完整路徑 (預設:C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json)YOUR_CUSTOMER_ID:從「取得客戶 ID」一節取得的客戶 IDendpoint:區域端點網址:- 美國:
malachiteingestion-pa.googleapis.com - 歐洲:
europe-malachiteingestion-pa.googleapis.com - 亞洲:
asia-southeast1-malachiteingestion-pa.googleapis.com - 如需完整清單,請參閱「區域端點」
- 美國:
- 匯出工具設定:
儲存設定檔
- 編輯完成後,請儲存檔案:
- Windows:依序點選「檔案」>「儲存」
重新啟動 Bindplane 代理程式,以套用變更
如要在 Windows 中重新啟動 Bindplane 代理程式,請選擇下列任一做法:
以管理員身分開啟命令提示字元或 PowerShell:
net stop observiq-otel-collector && net start observiq-otel-collector服務控制台:
- 按下
Win+R鍵,輸入services.msc,然後按下 Enter 鍵。 - 找出 observIQ OpenTelemetry Collector。
按一下滑鼠右鍵,然後選取「重新啟動」。
確認服務正在執行:
sc query observiq-otel-collector檢查記錄中是否有錯誤:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- 按下
設定 Windows 事件記錄收集
由於 Bindplane 代理程式會使用 windowseventlog 接收器原生收集 Windows 事件記錄,因此不需要設定 Syslog 轉送。請改為確認所需的 Windows 事件記錄管道是否處於啟用狀態,並產生事件。
確認事件管道處於有效狀態
- 前往 Windows 事件檢視器,確認所需事件管道是否處於啟用狀態。
- 如要啟用其他事件管道:
- 開啟「事件檢視器」 (按下
Win+R鍵,輸入eventvwr.msc,然後按下 Enter 鍵)。 - 前往「應用程式和服務記錄」。
- 針對每個所需管道按一下滑鼠右鍵,然後選取「啟用記錄」。
- 開啟「事件檢視器」 (按下
- 主要收集管道:
- 應用程式:應用程式錯誤、警告和資訊
- 安全性:登入事件、權限使用情形、政策變更 (需要稽核政策設定)
- 系統:系統元件事件、驅動程式故障、服務異動
設定稽核政策,收集安全性事件
- 開啟「本機安全性原則」 (按下
Win+R鍵,輸入secpol.msc,然後按下 Enter 鍵)。 - 依序前往「安全性設定」>「本機原則」>「稽核原則」。
- 啟用所需的稽核類別:
- 稽核帳戶登入事件:成功、失敗
- 稽核登入事件:成功、失敗
- 稽核物件存取權:成功、失敗
- 稽核政策變更:成功、失敗
- 稽核權限使用情形:成功、失敗
- 稽核程序追蹤:成功、失敗
UDM 對應表
| NXLog 欄位 | UDM 欄位 |
|---|---|
| EventTime | metadata.event_timestamp |
| 主機名稱 | principal.hostname |
| EventID | product_event_type 設為「%{EventID}」,security_result.rule_name 設為「EventID: %{EventID}」 |
| SourceName | metadata.product_name 設為「%25%7BSourceName}」,metadata.vendor_name 設為「Microsoft」 |
| 類別 | about.labels.key/value additional.fields.key additional.fields.value.string_value |
| 管道 | about.labels.key/value additional.fields.key additional.fields.value.string_value |
| 嚴重性 | 對應至 security_result.severity 欄位的值如下:原始值 0 (無) 會設為 UNKNOWN_SEVERITY,原始值 1 (重大) 會設為 INFORMATIONAL,原始值 2 (錯誤) 會設為 ERROR,原始值 3 (警告) 會設為 ERROR,原始值 4 (資訊) 會設為 INFORMATIONAL,原始值 5 (詳細) 會設為 INFORMATIONAL |
| UserID | principal.user.windows_sid |
| ExecutionProcessID | principal.process.pid |
| ProcessID | principal.process.pid |
| ProviderGuid | metadata.product_deployment_id |
| RecordNumber | metadata.product_log_id |
| SourceModuleName | observer.labels.key/value additional.fields.key additional.fields.value.string_value |
| SourceModuleType | observer.application |
| Opcode | about.labels.key/value additional.fields.key additional.fields.value.string_value |
| 關鍵字 | additional.fields.key additional.fields.value.string_value |
| ActivityID | security_result.detection_fields.key/value |
| 訊息 | additional.fields.key additional.fields.value.string_value |
| HostIP | intermediary.ip |
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。