收集 Cisco eStreamer 記錄

剖析器版本:5.0

支援的國家/地區:

本文說明如何使用 Bindplane,將 Cisco eStreamer 記錄擷取至 Google Security Operations。
剖析器會從 Cisco eStreamer syslog 格式的記錄中,擷取鍵/值組合的欄位。它會使用 grok 和/或 kv 剖析記錄訊息,然後將這些值對應至統合式資料模型 (UDM)。此外,也會為事件來源和類型設定預設中繼資料值。

事前準備

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

  • Google SecOps 執行個體。
  • Windows Server 2016 以上版本,或搭載 systemd 的 Linux 主機。
  • 如果透過 Proxy 執行,請確保防火牆通訊埠已根據 Bindplane 代理程式需求開啟。
  • Cisco Firepower Management Center (FMC) 的特殊存取權。
  • 用來執行 eNcore CLI 用戶端的 Linux 系統。

取得 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
    

Linux 安裝

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

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

其他安裝資源

如需其他安裝選項,請參閱這份安裝指南

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

  1. 存取設定檔:

    • 找出 config.yaml 檔案。通常位於 Linux 的 /observiq-otel-collector/ 目錄,或 Windows 的 `C:\Program Files\observIQ OpenTelemetry Collector` 目錄。
    • 使用文字編輯器 (例如 nanovi 或記事本) 開啟檔案。
  2. 按照下列方式編輯 config.yaml 檔案:

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:5514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: YOUR_CUSTOMER_ID
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'CISCO_ESTREAMER'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
  • 視基礎架構需求,替換通訊埠和 IP 位址。
  • YOUR_CUSTOMER_ID 替換為實際的客戶 ID。
  • /path/to/ingestion-authentication-file.json 更新為您在步驟 1 中儲存驗證檔案的檔案路徑。

重新啟動 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"
    

在 Cisco eStreamer 上設定 Syslog 轉送功能

在 Firepower Management Center 上設定 eStreamer

  1. 登入 Firepower Management Center
  2. 依序前往「System」>「Integration」>「eStreamer」
  3. 按一下「eStreamer」eStreamer,存取 eStreamer 事件設定。
  4. 勾選要擷取的事件類型旁邊的核取方塊:
    • 入侵事件:入侵偵測事件
    • 入侵事件封包資料:與入侵事件相關聯的封包擷取資料
    • 連線事件:適用於網路連線資料
    • 安全情報快訊事件:用於威脅情報資料
    • 檔案事件:適用於檔案分析事件
    • 惡意軟體事件:惡意軟體偵測事件
  5. 按一下 [儲存]

建立 eStreamer 用戶端

  1. 在「eStreamer」頁面中,按一下「Create Client」(建立用戶端)
  2. 請提供下列設定詳細資料:
    • 主機名稱:輸入要執行 eNcore 用戶端的 Linux 系統 IP 位址。
    • 密碼:輸入密碼來加密憑證檔案。
  3. 按一下 [儲存]
  4. 下載產生的 PKCS12 憑證檔案,並傳輸至 eNcore 用戶端系統。

安裝及設定 eNcore CLI 用戶端

  1. 在 Linux 系統上,從 Cisco 下載 eStreamer eNcore CLI 用戶端。
  2. 解壓縮 eNcore 套件:

    tar -xzf eStreamer-eNcore-*.tar.gz
    cd eStreamer-eNcore-*
    
  3. 執行設定指令碼:

    ./encore.sh setup
    
  4. 系統提示時,請選擇鍵/值組合的輸出格式 (與 SIEM 系統相容)。

  5. 輸入 FMC IP 位址和 PKCS12 憑證密碼。

  6. 設定 estreamer.conf 檔案,將系統記錄訊息輸出至 Bindplane 代理程式:

    • 使用文字編輯器開啟 estreamer.conf 檔案。
    • 找到輸出器部分,並設定將系統記錄傳送至 Bindplane 代理程式:
    {
      "handler": {
        "outputters": [
          {
            "name": "syslog",
            "adapter": "kvpair",
            "enabled": true,
            "stream": {
              "uri": "udp://BINDPLANE_AGENT_IP:5514"
            }
          }
        ]
      }
    }
    
  7. BINDPLANE_AGENT_IP 替換為 Bindplane 代理程式的 IP 位址。

