收集 Azure Storage 稽核記錄

支援以下發布途徑:

本文件說明如何使用 Azure Storage 帳戶將 Azure Storage 稽核記錄匯出至 Google 安全作業。剖析器會處理 JSON 格式的記錄,並將這些記錄轉換為統一資料模型 (UDM)。這項工具會從原始記錄中擷取欄位、執行資料類型轉換,並透過額外內容 (例如使用者代理程式剖析和 IP 位址細目) 豐富資料,然後將擷取的欄位對應至對應的 UDM 欄位。

事前準備

請確認您已完成下列必要條件:

  • Google SecOps 執行個體
  • 有效的 Azure 租用戶
  • 特殊存取權 (Azure)

設定 Azure 儲存體帳戶

  1. 在 Azure 控制台中搜尋「儲存體帳戶」
  2. 按一下 [建立]。
  3. 指定下列輸入參數的值:
    • 訂閱:選取訂閱項目。
    • 資源群組:選取資源群組。
    • 區域:選取區域。
    • 成效:選取成效 (建議使用標準)。
    • 備援功能:選取備援功能 (建議使用 GRS 或 LRS)。
    • 儲存體帳戶名稱:輸入新儲存體帳戶的名稱。
  4. 按一下「Review + create」
  5. 查看帳戶總覽,然後按一下「建立」
  6. 在「儲存空間帳戶總覽」頁面中,選取「安全性與網路」的「存取金鑰」子選單。
  7. 按一下「key1」或「key2」旁邊的「顯示」
  8. 按一下「複製到剪貼簿」即可複製金鑰。
  9. 將金鑰儲存於安全的位置,以供日後使用。
  10. 在「儲存空間帳戶總覽」頁面中,選取「設定」中的「端點」子選單。
  11. 按一下「複製到剪貼簿」,複製 Blob 服務端點網址,例如 https://<storageaccountname>.blob.core.windows.net
  12. 將端點網址儲存於安全位置,以供日後使用。

如何設定 Azure Storage 稽核記錄的記錄匯出功能

  1. 使用權限帳戶登入 Azure 入口網站
  2. 依序前往「儲存空間帳戶」>「診斷設定」
  3. 按一下「+ 新增診斷設定」
  4. 選取 blobqueuetablefile 的診斷設定。
    • 為每個診斷設定選取「類別群組」中的「allLogs」選項。
    • 為每個診斷設定輸入描述性名稱。
  5. 選取「封存至儲存空間帳戶」核取方塊做為目的地。
    • 指定訂閱項目儲存空間帳戶
  6. 按一下 [儲存]

設定動態饋給

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

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

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

