收集 AWS S3 伺服器存取記錄

支援的國家/地區:

本文說明如何設定 Google Security Operations 資訊提供,以收集 AWS S3 伺服器存取記錄。剖析器會使用 grok 模式擷取欄位、處理潛在的 JSON 輸入內容,並將擷取的欄位對應至 UDM。系統會根據特定欄位是否存在及欄位值,執行資料轉換、類型轉換和條件邏輯,確保 UDM 呈現方式準確無誤。

事前準備

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

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

如何設定 AWS S3 伺服器存取記錄

Google SecOps 支援透過 Amazon SQS 使用 Amazon S3 收集記錄。

  1. 登入 AWS 管理主控台。
  2. 存取 Amazon S3 控制台。
  3. 前往 Amazon S3 > Buckets
  4. 選取現有值區或建立新值區。
  5. 按一下 [屬性]。
  6. 在「伺服器存取記錄」部分中,按一下「編輯」
  7. 選取 [啟用]。
  8. 在「目標 bucket」欄位中,輸入新 bucket 的名稱,將記錄檔物件傳送至該 bucket,或選取現有 bucket 做為目標。
  1. 按一下 [儲存變更]。
  2. 如要為 S3 儲存空間建立 SQS 佇列,請使用 S3 儲存空間設定 Amazon SQS 例項。詳情請參閱「設定值區通知 (SNS 主題或 SQS 佇列)」。

根據服務和區域,參閱下列 AWS 說明文件,找出連線端點:

設定動態饋給

在 Google SecOps 平台中,有兩種不同的進入點可設定動態饋給:

  • 「SIEM 設定」>「動態消息」
  • 內容中心 > 內容包

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

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

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

  1. 依序前往「SIEM 設定」>「動態饋給」
  2. 按一下「新增動態消息」
  3. 在下一個頁面中,按一下「設定單一動態饋給」
  4. 在「Source type」(來源類型) 清單中,選取「Amazon S3」或「Amazon SQS」
  5. 在「記錄類型」清單中,選取「AWS S3 伺服器存取」
  6. 點選「下一步」
  7. Google SecOps 支援使用存取金鑰 ID 和私密方法收集記錄檔。如要建立存取金鑰 ID 和密鑰,請參閱「使用 AWS 設定工具驗證」。
  8. 根據您建立的 AWS S3 伺服器存取設定,為輸入參數指定值:
    • 如果使用 Amazon S3,請為下列欄位指定值:
      • 區域
      • S3 URI
      • URI 是
      • 來源刪除選項
      • 存取金鑰 ID
      • 存取密鑰
    • 如果使用 Amazon SQS,請為下列欄位指定值:
      • 區域
      • 佇列名稱
      • 帳戶號碼
      • 佇列存取金鑰 ID
      • 佇列存取密鑰
      • 來源刪除選項
  9. 依序點按「繼續」和「提交」

從內容中心設定動態饋給

您可以使用 Amazon SQS (建議) 或 Amazon S3,在 Google SecOps 中設定擷取動態饋給。

為下列欄位指定值:

  • 區域:S3 bucket 或 SQS 佇列的代管區域。
  • 佇列名稱:要從中讀取記錄資料的 SQS 佇列名稱。
  • 帳號:擁有 SQS 佇列的帳號。
  • 佇列存取金鑰 ID:20 個字元的帳戶存取金鑰 ID。例如:AKIAOSFOODNN7EXAMPLE
  • 佇列存取密鑰:40 個字元的存取密鑰。例如:wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
  • 來源刪除選項:在轉移資料後刪除檔案和目錄的選項。

進階選項

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

UDM 對應表

