收集 Akeyless Vault 記錄

支援的國家/地區:

本文說明如何使用直接擷取或 Bindplane,將 Akeyless Vault 記錄擷取至 Google Security Operations。剖析器會先將記錄訊息 (可以是鍵/值或 JSON 格式) 轉換為一致的結構,接著,系統會擷取相關欄位,並對應至整合式資料模型 (UDM) 結構定義,然後根據 IP 位址和執行的動作,將事件類型分類。

事前準備

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

  • Google SecOps 執行個體
  • Akeyless Vault 的特殊存取權

取得 Google SecOps 擷取驗證檔案

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

取得 Google SecOps 客戶 ID

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

在 Akeyless Vault 中設定記錄檔轉送,直接擷取至 Google SecOps

  1. 登入 Akeyless Gateway 網頁版 UI。
  2. 前往「記錄轉送」
  3. 選取 [啟用]。
  4. 提供下列設定詳細資料:
    • 記錄格式:選取「JSON」
    • 稽核記錄伺服器:輸入 https://audit.akeyless.io/
    • 服務:選取「Google Chronicle」
    • 服務帳戶金鑰:提供含有服務帳戶憑證的 JSON 檔案。
    • 客戶 ID:輸入您的 Google SecOps 專屬 ID。
    • 區域:輸入佈建 Google SecOps 的區域。
    • 記錄類型:輸入 AKEYLESS_VAULT
  5. 按一下 [儲存變更]。

選用:透過 Bindplane 擷取 Syslog

安裝 Windows Bindplane

  1. 以系統管理員身分開啟「命令提示字元」或「PowerShell」
  2. 執行下列指令:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

安裝 Linux Bindplane

  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: 'AKEYLESS_VAULT'
                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 擷取驗證檔案」一節中驗證檔案的儲存路徑。

重新啟動 Bindlane 代理程式,即可套用變更

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

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

    net stop BindPlaneAgent && net start BindPlaneAgent
    

在 Akeyless Vault 中設定將系統記錄轉送至 Bindplane

  1. 登入 Akeyless Gateway 網頁版 UI。
  2. 前往「記錄轉送」
  3. 選取 [啟用]。
  4. 提供下列設定詳細資料:
    • 記錄格式:選取「JSON」
    • 稽核記錄伺服器:輸入 https://audit.akeyless.io/
    • 服務:選取「Syslog」
    • Syslog 網路:選取「UDP」。(您可以根據 Bindplane 代理程式設定選取其他選項)。
    • 系統記錄檔主機:輸入 Bindplane 代理程式 IP 位址。
    • Syslog Formatter:選取「Text」
    • (選用) 傳輸層安全標準 (TLS):勾選「傳輸層安全標準 (TLS)」核取方塊,然後上傳「傳輸層安全標準 (TLS) 憑證」
  5. 按一下 [儲存變更]。

UDM 對應表

記錄欄位 UDM 對應 邏輯
access_id read_only_udm.metadata.product_log_id 直接對應 access_id 欄位。如未提供,系統會使用規則運算式 access_id:\s+(?<accessid>[\w-]+)message 欄位擷取。
account_id read_only_udm.target.user.userid 直接對應 account_id 欄位。
動作 read_only_udm.security_result.action_details 直接對應 action 欄位。
元件 read_only_udm.target.resource.name 直接對應 component 欄位。
持續時間 read_only_udm.network.session_duration.seconds 直接從 duration 欄位對應,並轉換為整數。
remote_addr read_only_udm.principal.ip remote_addr 欄位擷取,以半形逗號分隔,並新增至 principal.ip 陣列。
request_parameters.access_type read_only_udm.target.resource.attribute.labels.value (where key is 'access_type') 直接對應 request_parameters.access_type 欄位。如未提供,系統會使用規則運算式 access_type:\s+(?<accesstype>[\S]+)message 欄位擷取。
request_parameters.comment read_only_udm.target.resource.attribute.labels.value (其中鍵為「comment」) 直接對應 request_parameters.comment 欄位。
request_parameters.operation read_only_udm.target.resource.attribute.labels.value (其中鍵為「operation」) 直接對應 request_parameters.operation 欄位。
request_parameters.product read_only_udm.target.resource.attribute.labels.value (其中鍵為「product」) 直接對應 request_parameters.product 欄位。如未提供,系統會使用規則運算式 product:\s+(?<product>[\w\s]+)message 欄位擷取。
request_parameters.token_id read_only_udm.target.resource.attribute.labels.value (其中鍵為「token_id」) 直接對應 request_parameters.token_id 欄位。
request_parameters.transaction_type read_only_udm.target.resource.attribute.labels.value (key 為「transaction_type」) 直接從 request_parameters.transaction_type 欄位對應,並轉換為字串。如未提供,系統會使用規則運算式 transaction_type:\s+(?<transactiontype>[\S]+)message 欄位擷取。
request_parameters.unique_id read_only_udm.target.resource.attribute.labels.value (其中鍵為「unique_id」) 直接對應 request_parameters.unique_id 欄位。如未提供,系統會使用規則運算式 unique_id:\s+(?<uniqueid>[\w-]+)message 欄位擷取。
request_parameters.universal_identity_rotate_type read_only_udm.target.resource.attribute.labels.value (其中鍵為「universal_identity_rotate_type」) 直接對應 request_parameters.universal_identity_rotate_type 欄位。
request_parameters.user_agent read_only_udm.target.resource.attribute.labels.value (其中鍵為「user_agent」) 直接對應 request_parameters.user_agent 欄位。
嚴重性 直接對應 severity 欄位。
狀態 read_only_udm.network.http.response_code 直接從 status 欄位對應,並轉換為整數。
時間戳記 read_only_udm.metadata.event_timestamp 直接從記錄項目 timestamp 欄位對應。
read_only_udm.metadata.log_type 硬式編碼為 AKEYLESS_VAULT
read_only_udm.metadata.event_type 如果 ip_present 為 true,則設為 STATUS_UPDATE,否則預設為 GENERIC_EVENT
read_only_udm.metadata.vendor_name 使用規則運算式 CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}message 欄位擷取。
read_only_udm.metadata.product_name 使用規則運算式 CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}message 欄位擷取。
read_only_udm.metadata.product_version 使用規則運算式 CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}message 欄位擷取。
read_only_udm.metadata.product_event_type 使用規則運算式 <%{INT}>%{TIMESTAMP_ISO8601:time}\s+%{DATA}\s+(?P<product_event_type>[\w-]+)\[%{INT}\]:\s+(?P<time2>\d{1,2}-%{MONTH}-\d{1,4}\s+\d{1,2}:\d{1,2}:\d{1,2}.\d+)\s+%{WORD}\s+%{WORD:severity}\s+CEF:0|%{DATA:device_vendor}|%{DATA:device_product}|%{DATA:device_version}|%{DATA:device_event_class_id}\s+%{WORD}\[%{INT}\]:\s+%{GREEDYDATA:kv_data}message 欄位擷取。
read_only_udm.target.namespace 使用規則運算式 namespace:\s+(?<namespace>[\S]+)message 欄位擷取。
read_only_udm.security_result.severity 從「severity」欄位對應:InfoINFORMATIONALErrorERRORWarningMEDIUM,否則為 UNKNOWN_SEVERITY
read_only_udm.network.http.method action 欄位對應:getGETputAuthenticationPUTpostPOSTdeleteDELETE

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