如要針對這個產品系列中的不同記錄類型設定多個動態饋給,請參閱「依產品設定動態饋給」。

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

  1. 依序前往「SIEM 設定」>「動態饋給」
  2. 按一下「新增動態消息」
  3. 在下一頁中,按一下「設定單一動態饋給」
  4. 在「動態饋給名稱」欄位中,輸入動態饋給的名稱,例如「Azure Storage 稽核記錄」
  5. 選取「Microsoft Azure Blob Storage」做為「Source type」
  6. 選取「Azure Storage Audit」做為「Log type」
  7. 點選「下一步」
  8. 指定下列輸入參數的值:

    • Azure URI:Blob 端點網址。
      • ENDPOINT_URL/BLOB_NAME
        • 替換下列內容:
          • ENDPOINT_URL:Blob 端點網址 (https://<storageaccountname>.blob.core.windows.net)
          • BLOB_NAME:Blob 的名稱 (例如 <logname>-logs)
    • URI 是:根據記錄串流設定選取 URI 類型 (單一檔案 | 目錄 | 包含子目錄的目錄)。
    • 來源刪除選項:根據擷取偏好設定選取刪除選項。

    • 共用金鑰:Azure Blob 儲存體的存取金鑰。

    • 資產命名空間資產命名空間

    • 攝入標籤:要套用至這個動態饋給事件的標籤。

  9. 點選「下一步」

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

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

指定下列欄位的值:

  • Azure URI:Blob 端點網址。
    • ENDPOINT_URL/BLOB_NAME
      • 替換下列內容:
        • ENDPOINT_URL:Blob 端點網址 (https://<storageaccountname>.blob.core.windows.net)
        • BLOB_NAME:Blob 的名稱 (例如 <logname>-logs)
  • URI 是:根據記錄串流設定選取 URI 類型 (單一檔案 | 目錄 | 包含子目錄的目錄)。
  • 來源刪除選項:根據擷取偏好設定選取刪除選項。
  • 共用金鑰:Azure Blob 儲存體的存取金鑰。

進階選項

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

UDM 對應表

記錄欄位 UDM 對應 邏輯
callerIpAddress principal.asset.ip 系統會使用 grok 模式從 callerIpAddress 欄位擷取 IP 位址,並指派給 principal.asset.ip
callerIpAddress principal.ip 系統會使用 grok 模式從 callerIpAddress 欄位擷取 IP 位址,並指派給 principal.ip
callerIpAddress principal.port 系統會使用 grok 模式從 callerIpAddress 欄位擷取通訊埠號碼,並指派給 principal.port
category security_result.category_details category 欄位的值會指派給 security_result.category_details
correlationId security_result.detection_fields[0].key 文字常值 correlationId 會指派給鍵欄位。
correlationId security_result.detection_fields[0].value correlationId 欄位的值會指派給 security_result.detection_fields[0].valuetime 欄位的值會解析為時間戳記,並指派給 event.idm.read_only_udm.metadata.event_timestamp。如果 categoryStorageWrite,且 principal.user.userid 存在 (衍生自 properties.accountName),則值會設為 USER_RESOURCE_UPDATE_CONTENT。如果 categoryStorageDelete,且 principal.user.userid 存在,則值會設為 USER_RESOURCE_DELETION。否則,該值會設為 USER_RESOURCE_ACCESS。文字字串 AZURE_STORAGE_AUDIT 會指派給 event.idm.read_only_udm.metadata.log_type。文字字串 AZURE_STORAGE_AUDIT 會指派給 event.idm.read_only_udm.metadata.product_nameschemaVersion 欄位的值會指派給 event.idm.read_only_udm.metadata.product_version。文字字串 AZURE_STORAGE_AUDIT 會指派給 event.idm.read_only_udm.metadata.vendor_name
location target.location.name location 欄位的值會指派給 target.location.name
operationName additional.fields[x].key 文字常值 operationName 會指派給鍵欄位。
operationName additional.fields[x].value.string_value operationName 欄位的值會指派給 additional.fields[x].value.string_value
operationVersion additional.fields[x].key 文字常值 operationVersion 會指派給鍵欄位。
operationVersion additional.fields[x].value.string_value operationVersion 欄位的值會指派給 additional.fields[x].value.string_value
properties.accountName principal.user.userid properties.accountName 欄位的值會指派給 principal.user.userid
properties.clientRequestId additional.fields[x].key 文字常值 clientRequestId 會指派給鍵欄位。
properties.clientRequestId additional.fields[x].value.string_value properties.clientRequestId 欄位的值會指派給 additional.fields[x].value.string_value
properties.etag additional.fields[x].key 文字常值 etag 會指派給鍵欄位。
properties.etag additional.fields[x].value.string_value properties.etag 欄位的值會指派給 additional.fields[x].value.string_value
properties.objectKey additional.fields[x].key 文字常值 objectKey 會指派給鍵欄位。
properties.objectKey additional.fields[x].value.string_value properties.objectKey 欄位的值會指派給 additional.fields[x].value.string_value
properties.requestMd5 additional.fields[x].key 文字常值 requestMd5 會指派給鍵欄位。
properties.requestMd5 additional.fields[x].value.string_value properties.requestMd5 欄位的值會指派給 additional.fields[x].value.string_value
properties.responseMd5 additional.fields[x].key 文字常值 responseMd5 會指派給鍵欄位。
properties.responseMd5 additional.fields[x].value.string_value properties.responseMd5 欄位的值會指派給 additional.fields[x].value.string_value
properties.serviceType additional.fields[x].key 文字常值 serviceType 會指派給鍵欄位。
properties.serviceType additional.fields[x].value.string_value properties.serviceType 欄位的值會指派給 additional.fields[x].value.string_value
properties.tlsVersion network.tls.version properties.tlsVersion 欄位的值會指派給 network.tls.version
properties.userAgentHeader network.http.parsed_user_agent properties.userAgentHeader 欄位的值會解析為使用者代理程式字串,並指派給 network.http.parsed_user_agent
properties.userAgentHeader network.http.user_agent properties.userAgentHeader 欄位的值會指派給 network.http.user_agent
protocol network.application_protocol protocol 欄位的值會指派給 network.application_protocol
resourceId target.resource.id resourceId 欄位的值會指派給 target.resource.id
resourceId target.resource.product_object_id resourceId 欄位的值會指派給 target.resource.product_object_id。文字字串 DATABASE 會指派給 target.resource.resource_type
resourceType additional.fields[x].key 文字常值 resourceType 會指派給鍵欄位。
resourceType additional.fields[x].value.string_value resourceType 欄位的值會指派給 additional.fields[x].value.string_value。如果 statusTextSuccess,則值會設為 ALLOW
statusCode network.http.response_code statusCode 欄位的值會轉換為整數,並指派給 network.http.response_code。文字字串 MICROSOFT_AZURE 會指派給 target.cloud.environment
time timestamp time 欄位的值會解析為時間戳記,並指派給 timestamp
uri network.http.referral_url uri 欄位的值會指派給 network.http.referral_url

異動

2024-12-12

  • identity.tokenHashidentity.typeidentity.requester.appIdidentity.requester.tenantIdidentity.requester.tokenIssuerproperties.sourceAccessTierprincipal.typeauth.actionauth.roleAssignmentIdauth.roleDefinitionId 對應至 additional.fields
  • 已將 identity.requester.upn 對應至 src.user.userid
  • 已將 identity.requester.objectId 對應至 src.user.product_object_id

2024-12-06

  • 已將 smbCommandMinor 對應至 security_result.action_details

2024-07-31

  • statusTextcorrelationId 初始化為空值。

2024-04-08

  • 新建的剖析器。

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