收集 HP ProCurve 記錄

支援的國家/地區:

本文說明如何使用 Bindplane,將 HP ProCurve 交換器記錄擷取至 Google Security Operations。剖析器程式碼會先嘗試將原始記錄訊息剖析為 JSON。如果失敗,系統會使用規則運算式 (grok 模式) 根據常見的 HP ProCurve 記錄格式,從訊息中擷取欄位。

事前準備

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

  • Google SecOps 執行個體
  • Windows 2016 以上版本或 Linux 主機 (含 systemd)
  • 如果透過 Proxy 執行,防火牆通訊埠已開啟
  • HP ProCurve 交換器的特殊存取權

取得 Google SecOps 擷取驗證檔案

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

取得 Google SecOps 客戶 ID

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

安裝 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 的 /etc/bindplane-agent/ 目錄,或 Windows 的安裝目錄。
    • 使用文字編輯器 (例如 nanovi 或記事本) 開啟檔案。
  2. 按照下列方式編輯 config.yaml 檔案:

        receivers:
            udplog:
                # Replace the port and IP address as required
                listen_address: "0.0.0.0:514"
    
        exporters:
            chronicle/chronicle_w_labels:
                compression: gzip
                # Adjust the path to the credentials file you downloaded in Step 1
                creds: '/path/to/ingestion-authentication-file.json'
                # Replace with your actual customer ID from Step 2
                customer_id: <customer_id>
                endpoint: malachiteingestion-pa.googleapis.com
                # Add optional ingestion labels for better organization
                ingestion_labels:
                    log_type: HP_PROCURVE
                    raw_log_field: body
    
        service:
            pipelines:
                logs/source0__chronicle_w_labels-0:
                    receivers:
                        - udplog
                    exporters:
                        - chronicle/chronicle_w_labels
    
  3. 視基礎架構需求,替換通訊埠和 IP 位址。

  4. <customer_id> 替換為實際的客戶 ID。

  5. /path/to/ingestion-authentication-file.json 更新為「取得 Google SecOps 擷取驗證檔案」一節中儲存驗證檔案的路徑。

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

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

    sudo systemctl restart bindplane-agent
    
  • 如要在 Windows 中重新啟動 Bindplane 代理程式,可以使用「服務」控制台,也可以輸入下列指令:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

在 HP ProCurve 交換器上設定 Syslog

  1. 使用 SSH 登入 HP Procurve 交換器
  2. 使用下列指令驗證交換器介面:

    show ip int br
    
  3. 使用下列指令在交換器上啟用設定模式:

    console# conf t
    
  4. 使用下列指令設定交換器,傳送記錄檔:

        logging host <bindplae-server-ip> transport <udp/tcp> port <port-number>
        logging facility syslog
        logging trap informational
        logging buffer 65536
        logging origin-id hostname
        logging source-interface <interface>
    
  5. <bindplae-server-ip><port-number> 替換為 Bindplane IP 位址號碼。

  6. 選取 UDPTCP 做為通訊協定 (視 Bindplane 代理程式設定而定),取代 <udp/tcp>

  7. <interface> 換成您先前從交換器收到的介面 ID,例如 Ethernet1/1

  8. 使用下列指令結束設定模式並儲存:

    console# exit
    console# wr
    

UDM 對應表

