收集 Symantec VIP Enterprise Gateway 記錄

支援的國家/地區:

本文說明如何使用 Bindplane,將 Symantec VIP Enterprise Gateway 記錄擷取至 Google Security Operations。剖析器程式碼會先嘗試將輸入的記錄訊息處理為 JSON 物件。如果失敗,系統會採用 Syslog 格式,並使用規則運算式 (Grok 模式) 擷取相關欄位,例如時間戳記、IP 位址、使用者名稱和事件說明。最後,這項服務會將擷取的資訊對應至統一資料模型 (UDM) 欄位,以標準化安全事件表示法。

事前準備

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

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

取得 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: 'SYMANTEC_VIP'
                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
    

在 Symantec VIP Enterprise Gateway 中設定 Syslog

  1. 登入 Symantec VIP Gateway 網頁介面。
  2. 依序前往「記錄」>「系統記錄設定」
  3. 如果您是第一次設定系統記錄,系統會提示您設定系統記錄設定。選取 [是]。
  4. 如果已設定系統記錄,請按一下頁面底部的「編輯」
  5. 提供下列設定詳細資料:
    • 系統記錄設施:選取「LOG_LOCAL0」
    • 系統記錄檔主機:輸入 Bindplane 代理程式 IP 位址。
    • 「Syslog Port」(系統記錄通訊埠):輸入 Bindplane 代理程式通訊埠編號 (例如 UDP514)。
  6. 按一下 [儲存]
  7. 依序前往「設定」>「主機設定」
  8. 提供下列設定詳細資料:
    • 記錄層級:選取「資訊」
    • 啟用 Syslog:選取「是」
  9. 按一下「提交」
  10. 依序前往「設定」>「健康檢查設定」
  11. 選取「是」即可啟用健康檢查服務。
  12. 提供下列設定詳細資料:
    • 記錄層級:選取「資訊」
    • 啟用 Syslog:選取「是」
  13. 按一下「提交」
  14. 依序前往「使用者存放區」>「LDAP 目錄同步處理」
  15. 編輯下列設定詳細資料:
    • 記錄層級:選取「資訊」
    • 啟用 Syslog:選取「是」
  16. 按一下「提交」

UDM 對應表

記錄欄位 UDM 對應 邏輯
調度應用程式資源 read_only_udm.principal.application 從 JSON 篩選器擷取的 application 欄位取得的值。
指令 read_only_udm.target.process.command_line 從 grok 模式擷取的 command 欄位中取得的值。
credentialType 這個欄位不會直接對應至 UDM。用於衍生 read_only_udm.extensions.auth.mechanism 的值。
資料 這個欄位不會直接對應至 UDM。系統會剖析這項資訊,以擷取其他欄位。
data2 這個欄位不會直接對應至 UDM。系統會剖析這項資訊,以擷取其他欄位。
日期時間 read_only_udm.metadata.event_timestamp.seconds
read_only_udm.metadata.event_timestamp.nanos
datetime 欄位擷取的秒數和奈秒數 (自 Epoch 起算)。
遞減 read_only_udm.metadata.description 從 JSON 篩選器擷取的 desc 欄位取得的值。
說明 read_only_udm.security_result.description 從 JSON 篩選器擷取的 description 欄位取得的值。
filename read_only_udm.target.process.file.full_path 從 grok 模式擷取的 filename 欄位中取得的值。
主機名稱 read_only_udm.principal.hostname 從 JSON 篩選器擷取的 hostname 欄位取得的值。
host_name read_only_udm.intermediary.hostname 從 JSON 篩選器擷取的 host_name 欄位取得的值。
log_level 這個欄位不會直接對應至 UDM。用於衍生 read_only_udm.security_result.severity 的值。
log_type read_only_udm.metadata.product_event_type 從 JSON 篩選器擷取的 log_type 欄位取得的值。
msg 這個欄位不會直接對應至 UDM。系統會剖析這項資訊,以擷取其他欄位。
作業 read_only_udm.security_result.summary 從 grok 模式擷取的 operation 欄位中取得的值。
processid read_only_udm.target.process.pid 從 grok 模式擷取的 processid 欄位中取得的值。
產品 read_only_udm.metadata.product_name 從 JSON 篩選器擷取的 product 欄位取得的值。
原因 read_only_udm.metadata.description 從 grok 模式擷取的 reason 欄位中取得的值。
request_id read_only_udm.target.resource.id 從 grok 模式擷取的 request_id 欄位中取得的值。
src_ip read_only_udm.principal.ip 從 grok 模式擷取的 src_ip 欄位中取得的值。
狀態 read_only_udm.metadata.description 從 grok 模式擷取的 status 欄位中取得的值。
摘要 read_only_udm.security_result.summary 從 JSON 篩選器擷取的 summary 欄位取得的值。
timestamp.nanos read_only_udm.metadata.event_timestamp.nanos 與原始記錄時間戳記相差的奈秒數。
timestamp.seconds read_only_udm.metadata.event_timestamp.seconds 與原始記錄時間戳記相差的秒數。
時間 這個欄位不會直接對應至 UDM。這項參數用於衍生 read_only_udm.metadata.event_timestamp.seconds 和 read_only_udm.metadata.event_timestamp.nanos 的值。
使用者 read_only_udm.target.user.userid 從 json 篩選器或 grok 模式擷取的 user 欄位中取得的值。
vendor read_only_udm.metadata.vendor_name 從 JSON 篩選器擷取的 vendor 欄位取得的值。
read_only_udm.extensions.auth.mechanism credentialType 欄位決定。如果 credentialTypeSMS_OTPSTANDARD_OTP,則使用 OTP。如果 credentialType 符合規則運算式 PASSWORD,則會使用 USERNAME_PASSWORD
read_only_udm.extensions.auth.type 如果 reason 欄位符合規則運算式 LDAP,則會使用 SSO。否則會使用 AUTHTYPE_UNSPECIFIED
read_only_udm.metadata.event_type 取決於特定欄位是否存在。如果 userprocessid 不為空白,則使用 USER_LOGIN。如果 user 為空值,且 src_ip 不是空值或 0.0.0.0,則會使用 STATUS_UPDATE。否則會使用 GENERIC_EVENT
read_only_udm.metadata.log_type 硬式編碼為 SYMANTEC_VIP
read_only_udm.security_result.action status 欄位決定。如果 statusAuthentication SuccessGRANTEDAuthentication CompletedAfter Services Authenticate callCHALLENGED,則會使用 ALLOW。如果 statusDENIEDAcces-RejectUnknown ErrorService UnavailableFAILED,則會使用 BLOCK。如果 statusPUSH request sent for userTrying to fetch attribute,則使用 QUARANTINE
read_only_udm.security_result.severity log_level 欄位決定。如果 log_levelDEBUGINFOAUDIT,則會使用 INFORMATIONAL。如果 log_levelERROR,則使用 ERROR。如果 log_levelWARNING,則使用 MEDIUM

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