收集 Cybereason EDR 記錄

支援的國家/地區:

本文說明如何使用 Bindplane 代理程式,將 Cybereason EDR 記錄擷取至 Google Security Operations。

Cybereason EDR (端點偵測與回應) 是一種網路安全平台,可偵測及回應端點的進階威脅。這項功能會找出 Malops (惡意作業),也就是將可疑活動連結成完整攻擊敘事的相關攻擊鏈,並向安全分析師提供威脅進展、受影響的機器、遭入侵的使用者和網路連線的相關資訊。

事前準備

請確認您已完成下列事前準備事項:

  • Google SecOps 執行個體
  • Windows Server 2016 以上版本,或搭載 systemd 的 Linux 主機
  • Bindplane 代理程式與 Cybereason Detection Server 之間的網路連線
  • 如果透過 Proxy 執行,請確保防火牆通訊埠已根據 Bindplane 代理程式需求開啟
  • 具備系統管理員角色的 Cybereason 管理控制台存取權
  • Cybereason 平台 20.1 以上版本

取得 Google SecOps 擷取驗證檔案

  1. 登入 Google SecOps 控制台。
  2. 依序前往「SIEM 設定」>「收集代理程式」
  3. 下載擷取驗證檔案。將檔案安全地儲存在要安裝 Bindplane 代理程式的系統中。

取得 Google SecOps 客戶 ID

  1. 登入 Google SecOps 控制台。
  2. 依序前往「SIEM 設定」>「設定檔」
  3. 複製並儲存「機構詳細資料」專區中的客戶 ID

安裝 Bindplane 代理程式

請按照下列操作說明,在 Windows 或 Linux 作業系統上安裝 Bindplane 代理程式。

Windows 安裝

  1. 以管理員身分開啟「命令提示字元」或「PowerShell」
  2. 執行下列指令:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. 等待安裝完成。

  4. 執行下列指令來驗證安裝:

    sc query observiq-otel-collector
    

    服務狀態應為「RUNNING」

Linux 安裝

  1. 開啟具有根層級或 sudo 權限的終端機。
  2. 執行下列指令:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    
  3. 等待安裝完成。

  4. 執行下列指令來驗證安裝:

    sudo systemctl status observiq-otel-collector
    

    服務狀態應為「active (running)」

其他安裝資源

如需其他安裝選項和疑難排解資訊,請參閱 Bindplane 代理程式安裝指南

設定 Bindplane 代理程式,擷取系統記錄檔並傳送至 Google SecOps

找出設定檔

  • Linux:

    sudo nano /etc/bindplane-agent/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

編輯設定檔

  1. config.yaml 的所有內容替換為下列設定:

    receivers:
      tcplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/cybereason:
        compression: gzip
        creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
        customer_id: 'your-customer-id'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: CYBEREASON_EDR
        raw_log_field: body
    
    service:
      pipelines:
        logs/cybereason_to_chronicle:
          receivers:
            - tcplog
          exporters:
            - chronicle/cybereason
    
  2. 替換下列預留位置:

    • 接收器設定:

      • listen_address:要接聽的 IP 位址和通訊埠:

        • 0.0.0.0:514 在通訊埠 514 上監聽所有介面 (需要 Linux 上的根目錄)
        • 0.0.0.0:1514,在非特權連接埠上接聽 (建議用於 Linux 非根目錄)
      • 接收器類型選項:

        • tcplog (Cybereason Syslog 轉送功能需要此設定)
    • 匯出工具設定:

      • creds_file_path:Google SecOps 擷取驗證檔案的完整路徑:

        • Linux/etc/bindplane-agent/ingestion-auth.json
        • WindowsC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
      • customer_id:Google SecOps 客戶 ID

      • endpoint:區域端點網址:

        • 美國malachiteingestion-pa.googleapis.com
        • 歐洲europe-malachiteingestion-pa.googleapis.com
        • 亞洲asia-southeast1-malachiteingestion-pa.googleapis.com
        • 如需完整清單,請參閱「區域端點

儲存設定檔

編輯完成後,請儲存檔案:

  • Linux:依序按下 Ctrl+OEnterCtrl+X
  • Windows:依序點選「檔案」>「儲存」

重新啟動 Bindplane 代理程式,以套用變更

  • 如要在 Linux 中重新啟動 Bindplane 代理程式,請執行下列步驟:

    1. 執行下列指令:

      sudo systemctl restart observiq-otel-collector
      
    2. 確認服務正在執行︰

      sudo systemctl status observiq-otel-collector
      
    3. 檢查記錄中是否有錯誤:

      sudo journalctl -u observiq-otel-collector -f
      
  • 如要在 Windows 中重新啟動 Bindplane 代理程式,請按照下列步驟操作:

    1. 您可以選擇下列其中一個選項:

      • 以管理員身分開啟命令提示字元或 PowerShell:

        net stop observiq-otel-collector && net start observiq-otel-collector
        
      • 服務控制台:

        1. 按下 Win+R 鍵,輸入 services.msc,然後按下 Enter 鍵。
        2. 找出 observIQ OpenTelemetry Collector
        3. 按一下滑鼠右鍵,然後選取「重新啟動」
    2. 確認服務正在執行︰

      sc query observiq-otel-collector
      
    3. 檢查記錄中是否有錯誤:

      type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
      

