收集 AWS Key Management Service 記錄
支援的國家/地區:
Google SecOps
SIEM
本文說明如何將 AWS Key Management Service (KMS) 記錄檔擷取至 Google Security Operations。AWS KMS 是一項全代管服務,可讓您建立及控管用於加密資料的加密金鑰。這項整合功能有助於監控及稽核加密金鑰的使用情形。
事前準備
請確認您已完成下列事前準備事項:
- Google SecOps 執行個體
- AWS 的特殊存取權
設定 Amazon S3 和 IAM
- 按照這份使用者指南建立 Amazon S3 值區:建立值區
- 請儲存 bucket 的「名稱」和「區域」,以供後續使用。
- 按照這份使用者指南建立使用者:建立 IAM 使用者。
- 選取建立的「使用者」。
- 選取「安全憑證」分頁標籤。
- 在「Access Keys」部分中,按一下「Create Access Key」。
- 選取「第三方服務」做為「用途」。
- 點選「下一步」。
- 選用:新增說明標記。
- 按一下「建立存取金鑰」。
- 按一下「下載 CSV 檔案」,儲存「存取金鑰」和「私密存取金鑰」,以供日後使用。
- 按一下 [完成]。
- 選取 [權限] 分頁標籤。
- 在「權限政策」部分,按一下「新增權限」。
- 選取「新增權限」。
- 選取「直接附加政策」。
- 搜尋並選取 AmazonS3FullAccess 政策。
- 點選「下一步」。
- 按一下「新增權限」。
如何為 AWS KMS 設定 CloudTrail
- 登入 AWS 管理主控台。
- 在搜尋列中輸入並選取服務清單中的 CloudTrail。
- 按一下「建立路徑」。
- 提供「追蹤記錄名稱」(例如「KMS-Activity-Trail」)。
- 勾選「為機構中的所有帳戶啟用」核取方塊。
- 輸入先前建立的 S3 bucket URI (格式應為
s3://your-log-bucket-name/
),或建立新的 S3 bucket。 - 如果啟用 SSE-KMS,請提供 AWS KMS 別名的名稱,或選擇現有的 AWS KMS 金鑰。
- 其他設定可維持預設值。
- 點選「下一步」。
- 在「事件類型」下方,選取「管理事件」和「資料事件」。
- 點選「下一步」。
- 在「檢閱並建立」中檢查設定。
- 按一下「建立路徑」。
- 選用:如果您建立了新的 bucket,請繼續進行下列程序:
- 前往 S3。
- 找出並選取新建立的記錄檔 bucket。
- 選取「AWSLogs」AWSLogs資料夾。
- 按一下「複製 S3 URI」並儲存。
設定動態饋給
在 Google SecOps 平台中,有兩種不同的進入點可設定動態饋給:
- 「SIEM 設定」>「動態消息」
- 內容中心 > 內容包
依序前往「SIEM 設定」>「動態消息」,設定動態消息
如要為這個產品系列中的不同記錄類型設定多個動態饋給,請參閱「依產品設定動態饋給」。
如要設定單一動態饋給,請按照下列步驟操作:
- 依序前往「SIEM 設定」>「動態饋給」。
- 按一下「新增動態消息」。
- 在下一個頁面中,按一下「設定單一動態饋給」。
- 在「動態饋給名稱」欄位中,輸入動態饋給的名稱 (例如「AWS KMS Logs」)。
- 選取「Amazon S3」做為「來源類型」。
- 選取「AWS KMS」做為「記錄類型」。
- 點選「下一步」。
指定下列輸入參數的值:
- 區域:Amazon S3 值區所在的區域。
- S3 URI:bucket URI。
s3://your-log-bucket-name/
- 請將
your-log-bucket-name
替換為 S3 值區的實際名稱。
- 請將
- URI 是:根據 bucket 結構,選取「Directory」(目錄) 或「Directory which includes subdirectories」(包含子目錄的目錄)。
來源刪除選項:根據擷取偏好設定選取刪除選項。
存取金鑰 ID:具備 S3 值區讀取權限的使用者存取金鑰。
存取密鑰:使用者的存取密鑰,具備從 S3 bucket 讀取的權限。
資產命名空間:資產命名空間。
擷取標籤:要套用至這個動態饋給事件的標籤。
點選「下一步」。
在「Finalize」畫面上檢查新的動態饋給設定,然後按一下「Submit」。
從內容中心設定動態饋給
為下列欄位指定值:
- 區域:Amazon S3 值區所在的區域。
- S3 URI:bucket URI。
s3://your-log-bucket-name/
- 請將
your-log-bucket-name
替換為 S3 值區的實際名稱。
- 請將
- URI 是:根據 bucket 結構,選取「Directory」(目錄) 或「Directory which includes subdirectories」(包含子目錄的目錄)。
- 來源刪除選項:根據擷取偏好設定選取刪除選項。
存取金鑰 ID:具備 S3 值區讀取權限的使用者存取金鑰。
存取密鑰:使用者的存取密鑰,具備從 S3 bucket 讀取的權限。
進階選項
- 動態饋給名稱:系統預先填入的值,用於識別動態饋給。
- 來源類型:將記錄收集到 Google SecOps 的方法。
- 資產命名空間:與動態饋給相關聯的命名空間。
- 擷取標籤:套用至這個動態饋給所有事件的標籤。
UDM 對應表
記錄欄位 | UDM 對應 | 邏輯 |
---|---|---|
data.detail.awsRegion | principal.location.country_or_region | 直接從原始記錄中的 data.detail.awsRegion 欄位對應。 |
data.detail.eventCategory | security_result.category_details | 直接從原始記錄中的 data.detail.eventCategory 欄位對應。 |
data.detail.eventName | metadata.product_event_type | 直接從原始記錄中的 data.detail.eventName 欄位對應。這個欄位會根據下列邏輯判斷 metadata.event_type 值:如果 eventName 是「Decrypt」或「Encrypt」,則 event_type 為「USER_RESOURCE_ACCESS」;如果 eventName 是「GenerateDataKey」,則 event_type 為「USER_RESOURCE_CREATION」;否則 event_type 為「GENERIC_EVENT」。 |
data.detail.requestID | additional.fields.key | 剖析器程式碼中的值會硬式編碼為「requestID」。 |
data.detail.requestID | additional.fields.value.string_value | 直接從原始記錄中的 data.detail.requestID 欄位對應。 |
data.detail.requestParameters.encryptionAlgorithm | security_result.detection_fields.key | 剖析器程式碼中的值會硬式編碼為「encryptionAlgorithm」。 |
data.detail.requestParameters.encryptionAlgorithm | security_result.detection_fields.value | 直接從原始記錄中的 data.detail.requestParameters.encryptionAlgorithm 欄位對應。 |
data.detail.resources.ARN | target.resource.id | 直接從原始記錄中的 data.detail.resources.ARN 欄位對應。 |
data.detail.resources.type | target.resource.resource_subtype | 直接從原始記錄中的 data.detail.resources.type 欄位對應。 |
data.detail.userIdentity.sessionContext.attributes.mfaAuthenticated | principal.user.attribute.labels.key | 剖析器程式碼中的值會硬式編碼為「mfaAuthenticated」。 |
data.detail.userIdentity.sessionContext.attributes.mfaAuthenticated | principal.user.attribute.labels.value | 直接從原始記錄中的 data.detail.userIdentity.sessionContext.attributes.mfaAuthenticated 欄位對應。 |
data.detail.userIdentity.sessionContext.sessionIssuer.principalId | principal.user.userid | 直接從原始記錄中的 data.detail.userIdentity.sessionContext.sessionIssuer.principalId 欄位對應。 |
data.detail.userIdentity.sessionContext.sessionIssuer.userName | principal.user.user_display_name | 直接從原始記錄中的 data.detail.userIdentity.sessionContext.sessionIssuer.userName 欄位對應。 |
data.detail.userIdentity.type | principal.user.attribute.roles.name | 直接從原始記錄中的 data.detail.userIdentity.type 欄位對應。 |
data.id | metadata.product_log_id | 直接從原始記錄中的 data.id 欄位對應。 |
data.time | metadata.event_timestamp.seconds | 從原始記錄的 data.time 欄位剖析的時間戳記秒數值。 |
不適用 | metadata.event_type | 這個欄位是根據 data.detail.eventName 的值,由剖析器邏輯衍生而來:如果 eventName 是「Decrypt」或「Encrypt」,則 event_type 為「USER_RESOURCE_ACCESS」;如果 eventName 是「GenerateDataKey」,則 event_type 為「USER_RESOURCE_CREATION」;否則 event_type 為「GENERIC_EVENT」。 |
不適用 | metadata.log_type | 剖析器程式碼中的值會硬式編碼為「AWS_KMS」。 |
不適用 | metadata.product_name | 剖析器程式碼中的值會以硬式編碼方式設為「AWS Key Management Service」。 |
不適用 | metadata.vendor_name | 剖析器程式碼中的值會硬式編碼為「AMAZON」。 |
不適用 | principal.asset.attribute.cloud.environment | 剖析器程式碼中的值會硬式編碼為「AMAZON_WEB_SERVICES」。 |
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。