使用 Gemini 建立剖析器擴充功能

支援的國家/地區:

本指南說明安全分析師和偵測工程師如何使用自然語言提示,擴增預設記錄剖析器。使用 AI 剖析器擴充功能,您就能快速擷取其他欄位、套用條件邏輯,以及將原始記錄檔對應至 Unified Data Model (UDM),不必編寫複雜的剖析器語法或規則運算式。

當 Google SecOps 中的預設記錄剖析器剖析記錄來源時,可能會省略客戶專屬的自訂屬性、選用欄位或專門的遙測資料。使用 AI 剖析器擴充功能,即可執行下列操作:

  • 從原始記錄中擷取其他欄位,並對應至標準 UDM 欄位或自訂 additional.fields
  • 套用條件式邏輯和值轉換,例如將字串動作對應至 UDM 列舉型別。
  • 在多輪對話工作階段中,以互動方式修正生成的擴充功能,不必從頭開始。

重要術語

  • 統合資料模型 (UDM):Google SecOps 用於儲存及分析記錄資料的標準資料結構。

事前準備

開始之前,請確認符合下列先決條件:

  • 使用配額:在 24 小時內,您最多可以執行 10 個 AI 剖析器擴充功能生成工作階段,每個工作階段最多可傳送 5 則訊息。

撰寫提示的最佳做法

如要確保第一次就能取得準確的剖析器擴充功能,請遵循下列提示指南:

  1. 明確指定來源和目標:清楚說明要擷取原始記錄的哪個部分,以及要填入哪個確切的 UDM 欄位路徑,例如 principal.iptarget.user.email_addressessecurity_result.action
  2. 使用引號表示完全相符的常值:在非結構化記錄中參照常值字串、分隔符或範例值時,請以引號括住,例如 "198.51.100.0""allow"
  3. 使用 additional.fields 處理自訂欄位:對於沒有專屬 UDM 欄位的專屬或供應商特定屬性,請指示 AI 將這些屬性對應至 additional.fields,並提供清楚的鍵名,例如 additional.fields["application"]

生成剖析器擴充功能

您可以在 Google Security Operations 的下列任一位置啟動剖析器擴充功能工作流程:

  • 剖析器設定頁面:前往「剖析器」頁面,選取並擴充任何現有的記錄剖析器。
  • 搜尋頁面:在「搜尋」頁面調查記錄時,可直接從含有未剖析欄位的事件開啟擴充功能建立流程。

如要從「Parsers」(剖析器) 設定頁面產生剖析器擴充功能,請按照下列步驟操作:

  1. 在 Google SecOps 中,前往「剖析器」設定頁面。
  2. 搜尋要延長的記錄類型。
  3. 按一下剖析器旁的選單,然後選取擴充選項。
  4. 在「原始記錄」欄位中,貼上要剖析的記錄樣本。
  5. 在「擴充方法」部分,選取「使用 AI 生成」分頁標籤。
  6. 在提示欄位中,以簡單的英文說明要擷取的內容。
  7. 按一下「確認」。

    系統會生成擴充功能程式碼,並更新 UDM 輸出

修正剖析器擴充功能

您可以在多輪對話工作階段中,反覆建構及修正剖析器擴充功能。提交後續提示時,AI 會在先前產生的擴充功能上套用新指示。除非您明確要求覆寫或移除,否則系統會自動保留先前回合的現有對應和條件式邏輯。

  1. 在提示欄位中輸入後續指令,調整生成的程式碼。
  2. 按一下「確認」。
  3. 每次輸入提示後,請預覽生成的擴充功能程式碼、檢查 UDM 輸出範例,然後確認或調整邏輯。

以下範例工作流程說明如何透過反覆修正,在多個回合中建構剖析器擴充功能:

  1. 第 1 輪 (初步擷取):
    • 使用者提示: "Extract source IP '198.51.100.0' to principal.ip and destination IP '198.51.100.1' to target.ip."
    • 結果:AI 會生成擴充功能對應 principal.iptarget.ip
  2. 第 2 回合 (加法對應):
    • 使用者提示: "Also map virtual system string 'vsys1' to observer.administrative_domain."
    • 結果:AI 會更新擴充功能,以對應 observer.administrative_domain,同時保留第 1 輪的 IP 對應。
  3. 第 3 輪 (有條件的精修):
    • 使用者提示: "In addition, map action string 'allow' to security_result[0].action as ALLOW."
    • 結果:AI 會在先前所有擷取內容的基礎上,納入條件式動作列舉對應。