設定 Cybereason EDR 系統記錄轉送

Cybereason 會透過 syslog 以 CEF (通用事件格式) 傳送 MalOp 和使用者稽核事件。如要設定 Syslog 轉送,請向 Cybereason 技術支援團隊提出要求。

向 Cybereason 技術支援團隊要求轉送系統記錄

  1. 登入 Cybereason 管理控制台
  2. 透過 Cybereason 支援入口網站聯絡 Cybereason 技術支援團隊
  3. 提交 Syslog 轉送設定要求,並提供下列資訊:
    • 系統記錄檔伺服器 IP 位址:Bindplane 代理程式主機的 IP 位址 (例如 192.168.1.100)。
    • 系統記錄檔伺服器連接埠:與 Bindplane 代理程式 listen_address 相符的連接埠 (例如 514)。
    • 通訊協定:TCP (未加密的 TCP 系統記錄)。
    • 記錄類型:要求轉送下列記錄類型:
    • MalOp syslog:安全快訊和惡意作業事件
    • 使用者稽核 Syslog:使用者活動和管理動作
  4. 等待 Cybereason 技術支援團隊確認系統記錄轉送設定。

設定防火牆規則

  • 請確認已設定下列防火牆規則:

    方向 通訊協定 通訊埠 來源 目的地
    傳出 TCP 514 Cybereason Detection Server Bindplane 代理程式主機

替代方案:Cybereason CEF Forwarder

如果 Cybereason 技術支援團隊無法設定直接轉送 Syslog,您可以使用 Cybereason CEF Forwarder 工具:

  1. 向 Cybereason 技術支援團隊索取 Cybereason CEF Forwarder Docker 映像檔並下載。
  2. cybereason-forwarders/config/config.json 建立或編輯設定檔。
  3. 進行下列設定:

    {
      "host": "<BINDPLANE_AGENT_IP>",
      "port": 514
    }
    
  4. <BINDPLANE_AGENT_IP> 替換為 Bindplane 代理程式主機的 IP 位址。

  5. 建構並執行 Docker 容器:

    docker build -t cybereason-cef-forwarder .
    docker run -d --name cybereason-forwarder cybereason-cef-forwarder
    

Syslog 事件類型

Cybereason 會針對下列事件類別產生 CEF Syslog 訊息:

事件類別 說明
建立 MalOp 偵測到新的惡意作業
MalOp 更新 現有 MalOp 狀態或詳細資料已變更
MalOp 已關閉 分析師已解決或關閉惡意行動
偵測到惡意軟體 端點上發現惡意軟體
可疑程序 偵測到可疑的程序活動
網路連線 偵測到可疑的網路連線
使用者登入 使用者驗證事件
機器隔離 端點與網路隔離或重新連線
政策變更 安全性政策修改

驗證系統記錄檔轉送功能

  1. Cybereason 技術支援團隊確認 Syslog 設定後,請在 Cybereason 控制台中執行測試動作 (例如查看 MalOp 或隔離測試機器)。
  2. 檢查 Bindplane 代理程式記錄,確認是否有傳入的 Syslog 訊息:
    • Linuxsudo journalctl -u observiq-otel-collector -f
    • Windowstype "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
  3. 確認記錄檔中顯示 CEF 格式的訊息,例如:

    CEF:0|Cybereason|Cybereason|2.0|MalOp|MalOp Created|8|cs1=MALOP_ID_HERE dvchost=server01.company.com suser=admin@company.com
    

UDM 對應表

