Security Hub 控制項 CodeBuild - AWS 安全中樞

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Security Hub 控制項 CodeBuild

這些 Security Hub 控制項會評估 AWS CodeBuild 服務和資源。

這些控件可能無法在所有人中使用 AWS 區域。 如需詳細資訊,請參閱各區域控制項的可用性

[CodeBuild.1] CodeBuild 比特桶源存儲庫不URLs應包含敏感憑據

相關要求:PCIDSS NIST.800-53.r5 SA-3

類別:保護 > 安全開發

嚴重性:嚴重

資源類型:AWS::CodeBuild::Project

AWS Config 規則:codebuild-project-source-repo-url-check

排程類型:已觸發變更

參數:

這個控件檢查是否一個 AWS CodeBuild 項目 Bitbucket 源存儲庫URL包含個人訪問令牌或用戶名和密碼。如果 Bitbucket 來源儲存庫URL包含個人存取權杖或使用者名稱和密碼,則控制項會失敗。

注意

此控制項會評估 CodeBuild 組建專案的主要來源和次要來源。如需有關專案來源的詳細資訊,請參閱中的多個輸入來源和輸出成品範例 AWS CodeBuild 用戶指南

登錄憑據不應以純文本形式存儲或傳輸,也不應出現在源存儲庫中URL。您應該在中訪問源提供程序,而不是個人訪問令牌或登錄憑據 CodeBuild,並URL將源存儲庫更改為僅包含通往 Bitbucket 存儲庫位置的路徑。使用個人訪問令牌或登錄憑據可能會導致意外的數據暴露或未經授權的訪問。

修補

您可以更新要使用的 CodeBuild 專案OAuth。

從 CodeBuild 項目源中刪除基本身份驗證/(GitHub)個人訪問令牌
  1. 在開啟 CodeBuild 主控台https://console.aws.amazon.com/codebuild/

  2. 選擇包含個人存取字符或使用者名稱及密碼的建置專案。

  3. Edit (編輯) 中,選擇 Source (來源)

  4. 選擇斷開與 GitHub /位桶的連接。

  5. 選擇「Connect 方式」OAuth,然後選擇「Connect 至 GitHub/Bitbucket」。

  6. 出現提示時,選擇 authorize as appropriate (適當授權)

  7. 視需要重新設定儲存庫URL和其他組態設定。

  8. 選擇 Update source (更新來源)

有關更多信息,請參閱中的「CodeBuild 使用基於案例的樣本AWS CodeBuild 用戶指南

[CodeBuild.2] CodeBuild 項目環境變量不應包含純文本憑據

相關要求:PCIDSS第一版 (七)、 NIST.800-53.r5 IA-5 NIST.800-53.r5 SA-3

類別:保護 > 安全開發

嚴重性:嚴重

資源類型:AWS::CodeBuild::Project

AWS Config 規則:codebuild-project-envvar-awscred-check

排程類型:已觸發變更

參數:

此控制項會檢查專案是否包含環境變數 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY

身分驗證登入資料 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY 永遠不應以純文字形式存放,應該這可能會意外公開資料或使其受到未經授權的存取。

修補

要從 CodeBuild 項目中刪除環境變量,請參閱更改構建項目的設置 AWS CodeBuild 中的 AWS CodeBuild 用戶指南。確保沒有為環境變量選擇任何內容。

您可以將具有敏感值的環境變數儲存在 AWS Systems Manager 參數存儲或 AWS Secrets Manager 然後從您的構建規範中檢索它們。如需指示,請參閱「環境」區段中標示為「重要」的方塊。AWS CodeBuild 用戶指南

[CodeBuild.3] CodeBuild S3 日誌應加密

相關要求: NIST.800-53.r5 CA-9(一)、 NIST.800-53.r5 CM-3(6), NIST.800-53.r5 SC-1三、 NIST.800-53.r5 SC-2 NIST.800-53.r5 SC-2八、八 (一)、NIST

分類:保護 > 資料保護 > 加密 data-at-rest

嚴重性:

資源類型:AWS::CodeBuild::Project

AWS Config 規則:codebuild-project-s3-logs-encrypted

排程類型:已觸發變更

參數:

此控制項會檢查 Amazon S3 日誌是否有 AWS CodeBuild 項目被加密。如果停用專案 S3 日誌的加密,則控制 CodeBuild 項會失敗。