記錄欄位 UDM 對應 邏輯
AAAScheme read_only_udm.security_result.detection_fields.value 如果鍵為 AAAScheme,則從 descrip 欄位擷取的值
AAAType read_only_udm.security_result.detection_fields.value 如果鍵為 AAAType,則從 descrip 欄位擷取的值
機箱 ID read_only_udm.security_result.detection_fields.value 如果鍵為 Chassis ID,則從 description 欄位擷取的值
指令為 read_only_udm.security_result.detection_fields.value commandInfo」欄位中「Command is」後方的文字
CommandSource read_only_udm.security_result.detection_fields.value 如果鍵為 CommandSource,則從 descrip 欄位擷取的值
Config-Method read_only_udm.additional.fields.value.string_value 如果記錄中存在該欄位,系統會將其放在額外欄位中,顯示為 config_method
ConfigDestination read_only_udm.security_result.detection_fields.value 如果鍵為 ConfigDestination,則從 descrip 欄位擷取的值
ConfigSource read_only_udm.security_result.detection_fields.value 如果鍵為 ConfigSource,則從 descrip 欄位擷取的值
裝置名稱 read_only_udm.principal.hostname 如果記錄中存在該欄位,系統會將其對應至主體主機名稱和資產主機名稱
活動 ID read_only_udm.additional.fields.value.string_value 如果記錄中存在該欄位,系統會將其放在額外欄位中,顯示為 event_id
EventIndex read_only_udm.security_result.detection_fields.value 如果鍵為 EventIndex,則從 descrip 欄位擷取的值
IfIndex read_only_udm.security_result.detection_fields.value 如果鍵為 IfIndex,則從 description 欄位擷取的值
IP:%{IP:IPAddr} read_only_udm.target.ip、read_only_udm.target.asset.ip desc 欄位擷取的 IP 位址,並對應至目標 IP 和目標資產 IP
IPAddr read_only_udm.target.ip、read_only_udm.target.asset.ip 如果記錄中存在該欄位,則會對應至目標 IP 和目標資產 IP
Notice-Type read_only_udm.additional.fields.value.string_value 如果記錄中存在該欄位,系統會將其放在額外欄位中,顯示為 notice_type
通訊埠 ID read_only_udm.security_result.detection_fields.value 如果鍵為 Port ID,則從 description 欄位擷取的值
Remote-IP-Address read_only_udm.additional.fields.value.string_value 如果記錄中存在該欄位,系統會將其放在額外欄位中,顯示為 remote_ip_address
服務 read_only_udm.security_result.detection_fields.value 如果鍵為 Service,則從 descrip 欄位擷取的值
工作 read_only_udm.security_result.detection_fields.value 如果鍵為 Task,則從 descrip 欄位擷取的值
使用者 read_only_udm.principal.user.userid 如果記錄中存在這個欄位,系統會將其對應至主要使用者 ID
User-Name read_only_udm.principal.user.userid 如果記錄中存在這個欄位,系統會將其對應至主要使用者 ID
使用者名稱 read_only_udm.principal.user.userid 如果記錄中存在這個欄位,系統會將其對應至主要使用者 ID
UserService read_only_udm.security_result.detection_fields.value 如果鍵為 UserService,則從 desc 欄位擷取的值
collection_time.seconds read_only_udm.metadata.event_timestamp.seconds 事件時間戳記的秒數部分
資料 這個欄位包含原始記錄訊息,並經過剖析來擷取其他欄位。未對應至 UDM。
遞減 read_only_udm.security_result.description 從記錄訊息擷取的說明
descrip desc 欄位擷取的說明,進一步剖析鍵/值組合。未對應至 UDM。
說明 read_only_udm.security_result.description 如果記錄中存在該欄位,則會對應至安全性結果說明
descript read_only_udm.metadata.description 如果記錄中存在該欄位,系統會將其對應至中繼資料說明
event_id read_only_udm.additional.fields.value.string_value 如果記錄中存在該欄位,系統會將其放在額外欄位中,顯示為 event_id
eventId read_only_udm.metadata.product_event_type 從記錄訊息中擷取的事件 ID
主機名稱 read_only_udm.principal.hostname、read_only_udm.principal.asset.hostname 從記錄訊息中擷取主機名稱,並對應至主體主機名稱和資產主機名稱
inter_ip read_only_udm.additional.fields.value.string_value、read_only_udm.intermediary.ip 如果記錄中存在這個欄位,且是有效的 IP,就會對應至中介 IP。否則會放在額外欄位中,顯示為 inter_ip
notice_type read_only_udm.additional.fields.value.string_value 如果記錄中存在該欄位,系統會將其放在額外欄位中,顯示為 notice_type
pid read_only_udm.principal.process.pid 如果記錄中存在該欄位,則會對應至主程序 PID
計畫 從記錄訊息中擷取的程式資訊,並進一步剖析以擷取模組、嚴重程度和動作。未對應至 UDM。
proto read_only_udm.network.application_protocol, read_only_udm.additional.fields.value.string_value 從記錄訊息中擷取的通訊協定。如果與已知通訊協定相符,就會對應至應用程式通訊協定。否則會放在額外欄位中,顯示為 Application Protocol
remote_ip_address read_only_udm.principal.ip、read_only_udm.principal.asset.ip、read_only_udm.additional.fields.value.string_value 如果記錄中存在這個欄位,且是有效的 IP,系統會將其對應至主體 IP 和主體資產 IP。否則會放在額外欄位中,顯示為 remote_ip_address
嚴重性 read_only_udm.security_result.severity、read_only_udm.security_result.severity_details / 分割後,從 program 欄位擷取的嚴重性。這項資訊會對應至 UDM 嚴重程度,並以原始嚴重程度詳細資料的形式儲存
src_ip read_only_udm.principal.ip、read_only_udm.principal.asset.ip 從記錄訊息中擷取來源 IP,並對應至主體 IP 和主體資產 IP
狀態 read_only_udm.additional.fields.value.string_value 如果記錄中存在該欄位,系統會將其放在額外欄位中,顯示為 status
targetHostname read_only_udm.target.hostname、read_only_udm.target.asset.ip 如果記錄中存在該欄位,系統會將其對應至目標主機名稱和目標資產 IP
target_ip read_only_udm.target.ip、read_only_udm.target.asset.ip 從記錄訊息中擷取目標 IP,並對應至目標 IP 和目標資產 IP
時間戳記 read_only_udm.metadata.event_timestamp.seconds 從記錄訊息擷取時間戳記,並轉換為事件時間戳記
timestamp.seconds read_only_udm.metadata.event_timestamp.seconds 事件時間戳記的秒數部分
使用者名稱 read_only_udm.principal.user.userid 如果記錄中存在這個欄位,系統會將其對應至主要使用者 ID
read_only_udm.metadata.event_type 根據欄位和邏輯的組合判斷:
- NETWORK_CONNECTION:如果 has_principalhas_target 為 true,
- USER_LOGOUT:如果 actionWEBOPT_LOGOUTLOGOUTSHELL_LOGOUT
- USER_LOGIN:如果 actionLOGINWEBOPT_LOGIN_SUC
- STATUS_UPDATE:如果 action 不為空白,或 src_ip/hostname 不為空白。
- USER_UNCATEGORIZED:如果 has_user 為 true,
- GENERIC_EVENT:如果未符合上述任一條件。
read_only_udm.metadata.product_name 硬式編碼為 Procurve
read_only_udm.metadata.vendor_name 硬式編碼為 HP
read_only_udm.extensions.auth.type 如果 event_typeUSER_LOGOUTUSER_LOGIN,請設為 MACHINE

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