收集 BlueCat DDI 記錄

支援的國家/地區:

這個剖析器會處理 Bluecat DDI (DNS、DHCP、IPAM) 傳送的 LEEF 和非 LEEF 格式 Syslog 訊息。它會使用 Grok 模式和條件邏輯,從各種記錄類型 (例如 named、dhcpd、audit 和 CRON) 中擷取欄位,並根據記錄類型將這些欄位對應至 UDM,然後相應填入 DNS、DHCP 或使用者相關欄位。

事前準備

  • 確認您有 Google Security Operations 執行個體。
  • 確認您使用的是 Windows 2016 以上版本,或是搭載 systemd 的 Linux 主機。
  • 如果透過 Proxy 執行,請確認防火牆通訊埠已開啟。
  • 確認您具備 Bluecat 的特殊權限。

取得 Google SecOps 擷取驗證檔案

  1. 登入 Google SecOps 控制台。
  2. 依序前往「SIEM 設定」>「收集代理程式」
  3. 下載擷取驗證檔案

取得 Google SecOps 客戶 ID

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

安裝 Bindplane 代理程式

  1. 如要在 Windows 上安裝,請執行下列指令碼:
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. 如要在 Linux 上安裝,請執行下列指令碼:
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. 如需其他安裝選項,請參閱這份安裝指南

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

  1. 存取安裝 Bindplane 的電腦。
  2. 按照下列方式編輯 config.yaml 檔案:

    receivers:
        tcplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: bluceat_ddi
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. 重新啟動 Bindplane 代理程式,以套用變更:

    sudo systemctl restart bindplane
    

在 Bluecat DDI 上設定 Syslog

  1. 登入 Bluecat Address Manager (BAM)。
  2. 從「設定」選單中選取設定。
  3. 選取「伺服器」分頁標籤。
  4. 在「伺服器」下方,按一下 BDDS 的名稱。
  5. 系統應會開啟伺服器的「詳細資料」分頁。
  6. 按一下「伺服器名稱」選單。
  7. 選取「服務設定」
  8. 依序點選「服務類型」> Syslog (位址管理員會查詢伺服器,並傳回目前的值)。
  9. 在「一般」中,設定下列值:
    • 系統記錄伺服器:系統記錄伺服器 (Bindplane) 的 IP 位址。
    • Syslog 通訊埠:Syslog 伺服器 (Bindplane) 的通訊埠。
    • 系統記錄傳輸:選取「TCP」或「UDP」 (視 Bindplane 設定而定)。
  10. 按一下「Add」(新增)
    • 新加入的系統記錄伺服器會顯示在清單中。
  11. 按一下「更新」

在 BlueCat DDI 中設定系統記錄設定

  1. 登入 BlueCat Address Manager。
  2. 依序前往「Configuration」(設定)「System Settings」(系統設定)「Logging」(記錄)
  3. 在「記錄設定」中,找到「系統記錄伺服器」部分。
  4. 按一下「新增 Syslog 伺服器」
  5. 提供必要的值:
    • 伺服器名稱:syslog 伺服器的專屬名稱 (例如 BindplaneServer)。
    • IP 位址:syslog 伺服器的 IP 位址或主機名稱。
    • 通訊協定:選取「TCP」、「UDP」 (預設) 或「TLS」 (視您的系統記錄設定而定)。
    • 通訊埠:指定系統記錄檔通訊埠 (預設值:UDP/TCP 為 514,TLS 為 6514)。
  6. 設定記錄等級。請依據需求選擇適當的層級。選項包括:
    • 緊急:需要立即處理的重大問題
    • 快訊:需要立即採取行動的快訊
    • 重大:重大情況
    • 錯誤:錯誤事件
    • 警告:警告事件
    • 注意:正常但重要的事件
    • 資訊:提供相關資訊的訊息
    • Debug:詳細的偵錯資訊
  7. 選用:新增自訂 Syslog 設施,將記錄分類 (例如 local0local1)。
  8. 儲存設定。

將系統記錄設定套用至 DDI 設備

  1. 依序前往「伺服器」>「管理伺服器」
  2. 選取要啟用系統記錄的 DNS/DHCP 伺服器。
  3. 按一下「編輯伺服器」
  4. 在「記錄」部分:
    • 選取先前設定的系統記錄伺服器。
    • 為特定服務啟用記錄功能 (例如 DNS 查詢DHCP 租約)。
    • 儲存變更。

