收集 Security Command Center 有害組合記錄

支援以下發布途徑:

本文件說明如何使用 Cloud Storage 將 Security Command Center 有害組合記錄匯出並擷取至 Google Security Operations。剖析器會從 JSON 記錄中擷取安全性檢測資料,並加以結構化。這個工具會將資料標準化為統合式資料模型 (UDM),處理不同的資料格式,並透過網路資訊和使用者代理程式詳細資料等額外脈絡加以豐富。

事前準備

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

  • 您已在 Google Cloud 環境中啟用 Security Command Center 並完成設定。
  • Google SecOps 執行個體。
  • 具備 Security Command Center 和 Cloud Logging 的特殊存取權。

建立 Cloud Storage 值區

  1. 登入 Google Cloud 控制台
  2. 前往「Cloud Storage Buckets」(Cloud Storage 值區) 頁面。

    前往「Buckets」(值區) 頁面

  3. 按一下 [建立]。

  4. 在「Create a bucket」(建立值區) 頁面中輸入值區資訊。完成下列每個步驟後,請按一下「繼續」繼續下一步:

    1. 在「開始使用」部分執行下列操作:

      1. 輸入符合值區名稱規定的不重複名稱,例如 gcp-scc-toxic-combination-logs
      2. 如要啟用階層命名空間,請按一下展開箭頭,展開「Optimize for file oriented and data-intensive workloads」部分,然後選取「Enable Hierarchical namespace on this bucket」

      3. 如要新增分類標籤,請按一下展開箭頭,展開「Labels」部分。

      4. 按一下「新增標籤」,然後指定標籤的鍵和值。

    2. 在「Choose where to store your data」(選擇資料的儲存位置) 專區中執行下列操作:

      1. 選取「位置類型」
      2. 使用位置類型選單選取位置,指定要永久儲存值區內物件資料的位置。

      3. 如要設定跨值區複製作業,請展開「設定跨值區複製作業」部分。

    3. 在「Choose a storage class for your data」專區中,為值區選取預設儲存空間級別,或選取「Autoclass」,讓系統自動管理值區的資料儲存空間級別。

    4. 在「選取如何控制物件的存取權」專區中,選取「否」來強制執行公開存取防護,然後為值區物件選取存取權控管模型

    5. 在「Choose how to protect object data」(選擇保護物件資料的方式) 專區中執行下列操作:

      1. 選取「資料保護」下方的任一選項,設定值區。
      2. 如要選擇物件資料的加密方式,請按一下標示為「資料加密」的展開箭頭,然後選取「資料加密方法」
  5. 按一下 [建立]。

設定 Security Command Center 記錄功能

  1. 登入 Google Cloud 控制台
  2. 前往「Security Command Center」頁面。

    前往 Security Command Center

  3. 選取您的機構。

  4. 按一下「設定」

  5. 按一下「持續匯出作業」分頁標籤。

  6. 在「匯出名稱」下方,按一下「記錄匯出」

  7. 在「Sinks」下方,開啟「Log Findings to Logging」

  8. 在「記錄專案」下方,輸入或搜尋要記錄所得的專案。

  9. 按一下 [儲存]

設定 Security Command Center 有害組合記錄匯出功能

  1. 登入 Google Cloud 控制台
  2. 依序前往「Logging」>「Log Router」
  3. 按一下「建立接收器」
  4. 提供下列設定參數:

    • Sink Name:輸入有意義的名稱,例如 scc-toxic-combination-logs-sink
    • 匯出目的地:選取「Cloud Storage Storage」,然後輸入值區的 URI,例如 gs://gcp-scc-toxic-combination-logs
    • 記錄檔篩選器

      logName="projects/<your-project-id>/logs/cloudsecurityscanner.googleapis.com%2Ftoxic_combinations"
      resource.type="security_command_center_toxic_combination"
      
    • 設定匯出選項:納入所有記錄項目。

  5. 按一下 [建立]。