啟動 eNcore Client

  1. 在前台模式下測試連線:

    ./encore.sh foreground
    
  2. 驗證完成後,請以背景服務的形式啟動 eNcore:

    ./encore.sh start
    

UDM 對應表

記錄欄位 UDM 對應 邏輯
additional_deviceInboundInterface additional.fields 已合併
additional_deviceOutboundInterface additional.fields 已合併
additional_start additional.fields 已合併
has_target extensions.auth.type 已對應:trueAUTHTYPE_UNSPECIFIED
dvchost intermediary.asset.hostname 直接對應
hostname intermediary.asset.hostname 直接對應
dvchost intermediary.hostname 直接對應
hostname intermediary.hostname 直接對應
dvcpid intermediary.process.pid 直接對應
ts metadata.event_timestamp 已剖析為 MMM d HH:mm:ss
has_principal metadata.event_type 對應值 (共 5 個,例如 trueNETWORK_HTTPtrueNETWORK_DNStrue → `NETW...
has_target metadata.event_type 已對應:trueUSER_UNCATEGORIZED
product_event_type metadata.product_event_type 直接對應
product_name metadata.product_name 直接對應
version metadata.product_version 直接對應
vendor_name metadata.vendor_name 直接對應
app network.application_protocol 直接對應
src network.dhcp.ciaddr 直接對應
deviceDirection network.direction 已對應:0INBOUND1OUTBOUND
dns_question network.dns.questions 已合併
requestClientApplication network.http.user_agent 直接對應
ip_protocol_out network.ip_protocol 直接對應
bytesIn network.received_bytes 直接對應
bytesOut network.sent_bytes 直接對應
deviceExternalId principal.asset.asset_id 直接對應
src principal.asset.ip 已合併
src principal.ip 已合併
spt principal.port 直接對應
security_result_action security_result.action 已合併
act security_result.action_details 直接對應
category security_result.category 已合併
cat security_result.category_details 已合併
cs5 security_result.description 直接對應
blockLength_label security_result.detection_fields 已合併
blockType_label security_result.detection_fields 已合併
cs1_var security_result.detection_fields 已合併
cs2_var security_result.detection_fields 已合併
cs3_var security_result.detection_fields 已合併
cs4_var security_result.detection_fields 已合併
cs5_var security_result.detection_fields 已合併
cs6_var security_result.detection_fields 已合併
suser_var security_result.detection_fields 已合併
cs6 security_result.rule_id 直接對應
severity security_result.severity_details 直接對應
outcome security_result.summary 直接對應
destinationDnsDomain target.asset.hostname 直接對應
dst target.asset.ip 已合併
fname target.file.full_path 直接對應
fileType target.file.mime_type 直接對應
fileHash target.file.sha256 直接對應
fsize target.file.size 直接對應
destinationDnsDomain target.hostname 直接對應
host target.hostname 直接對應
dst target.ip 已合併
dpt target.port 直接對應
request target.url 直接對應
不適用 extensions.auth.type 常數:AUTHTYPE_UNSPECIFIED
不適用 metadata.event_type 常數:NETWORK_HTTP
不適用 network.direction 常數:INBOUND
BLOCK security_result.action 從變更記錄對應
SOFTWARE_PUA security_result.category 從變更記錄對應
NETWORK_COMMAND_AND_CONTROL security_result.category 從變更記錄對應
TOR_EXIT_NODE security_result.category 從變更記錄對應
PHISHING security_result.category 從變更記錄對應
NETWORK_MALICIOUS security_result.category 從變更記錄對應
request network.http.referral_url 從變更記錄對應
destinationDnsDomain network.dns.questions.name 從變更記錄對應
security_result.action BLOCK 從變更記錄對應

變更記錄

查看這個剖析器的變更記錄

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