UDM 對應表

記錄欄位 UDM 對應 邏輯
client_ip network.dhcp.ciaddr 從 DHCPREQUEST 訊息擷取。僅針對 DHCPREQUEST 訊息填入。
client_mac principal.mac 從 DHCP 訊息 (DHCPDISCOVER、DHCPREQUEST、DHCPRELEASE) 擷取。
client_mac target.mac 從 DHCP 訊息 (DHCPOFFER、DHCPNAK) 擷取。
client_mac network.dhcp.chaddr 從 DHCP 訊息 (DHCPREQUEST、DHCPOFFER、DHCPACK、DHCPNAK、DHCPRELEASE) 擷取。
cmd target.process.command_line 從 CRON 記錄檔擷取。系統會移除連字號和空格。
description metadata.description 從各種記錄檔類型擷取,提供額外背景資訊。
description metadata.description 從 syslog-ng 記錄檔擷取,提供額外背景資訊。
file_path target.file.full_path 從各種記錄類型擷取,代表檔案的完整路徑。
file_path target.process.file.full_path 從 agetty 記錄中擷取,代表與程序相關的檔案完整路徑。
inner_message metadata.description 當作業類型未定義時,用做 GENERIC_EVENT 的說明,以及 MEM-MON 記錄。
metadata.event_type 由剖析器根據記錄類型和內容決定。可能的值包括:NETWORK_DNS、NETWORK_DHCP、USER_LOGIN、USER_LOGOUT、USER_UNCATEGORIZED、GENERIC_EVENT、STATUS_UPDATE、NETWORK_CONNECTION。一律為「BLUECAT_DDI」。
metadata.vendor_name 一律為「Bluecat Networks」。
metadata.product_name 一律為「Bluecat DDI」。
metadata.event_timestamp 從記錄項目的已剖析時間戳記複製。
network.protocol 如要查看 DNS 記錄,請設為「DNS」;如要查看 DHCP 記錄,請設為「DHCP」。
network.dns.answers 包含答案記錄的陣列。如果 answers 內有 data 欄位,則會填入 target_ip
network.dns.questions 包含問題記錄的陣列。name 欄位會填入 target_hosttype 欄位會從 query_typequestion_type 欄位衍生,而 class 欄位則會從 qclass 欄位衍生。
network.dns.recursive 如果 rec_flag 為「+」,則設為「true」。
qclass network.dns.questions.class 從 DNS 查詢記錄擷取,並使用 dns_query_class_mapping.include 檔案對應至整數值。
query_type network.dns.questions.type 從 DNS 查詢記錄擷取,並使用 dhcp_qtype_mapping.include 檔案對應至整數值。
relay_ip intermediary.ip 從 DNS 和 DHCP 記錄中擷取,代表中繼或中介伺服器的 IP 位址。
server_host target.hostname 從各種記錄類型中擷取,代表伺服器的主機名稱。
server_host network.dhcp.sname 從 DHCP 記錄中擷取,代表伺服器主機名稱。
server_host principal.hostname 從 systemd、agetty 和部分稽核記錄中擷取,代表主體的名稱。
server_ip target.ip 從 LEEF 格式的記錄中擷取,代表伺服器的 IP 位址。
src_ip principal.ip 從各種記錄類型中擷取,代表來源 IP 位址。
src_ip network.dhcp.yiaddr 用於 DHCPINFORM 訊息,以填入 yiaddr 欄位。
src_port principal.port 從各種記錄檔類型擷取,代表來源連接埠。
src_user principal.user.userid 從 CRON 和稽核記錄中擷取,代表使用者 ID。
target_host target.hostname 從各種記錄檔類型擷取,代表目標主機名稱。
target_host network.dns.questions.name 用於 DNS 記錄,填入問題名稱。
target_ip target.ip 從各種記錄類型中擷取,代表目標 IP 位址。
target_ip network.dhcp.ciaddr 用於 BOOTREQUEST 訊息,以填入 ciaddr 欄位。
target_ip network.dns.answers.data 用於 DNS 記錄,以填入回覆資料。
tgt_port target.port 從 syslog-ng 記錄檔擷取,代表目標通訊埠。

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