靜態資料加密是建議的最佳作法,以便在資料周圍新增存取管理層。靜態加密記錄檔可降低使用者未經過驗證的風險 AWS 將訪問存儲在磁盤上的數據。它增加了另一組訪問控制,以限制未經授權用戶訪問數據的能力。

修補

若要變更 CodeBuild 專案 S3 日誌的加密設定,請參閱變更建置專案的設定 AWS CodeBuild 中的 AWS CodeBuild 用戶指南

[CodeBuild.4] CodeBuild 項目環境應該有一個日誌記錄 AWS Config成熟

相關要求: NIST.800-53.r5 AC-2(12)、 NIST.800-53.r5 AC-2 (4)、(26)、 NIST.800-53.r5 AC-4 (9)、(9)、 NIST.800-53.r5 AC-6 (9) NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 AU-9(7), NIST.800-53.r5 CA-7、.800-53.r5 四 NIST.800-53.r5 SC-7 (20)、NIST .800-53.r5 (20)、.800-53.r5 (20)、NIST .800-53.r5 SI-7 (8) NIST NIST

類別:識別 > 記錄日誌

嚴重性:

資源類型:AWS::CodeBuild::Project

AWS Config 規則:codebuild-project-logging-enabled

排程類型:已觸發變更

參數:

此控制項會檢查 CodeBuild 專案環境是否至少有一個記錄選項,無論是 S3 還是啟用 CloudWatch 日誌。如果 CodeBuild 專案環境未啟用至少一個記錄選項,則此控制項會失敗。

從安全的角度來看,記錄是一項重要功能,可以在發生任何安全事件時實現 future 鑑識工作。將 CodeBuild 專案中的異常與威脅偵測相關聯,可增加對這些安全威脅偵測的準確性的信心。

修補

如需有關如何設定 CodeBuild 專案記錄設定的詳細資訊,請參閱 CodeBuild 使用指南中的建立組建專案 (主控台)

[CodeBuild.5] CodeBuild 項目環境不應啟用特權模式

重要

安全中心於 2024 年 4 月淘汰此控制項。如需詳細資訊,請參閱Security Hub 控制項的變更記錄

相關要求: NIST.800-53.r5 AC-2(1) NIST.800-53.r5 AC-3, NIST.800-53.r5 AC-3 (15), NIST.800-53.r5 AC-3 (7), NIST.800-53.r5 AC-5, NIST.800-53.r5 AC-6, NIST.800-53.r5 AC-6 (10), NIST.800-53.r5 AC-6 (2)

類別:保護 > 安全存取管理

嚴重性:

資源類型:AWS::CodeBuild::Project

AWS Config 規則:codebuild-project-environment-privileged-check

排程類型:已觸發變更

參數:

這個控件檢查是否一個 AWS CodeBuild 專案環境已啟用或停用特權模式。如果 CodeBuild 專案環境已啟用特權模式,則控制項會失敗。

根據預設,Docker 容器不允許存取任何裝置。「Privileged」(特殊權限) 模式會授予建置專案之 Docker 容器對所有裝置的存取權。privilegedMode使用值設置true允許 Docker 守護程序在 Docker 容器中運行。Docker 守護程序偵聽 Docker API 請求並管理 Docker 對象,例如映像,容器,網絡和卷。只有在構建項目用於構建 Docker 映像時,才應將此參數設置為 true。否則,應禁用此設置以防止意外訪問 Docker 以APIs及容器的基礎硬件。設定false可協privilegedMode助保護重要資源免於遭到竄改和刪除。

修補

若要配置 CodeBuild 專案環境設定,請參閱CodeBuild 使用指南中的建立組建專案 (主控台)。在「環境」區段中,請勿選取「授權」設定。

[CodeBuild.7] CodeBuild 報表群組匯出應在靜態時加密

分類:保護 > 資料保護 > 加密 data-at-rest

嚴重性:

資源類型:AWS::CodeBuild::ReportGroup

AWS Config 規則:codebuild-report-group-encrypted-at-rest

排程類型:已觸發變更

參數:

該控件檢查是否測試結果 AWS CodeBuild 匯出至 Amazon Simple Storage Service (Amazon S3) 貯體的報表群組會在靜態時加密。如果報表群組匯出未在靜態時加密,控制項就會失敗。

靜態資料是指任何持續時間儲存在持續性、非揮發性儲存體中的資料。將靜態資料加密可協助您保護其機密性,進而降低未經授權使用者存取資料的風險。

修補

若要將報表群組匯出至 S3 加密,請參閱更新中的報表群組 AWS CodeBuild 用戶指南