收集 CyberArk PAM 記錄

支援以下發布途徑:

這個剖析器程式碼會先使用規則運算式,從 CyberArk Privileged Access Manager (PAM) 的 syslog 訊息中擷取欄位。接著,系統會將擷取的欄位對應至統一資料模型 (UDM),藉由額外情境豐富資料,並根據特定條件將事件類型標準化。

事前準備

  • 確認您有 Google Security Operations 執行個體。
  • 請確認您使用的是 Windows 2016 以上版本,或搭載 systemd 的 Linux 主機。
  • 如果在 Proxy 後方執行,請確認防火牆通訊埠已開啟。

取得 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 Agent 擷取 Syslog 並傳送至 Google SecOps

  1. 存取已安裝 Bindplane Agent 的電腦。
  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: Cyberark_PAM
            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
    

為 CyberArk Vault 設定 Syslog 匯出功能

  1. 登入保管箱伺服器。
  2. 開啟位於 C:\Program Files (x86)\CyberArk\Vault\Server\dbparm.ini 的設定檔 dbparm.ini
  3. 新增或修改下列參數:

    SyslogServer=<syslog_server_ip>
    SyslogPort=<syslog_server_port>
    SyslogProtocol=<TCP or UDP>
    SyslogFormat=Syslog
    
  4. 儲存 dbparm.ini 檔案。

  5. 重新啟動 Vault 伺服器:

    net stop CyberArkVault
    net start CyberArkVault
    

在 PVWA 中設定 Syslog 匯出功能

  1. 登入 PVWA Server。
  2. 開啟位於 C:\inetpub\wwwroot\PasswordVault\Web.config 檔案
  3. 新增或修改下列鍵:

    <add key="SyslogServer" value="<syslog_server_ip>" />
    <add key="SyslogPort" value="<syslog_server_port>" />
    <add key="SyslogProtocol" value="<TCP or UDP>" />
    <add key="SyslogFormat" value="Syslog" />
    
  4. 將變更儲存至 Web.config 檔案。

  5. 重新啟動 IIS 服務:

    iisreset
    

在 PTA 中設定 Syslog 匯出功能

  1. 使用 SSH 存取 PTA 伺服器。
  2. 開啟位於 /opt/cta/config/application.propertiesapplication.properties 檔案
  3. 新增或修改下列程式碼行:

    syslog.server.ip=<syslog_server_ip>
    syslog.server.port=<syslog_server_port>
    syslog.protocol=<TCP or UDP>
    
  4. 儲存 application.properties 檔案。

  5. 重新啟動 PTA 服務以套用變更:

    sudo service pta restart
    

UDM 對應表