記錄欄位 UDM 對應 邏輯
aclRequired target.resource.attribute.labels.key: "aclRequired"
target.resource.attribute.labels.value: Value of aclRequired
直接從原始記錄欄位 aclRequired 對應。
authenticationtype extensions.auth.auth_details 直接從原始記錄欄位 authenticationtype 對應。
bucket target.resource.name 直接從原始記錄欄位 bucket 對應。
bucket target.resource.resource_type:「STORAGE_BUCKET」 如果存在 bucket 欄位,剖析器會將 resource_type 設為「STORAGE_BUCKET」。
bucketowner target.resource.product_object_id 直接從原始記錄欄位 bucketowner 對應。
bytes_sent network.sent_bytes 直接從原始記錄欄位 bytes_sent 對應,並轉換為不帶正負號的整數,然後將「-」替換為「0」。
ciphersuite network.application_protocol:「HTTPS」 如果存在 ciphersuite 欄位,剖析器會將 application_protocol 設為「HTTPS」。
ciphersuite network.tls.cipher 直接從原始記錄欄位 ciphersuite 對應。
errorcode security_result.action_details 直接從原始記錄欄位 errorcode 對應。
errorcode security_result.action:「BLOCK」 如果 errorcode 欄位包含「AccessDenied」(不區分大小寫),剖析器會將 action 設為「BLOCK」。
hostheader target.hostname 從原始記錄檔欄位 hostheader 擷取,可能移除連接埠號碼。
hostheader target.port 如果存在通訊埠號碼,則從原始記錄欄位 hostheader 擷取。
hostid target.resource.attribute.labels.key:「S3 擴充要求 ID」
target.resource.attribute.labels.valuehostid 的值
直接從原始記錄欄位 hostid 對應。
http_capture network.http.method HTTP 方法是從 http_capture 欄位擷取。
http_capture network.http.version HTTP 版本是從 http_capture 欄位擷取。
http_capture target.url 系統會使用 hostheaderhttp_request_uri (從 http_capture 擷取) 建構目標網址,並根據 ciphersuite 的存在與否,加上「http://」或「https://」前置字元。
httpstatus network.http.response_code 轉換為整數後,直接從原始記錄欄位 httpstatus 對應。
object_version_id target.resource.product_object_id 直接從原始記錄欄位 object_version_id 對應。
objectsize target.file.size 直接從原始記錄欄位 objectsize 對應,並轉換為不帶正負號的整數,然後將「-」替換為「0」。
operation metadata.product_event_type 直接從原始記錄欄位 operation 對應。
referrer network.http.referral_url 移除引號後,直接從原始記錄欄位 referrer 對應。
remoteip metadata.event_type:「USER_RESOURCE_ACCESS」 如果 remoteip 欄位空白,剖析器會將 event_type 設為「USER_RESOURCE_ACCESS」。
remoteip principal.ip 直接從原始記錄欄位 remoteip 對應。
requester target.resource.attribute.labels.key: "Access Point ARN"
target.resource.attribute.labels.value: Value of requester
直接從原始記錄欄位 requester 對應。
requester_user principal.user.userid 直接從原始記錄欄位 requester_user 對應。
requestid network.session_id 直接從原始記錄欄位 requestid 對應。
request_time_ms network.session_duration.nanos 從原始記錄欄位 request_time_ms 直接對應,轉換為整數、將「-」替換為「0」,並以零填補,表示奈秒。
signatureversion target.resource.attribute.labels.key: "Signature Version"
target.resource.attribute.labels.value: Value of signatureversion
直接從原始記錄欄位 signatureversion 對應。
time metadata.event_timestamp 從原始記錄欄位 time 剖析,並轉換為時間戳記。
tlsVersion network.tls.version 直接從原始記錄欄位 tlsVersion 對應。
useragent network.http.user_agent 移除引號後,直接從原始記錄欄位 useragent 對應。
(剖析器邏輯) metadata.event_type:「NETWORK_HTTP」 剖析器會將預設的 event_type 設為「NETWORK_HTTP」。
(剖析器邏輯) metadata.log_type:「AWS_S3_SERVER_ACCESS」 剖析器會將 log_type 設為「AWS_S3_SERVER_ACCESS」。
(剖析器邏輯) metadata.product_name:「AWS S3 Server Access」 剖析器會將 product_name 設為「AWS S3 伺服器存取」。
(剖析器邏輯) metadata.product_version:「HTTP/http_version 剖析器會使用擷取的 http_version 設定 product_version
(剖析器邏輯) metadata.vendor_name:「AMAZON」 剖析器會將 vendor_name 設為「AMAZON」。
(剖析器邏輯) network.application_protocol:「HTTP」 如果沒有 ciphersuite 欄位,剖析器會將 application_protocol 設為「HTTP」。
(剖析器邏輯) timestamp 剖析器會在處理事件時,將事件 timestamp 設為目前時間。

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