記錄欄位 UDM 對應 邏輯
detectionName_label additional.fields 以鍵/值組合形式對應
sensorId_label additional.fields 以鍵/值組合形式對應
狀態 metadata.description 如果值不是空白
log_description metadata.description 如果狀態為空白,則會回溯
(CEF 格式) metadata.event_type 針對 CEF 記錄設為 GENERIC_EVENT
event_type metadata.event_type 如果值為「PROCESS_OPEN」,請設為 PROCESS_OPEN;如果值為「NETWORK_CONNECTION」,請設為 NETWORK_CONNECTION;如果值為「MALWARE」,請設為 SCAN_HOST
has_principal、has_target metadata.event_type 如果 has_principal 和 has_target 皆為 true,請設為 SCAN_FILE
has_principal metadata.event_type 如果只有 has_principal 為 true,則設為 STATUS_UPDATE
has_user metadata.event_type 如果 Malop 環境中的 has_user 為 true,請設為 USER_UNCATEGORIZED
(預設) metadata.event_type 否則請設為 GENERIC_EVENT
LogType metadata.product_event_type 如果值不是空白
malop_data.simpleValues.elementDisplayName.values.0 metadata.product_event_type 如果 LogType 為空值,則會回溯
類型 metadata.product_event_type 備用
prod_event、prod_event2 metadata.product_event_type 串連為 prod_event - prod_event2
malop_process.guidString metadata.product_log_id 適用於 PROCESS_OPEN 事件類型
malop_connection.guidString metadata.product_log_id 適用於 NETWORK_CONNECTION 事件類型
guid metadata.product_log_id 適用於惡意軟體或 Malop 事件類型
(靜態) metadata.product_version 一開始設為「2.0」
Sensor.version metadata.product_version 覆寫「2.0」(如有)
malop_url metadata.url_back_to_product 直接對應
(靜態) metadata.vendor_name 設為「Cybereason」
方向 network.direction 直接對應
malop_connection.simpleValues.transportProtocol.values.0 network.ip_protocol 直接對應
malop_connection.simpleValues.receivedBytesCount.values.0 network.received_bytes 已轉換為無正負號整數
malop_connection.simpleValues.transmittedBytesCount.values.0 network.sent_bytes 已轉換為無正負號整數
Sensor.fqdn principal.administrative_domain 直接對應
malop_process.elementValues.ownerMachine.elementValues.0.guid principal.asset.asset_id 開頭為「Cybereason:」
malop_data.elementValues.affectedMachines.elementValues.0.guid principal.asset.asset_id 前置字串為「Cybereason:」,後援
malop_process.elementValues.ownerMachine.elementValues.0.name principal.asset.hostname 直接對應
malop_data.elementValues.affectedMachines.elementValues.0.name principal.asset.hostname 備用
machineName principal.asset.hostname 備用
主機 principal.asset.hostname 備用
dvchost principal.asset.hostname 備用
Sensor.fqdn principal.asset.hostname 備用
client.ip principal.asset.ip 直接對應
Sensor.externalIpAddress principal.asset.ip 備用
malop_process.elementValues.ownerMachine.elementValues.0.name principal.hostname 直接對應
malop_data.elementValues.affectedMachines.elementValues.0.name principal.hostname 備用
machineName principal.hostname 備用
主機 principal.hostname 備用
dvchost principal.hostname 備用
Sensor.fqdn principal.hostname 備用
client.ip principal.ip 直接對應
Sensor.externalIpAddress principal.ip 備用
Sensor.internalIpAddress principal.nat_ip 直接對應
Sensor.privateServerIp principal.nat_ip 備用
Sensor.osType principal.platform 如果值為「WINDOWS」,請設為 WINDOWS;如果值為「LINUX」,請設為 LINUX;如果值為「MAC」,請設為 MAC
Sensor.osVersionType principal.platform_version 直接對應
malop_connection.simpleValues.localPort.values.0 principal.port 已轉換為整數
malop_process.simpleValues.commandLine.values.0 principal.process.command_line 直接對應
malwareDataModel.filePath principal.process.command_line 備用
malop_process.simpleValues.calculatedName.values.0 principal.process.file.full_path 直接對應
名稱 principal.process.file.full_path 備用
malop_process.elementValues.parentProcess.elementValues.0.guid principal.process.parent_process.product_specific_process_id 開頭為「Cybereason:」
malop_process.elementValues.self.elementValues.0.guid principal.process.pid 直接對應
malop_process.elementValues.self.elementValues.0.guid principal.process.product_specific_process_id 開頭為「Cybereason:」
malop_connection.elementValues.ownerProcess.elementValues.0.guid principal.process.product_specific_process_id 前置字串為「Cybereason:」,後援
companyName principal.user.company_name 直接對應
malop_process.elementValues.calculatedUser.elementValues.0.name principal.user.user_display_name 直接對應
malop_data.elementValues.affectedUsers.elementValues.0.name principal.user.user_display_name 備用
malop_connection.elementValues.ownerProcess.user.elementValues.0.name principal.user.user_display_name 備用
malop_process.elementValues.calculatedUser.elementValues.0.guid principal.user.userid 直接對應
malop_data.elementValues.affectedUsers.elementValues.0.guid principal.user.userid 備用
malop_connection.elementValues.ownerProcess.user.elementValues.0.guid principal.user.userid 備用
security_result_action security_result.action 根據狀態設為 ALLOW、BLOCK 或 QUARANTINE
is_alert security_result.alert_state 如果值為 True,則設為 ALERTING
sr_category security_result.category 設為 SOFTWARE_MALICIOUS 或 NETWORK_MALICIOUS
query_details security_result.detection_fields 以鍵/值組合形式對應
affected_machine_count security_result.detection_fields 以鍵/值組合形式對應
link_to_malop security_result.detection_fields 以鍵/值組合形式對應
context_label security_result.detection_fields 以鍵/值組合形式對應
old_state_label security_result.detection_fields 以鍵/值組合形式對應
new_state_label security_result.detection_fields 以鍵/值組合形式對應
investigation_label security_result.detection_fields 以鍵/值組合形式對應
event_id_label security_result.detection_fields 以鍵/值組合形式對應
malop_activity_type_label security_result.detection_fields 以鍵/值組合形式對應
malop_suspect_label security_result.detection_fields 以鍵/值組合形式對應
malop_key_suspicion_label security_result.detection_fields 以鍵/值組合形式對應
device_custom_date_label security_result.detection_fields 以鍵/值組合形式對應
device_custom_date2_label security_result.detection_fields 以鍵/值組合形式對應
device_custom_date3_label security_result.detection_fields 以鍵/值組合形式對應
guid_label security_result.detection_fields 以鍵/值組合形式對應
displayName_label security_result.detection_fields 以鍵/值組合形式對應
pylumId_label security_result.detection_fields 以鍵/值組合形式對應
connected_label security_result.detection_fields 以鍵/值組合形式對應
isolated_label security_result.detection_fields 以鍵/值組合形式對應
osType_label security_result.detection_fields 以鍵/值組合形式對應
admin_label security_result.detection_fields 以鍵/值組合形式對應
domainUser_label security_result.detection_fields 以鍵/值組合形式對應
localSystem_label security_result.detection_fields 以鍵/值組合形式對應
說明 security_result.description 與 decision_feature、malop_status、privileges、passwordAgeDays、elementType、status、score、detectionValue、detectionValueType、detectionEngine 串連
decision_feature security_result.description 串連至說明
malop_status security_result.description 串連至說明
權限 security_result.description 串連至說明
passwordAgeDays security_result.description 串連至說明
elementType security_result.description 串連至說明
狀態 security_result.description 串連至說明
分數 security_result.description 串連至說明
detectionValue security_result.description 串連至說明
detectionValueType security_result.description 串連至說明
detectionEngine security_result.description 串連至說明
malop_data.malopPriority security_result.priority 直接對應
malop_severity security_result.severity 直接對應
security_severity security_result.severity 如果值大於 8,請設為「重大」;如果大於 6,請設為「高」;如果大於 4,請設為「中」;如果大於 1,請設為「低」
嚴重性 security_result.severity 如果為「Info」,請設為 INFORMATIONAL;如果為「Error」或「High」,請設為 ERROR;如果為「Warning」或「Medium」,請設為 MEDIUM;如果為「Critical」,請設為 CRITICAL;如果為「Low」,請設為 LOW;否則請設為 UNKNOWN
說明 security_result.summary 直接對應
類型 security_result.summary 備用
malopId security_result.threat_id 直接對應
malop_data.simpleValues.detectionType.values.0 security_result.threat_name 直接對應
virusName security_result.threat_name 備用
狀態 security_result.threat_status 如果值為「有效」,則設為「有效」,否則為「誤判」
malop_url security_result.url_back_to_product 直接對應
machineName target.asset.hostname 直接對應
affectedMachine target.asset.hostname 備用
dvchost target.asset.hostname 備用
Sensor.serverName target.asset.hostname 備用
server.ip target.asset.ip 直接對應
Sensor.serverIp target.asset.ip 備用
malop_process.simpleValues.calculatedName.values.0 target.file.full_path 直接對應
malop_connection.elementValues.ownerProcess.elementValues.0.name target.file.full_path 備用
名稱 target.file.full_path 備用
malwareDataModel_filePath target.file.full_path 備用
malop_process.simpleValues.imageFile.md5String.values.0 target.file.md5 直接對應
名稱 target.file.names 直接對應
machineName target.hostname 直接對應
affectedMachine target.hostname 備用
dvchost target.hostname 備用
Sensor.serverName target.hostname 備用
server.ip target.ip 直接對應
Sensor.serverIp target.ip 備用
malop_connection.simpleValues.remoteAddressCountryName.values.0 target.location.country_or_region 直接對應
Sensor.privateServerIp target.nat_ip 直接對應
malop_connection.simpleValues.remotePort.values.0 target.port 已轉換為整數
malop_process.simpleValues.calculatedName.values.0 target.process.file.full_path 直接對應
malop_process.elementValues.self.elementValues.0.guid target.process.pid 直接對應
malop_url target.url 直接對應
(靜態) metadata.product_name 設為「Cybereason」

還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。