記錄欄位 UDM 對應 邏輯
行為 metadata.description 直接從 act 欄位對應。
cn1 additional.fields.value.string_value cn1Label 不為空白時,直接從 cn1 欄位對應。
cn1Label additional.fields.key cn1 不為空白時,直接從 cn1Label 欄位對應。
cn2 additional.fields.value.string_value cn2Label 不為空白時,直接從 cn2 欄位對應。
cn2Label additional.fields.key cn2 不為空白時,直接從 cn2Label 欄位對應。
cs1 additional.fields.value.string_value cs1Label 不為空白時,直接從 cs1 欄位對應。
cs1Label additional.fields.key cs1 不為空白時,直接從 cs1Label 欄位對應。
cs2 additional.fields.value.string_value cs2Label 不為空白時,直接從 cs2 欄位對應。
cs2Label additional.fields.key cs2 不為空白時,直接從 cs2Label 欄位對應。
cs3 additional.fields.value.string_value cs3Label 不為空白時,直接從 cs3 欄位對應。
cs3Label additional.fields.key cs3 不為空白時,直接從 cs3Label 欄位對應。
cs4 additional.fields.value.string_value cs4Label 不為空白時,直接從 cs4 欄位對應。
cs4Label additional.fields.key cs4 不為空白時,直接從 cs4Label 欄位對應。
cs5 additional.fields.value.string_value cs5Label 不為空白時,直接從 cs5 欄位對應。
cs5Label additional.fields.key cs5 不為空白時,直接從 cs5Label 欄位對應。
dhost target.hostname 如果不是 IP 位址,則會從 dhost 欄位對應。如果 dhost 為空白,系統會從 shost (IP 或主機名稱) 對應。
dhost target.asset.hostname 如果不是 IP 位址,則會從 dhost 欄位對應。如果 dhost 為空白,系統會從 shost (IP 或主機名稱) 對應。
dhost target.ip 如果是 IP 位址,則會從 dhost 欄位對應。
dhost target.asset.ip 如果是 IP 位址,則會從 dhost 欄位對應。
duser target.user.userid 直接從 duser 欄位對應。
dvc intermediary.ip 如果是 IP 位址,則會從 dvc 欄位對應。
externalId metadata.product_log_id 直接從 externalId 欄位對應。
fname target.file.full_path 直接從 fname 欄位對應。
名稱 metadata.event_type 用於根據 nameshostdhost 欄位的組合判斷 event_type。可能的值:USER_CHANGE_PASSWORD、FILE_READ、USER_LOGIN、FILE_OPEN、FILE_DELETION。如果找不到相符項目,且 has_principal 為 true 而 has_target 為 false,則 event_type 會設為 STATUS_UPDATE。否則預設為 GENERIC_EVENT。
prin_hostname principal.hostname 直接從 prin_hostname 欄位對應。如果為空白,則會從 shost 對應 (如果 shost 不是 IP 位址)。
prin_hostname principal.asset.hostname 直接從 prin_hostname 欄位對應。如果為空白,則會從 shost 對應 (如果 shost 不是 IP 位址)。
prin_ip principal.ip 直接從 prin_ip 欄位對應。如果為空白,則會從 shost 對應 (如果 shost 是 IP 位址)。
prin_ip principal.asset.ip 直接從 prin_ip 欄位對應。如果為空白,則會從 shost 對應 (如果 shost 是 IP 位址)。
產品 metadata.product_name 直接從 product 欄位對應。如果記錄中未顯示此值,則預設為「PAM」。
原因 security_result.description 直接從 reason 欄位對應。
嚴重性 security_result.severity 根據下列邏輯從 severity 欄位對應而來:1-3:資訊,4:錯誤,5:重大。
shost principal.hostname 如果 prin_hostname 為空白,且 shost 不是 IP 位址,則會對應至 prin_hostname
shost principal.asset.hostname 如果 prin_hostname 為空白,且 shost 不是 IP 位址,則會對應至 prin_hostname
shost principal.ip 如果 prin_ip 為空白,且 shost 為 IP 位址,則會對應至 prin_ip
shost principal.asset.ip 如果 prin_ip 為空白,且 shost 為 IP 位址,則會對應至 prin_ip
shost target.hostname 如果 dhost 為空白,且 shost 不是 IP 位址,則會對應至 target.hostname
shost target.asset.hostname 如果 dhost 為空白,且 shost 不是 IP 位址,則會對應至 target.hostname
shost target.ip 如果 dhost 為空白,且 shost 為 IP 位址,則會對應至 target.ip
shost target.asset.ip 如果 dhost 為空白,且 shost 為 IP 位址,則會對應至 target.ip
狀態 additional.fields.value.string_value 直接從 status 欄位對應。
suser principal.user.userid suser 欄位對應。如果 duser 為空白,系統會將其視為目標使用者 ID。
時間 metadata.event_timestamp.seconds 轉換為時間戳記格式後,直接從 time 欄位對應。
時間 metadata.event_timestamp.nanos 轉換為時間戳記格式後,直接從 time 欄位對應。
vendor metadata.vendor_name 直接從 vendor 欄位對應。如果記錄中未顯示此值,則預設為「CYBERARK」。
version metadata.product_version 直接從 version 欄位對應。
metadata.log_type 已硬式編碼為「CYBERARK_PAM」。
extensions.auth.mechanism 如果 event_type 是「USER_LOGIN」,請設為「USERNAME_PASSWORD」。

異動

2024-05-05

  • 新建的剖析器。

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