設定 Cloud Storage 權限

  1. 依序前往「IAM 與管理」>「身分與存取權管理」
  2. 找出 Cloud Logging 服務帳戶。
  3. 授予值區的 roles/storage.admin 角色。

設定動態饋給

在 Google SecOps 平台中,有兩個不同的入口可用來設定動態消息:

  • SIEM 設定 > 動態饋給
  • 內容中心 > 內容包

依序前往「SIEM 設定」>「動態饋給」,設定動態饋給

如要設定動態饋給,請按照下列步驟操作:

  1. 依序前往「SIEM 設定」>「動態」
  2. 按一下「新增動態消息」
  3. 在下一頁中,按一下「設定單一動態饋給」
  4. 在「動態饋給名稱」欄位中輸入動態饋給的名稱,例如「Security Command Center Toxic Combination Logs」
  5. 選取「Google Cloud Storage」做為「來源類型」
  6. 選取「Security Command Center Toxic Combination」做為「記錄類型」
  7. 按一下「Chronicle Service Account」欄位旁的「Get Service Account」
  8. 點選「下一步」
  9. 指定下列輸入參數的值:

    • Storage Bucket URI:Cloud Storage 值區網址,例如 gs://gcp-scc-toxic-combination-logs
    • URI Is A:選取「Directory which includes subdirectories」
    • 來源刪除選項:根據偏好選取刪除選項。

  10. 點選「下一步」

  11. 在「完成」畫面中查看新的動態饋給設定,然後按一下「提交」

透過內容中心設定動態饋給

指定下列欄位的值:

  • Storage Bucket URI:Cloud Storage 值區網址,例如 gs://gcp-scc-toxic-combination-logs
  • URI Is A:選取「Directory which includes subdirectories」
  • 來源刪除選項:根據偏好選取刪除選項。

進階選項

  • 動態饋給名稱:預先填入的值,用於識別動態饋給。
  • 來源類型:用於收集記錄並匯入 Google SecOps 的方法。
  • 素材資源命名空間:與動態饋給相關聯的命名空間。
  • 攝入標籤:套用至這個動態饋給中所有事件的標籤。

UDM 對應表