驗證剖析器擴充功能

  1. 點選「Validate」(驗證)
  2. 程序完成後,請查看驗證指標。

存取參考資訊

請參考下列範例,撰寫準確的提示。

結構化記錄提示

如果是結構化記錄,資料會整理成具名的鍵、屬性或 XML 標記,請在提示中指定欄位名稱或路徑。

結構化記錄範例 - JSON 格式

{
  "insertId": "u0mlpdesys",
  "logName": "projects/sample-project-id/logs/cloudaudit.googleapis.com%2Fdata_access",
  "protoPayload": {
    "authenticationInfo": {
      "principalEmail": "analyst@example-domain.com"
    },
    "methodName": "GenerateAccessToken",
    "requestMetadata": {
      "callerIp": "203.0.113.195",
      "callerSuppliedUserAgent": "google-cloud-sdk gcloud/392.0.0"
    },
    "resourceName": "projects/-/serviceAccounts/110649196922301550006",
    "serviceName": "iamcredentials.googleapis.com"
  }
}

結構化記錄的提示範例

提示詞指令 來源欄位或鍵 目標 UDM 欄位
"Map principalEmail to principal.user.email_addresses." principalEmail principal.user.email_addresses
"Extract callerIp to principal.ip and methodName to metadata.product_event_type." callerIpmethodName principal.ipmetadata.product_event_type
"Map resourceName to target.resource.name and serviceName to target.application." resourceNameserviceName target.resource.nametarget.application
"From XML tags, map /Event/System/Hostname to principal.hostname." /Event/System/Hostname principal.hostname

非結構化記錄提示

如果是非結構化記錄,請直接從範例記錄、位置參照或描述性標籤指定常值。

非結構化系統記錄訊息範例

<14>Nov  9 18:52:45 198.51.100.1 1,2021/11/09 18:52:45,007051000184334,TRAFFIC,start,2561,2021/11/09 18:52:45,198.51.100.0,198.51.100.1,0.0.0.0,0.0.0.0,any allow,,,ping,vsys1,LAN,LAN,ethernet1/2,ethernet1/2,LFPpan,2021/11/09 18:52:45,9729,6,0,0,2048,0,0x100000,icmp,allow,444,444,0,6

非結構化記錄的提示範例

提示詞指令 範例常值或說明 目標 UDM 欄位
"Extract source IP '198.51.100.0' to principal.ip and destination IP '198.51.100.1' to target.ip." '198.51.100.0''198.51.100.1' principal.iptarget.ip
"Extract the application string 'ping' from the log and map it to additional.fields['application']." 'ping' additional.fields["application"]
"Map rule name 'any allow' to security_result.rule_id." 'any allow' security_result[0].rule_id
"Extract sent bytes and received bytes into network.sent_bytes and network.received_bytes." 記錄中的數值位元組計數器 network.sent_bytesnetwork.received_bytes

條件式邏輯提示

說明條件邏輯,將原始記錄值正規化為特定 UDM 列舉。

  • 列舉正規化: "If the firewall action in the log is 'allow', set security_result.action to ALLOW; otherwise set security_result.action to BLOCK."
  • 條件式欄位對應: "If the protocol is 'icmp', map the ICMP type and code into network.icmp.type and network.icmp.code."
  • 狀態對應: "When the log status contains 'success' or '0', set security_result.severity to INFO; if it contains 'error', set it to ERROR."

用量限制

為維持最佳效能和資源可用性,AI 剖析器擴充功能設有下列用量配額:

  • 每 24 小時 10 個工作階段:每位客戶在 24 小時內最多可產生 10 個 AI 剖析器擴充功能工作階段。
  • 每個工作階段最多 5 則訊息:在單一工作階段中,您最多可以傳送 5 則訊息,包括初始提示和後續的修正回合,以製作及修正剖析器擴充功能。

如果達到工作階段訊息上限,你可以儲存目前的擴充功能或啟動新的工作階段。

後續步驟

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