記錄欄位 UDM 對應 邏輯
category read_only_udm.metadata.product_event_type 直接從原始記錄中的 category 欄位對應。
createTime read_only_udm.security_result.detection_fields.value 直接從原始記錄中的 createTime 欄位進行對應,其中鍵為「createTime」。
靜音 read_only_udm.security_result.detection_fields.value 直接從原始記錄中的 mute 欄位對應,其中鍵為「mute」。
名稱 read_only_udm.metadata.product_log_id 直接從原始記錄中的 name 欄位對應。
parent read_only_udm.target.resource_ancestors.name 直接從原始記錄中的 parent 欄位對應。
parentDisplayName read_only_udm.metadata.description 直接從原始記錄中的 parentDisplayName 欄位對應。
resource.displayName read_only_udm.target.resource.attribute.labels.value 直接從原始記錄中的 resource.displayName 欄位進行對應,其中鍵為「resource_displayName」。
resource.folders read_only_udm.target.resource_ancestors 剖析器會從 resource 物件中的 folders 陣列中擷取資源資料夾資訊。這個函式會逐一檢查每個資料夾,並將 resourceFolder 對應至 name,將 resourceFolderDisplayName 對應至 attribute.labels.value,其中鍵值為「folder_resourceFolderDisplayName」。
resource.name read_only_udm.target.resource.name 直接從原始記錄中的 resource.name 欄位對應。
resource.parent read_only_udm.target.resource.attribute.labels.value 直接從原始記錄中的 resource.parent 欄位對應,其中索引鍵為「resource_parent」。
resource.parentDisplayName read_only_udm.target.resource.attribute.labels.value 直接從原始記錄中的 resource.parentDisplayName 欄位對應,其中鍵為「resource_parentDisplayName」。
resource.project read_only_udm.target.resource.attribute.labels.value 直接從原始記錄檔中的 resource.project 欄位進行對應,其中鍵值為「resource_project」。
resource.projectDisplayName read_only_udm.target.resource.attribute.labels.value 直接從原始記錄檔中的 resource.projectDisplayName 欄位對應而來,其中的鍵為「resource_projectDisplayName」。
resource.service read_only_udm.target.application 直接從原始記錄中的 resource.service 欄位對應。
resource.type read_only_udm.target.resource.attribute.labels.value 直接從原始記錄中的 resource.type 欄位進行對應,其中鍵為「resource_type」。
resourceName read_only_udm.target.resource.name 直接從原始記錄中的 resourceName 欄位對應。
securityMarks.name read_only_udm.security_result.detection_fields.value 直接從原始記錄中的 securityMarks.name 欄位對應,其中鍵為「securityMarks_name」。
嚴重性 read_only_udm.security_result.severity 直接從原始記錄中的 severity 欄位對應。
state read_only_udm.security_result.detection_fields.value 直接從原始記錄中的 state 欄位對應,其中鍵為「state」。
is_alert 剖析器會將 is_alert 欄位設為 true,因為這項記錄代表安全性快訊。
is_significant 剖析器會將 is_significant 欄位設為 true,因為此記錄代表重大的安全性事件。
eventTime read_only_udm.metadata.event_timestamp.seconds 剖析器會從 eventTime 欄位擷取時間戳記,並將其轉換為 Unix 紀元時間秒。
read_only_udm.metadata.product_name 剖析器會根據記錄來源將 product_name 設為 Security Command Center
read_only_udm.metadata.vendor_name 剖析器會根據記錄來源將 vendor_name 設為 Google
read_only_udm.security_result.alert_state 剖析器會將 alert_state 設為 ALERTING,因為此記錄代表有效的警示。
read_only_udm.security_result.category_details 剖析器會根據記錄來源將 category_details 設為 POSTURE_VIOLATION
read_only_udm.security_result.url_back_to_product 剖析器會使用從記錄中擷取的組織、來源和檢測 ID,動態建構 url_back_to_product
parent read_only_udm.target.resource.product_object_id 剖析器會從 parent 欄位中擷取來源 ID,並將其設為 product_object_id
resourceName read_only_udm.target.resource_ancestors.name 剖析器會從 resourceName 欄位擷取專案 ID,並將其設為 resource_ancestors 項目,其中 resource_typeCLOUD_PROJECT
read_only_udm.target.resource_ancestors.resource_subtype 剖析器會根據記錄來源,將資料夾祖系的 resource_subtype 設為 google.cloud.resourcemanager.Project
read_only_udm.target.resource.attribute.labels.key 剖析器會在目標資源的 attribute 物件中,為 labels 欄位設定多個鍵。這些鍵包括「resource_parentDisplayName」、「resource_type」、「resource_projectDisplayName」、「resource_displayName」、「finding_id」、「source_id」、「resource_parent」和「resource_project」。

異動

2025-02-07

  • 更新 security_result.url_back_to_product UDM 欄位的對應關係。將原始記錄欄位值 resource.projectDisplayName 新增至網址結尾,並以前置字串 ;?project= 對應至 security_result.url_back_to_product UDM 欄位。

2024-11-21

  • 新增對 SCC API 2 版的支援,並在更新中加入下列欄位:
  • resource.gcpMetadata.project
  • resource.gcpMetadata.projectDisplayName
  • resource.gcpMetadata.parent
  • resource.gcpMetadata.parentDisplayName
  • resource.gcpMetadata.folders.resourceFolder
  • resource.gcpMetadata.folders.resourceFolderDisplayName
  • resource.gcpMetadata.organization

2024-03-20

  • 新建的剖析器。

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