Amazon Web Services (AWS) 資源的安全性建議

如果您使用 [環境設定] 頁面連接 Amazon Web Services (AWS) 帳戶,本文會列出您在 適用於雲端的 Microsoft Defender 中看到的所有建議。 您環境中顯示的建議是以您要保護的資源和自訂設定為基礎。

若要瞭解您可以採取以回應這些建議的動作,請參閱補救 適用於雲端的 Defender 中的建議。

您的安全分數是根據您完成的安全性建議數目。 若要決定要先解決的建議,請查看每個建議的嚴重性,以及其對安全分數的潛在影響。

AWS 計算建議

由系統管理員管理的 Amazon EC2 實例在修補程式安裝之後,應具有符合規範的修補程式合規性狀態

描述:此控件會檢查 Amazon EC2 Systems Manager 修補程式合規性的合規性狀態是否符合規範,或是在實例上安裝修補程式之後NON_COMPLIANT。 它只會檢查 AWS Systems Manager Patch Manager 所管理的實例。 它不會檢查修補程式是否在PCI DSS需求 '6.2' 規定的30天限制內套用。 它也不會驗證是否已將套用的修補程式分類為安全性修補程式。 您應該使用適當的基準設定來建立修補群組,並確保系統管理員中的修補群組是由這些修補程式群組所管理。 如需修補程式群組的詳細資訊,請參閱 AWS Systems Manager 使用者指南

嚴重性:中

Amazon EFS 應設定為使用 AWS KMS 加密待用檔案數據

描述:此控件會檢查 Amazon Elastic File System 是否已設定為使用 AWS KMS 加密檔案數據。 在下列情況下,檢查失敗:*“Encrypted” 在 DescribeFileSystems 回應中設定為 “false”。 DescribeFileSystems 回應中的 KmsKeyId” 密鑰不符合 efs-encrypted-checkKmsKeyId 參數。 請注意,此控件不會針對 efs-encrypted-check 使用 “KmsKeyId” 參數。 它只會檢查 「Encrypted」 的值。 若要為 Amazon EFS 中的敏感資料新增一層安全性,您應該建立加密的文件系統。 Amazon EFS 支援待用文件系統的加密。 建立 Amazon EFS 文件系統時,您可以啟用待用數據的加密。 若要深入瞭解 Amazon EFS 加密,請參閱 Amazon Elastic File System 使用者指南中的 Amazon EFS 中的數據加密。

嚴重性:中

Amazon EFS 磁碟區應該位於備份計劃中

描述:此控件會檢查 Amazon Elastic File System (Amazon EFS) 檔案系統是否已新增至 AWS 備份中的備份計劃。 如果備份計劃中未包含 Amazon EFS 檔案系統,控件就會失敗。 在備份計劃中加入 EFS 文件系統,可協助您保護資料免於刪除和資料遺失。

嚴重性:中

應啟用應用程式負載平衡器刪除保護

描述:此控件會檢查應用程式負載平衡器是否已啟用刪除保護。 如果未設定刪除保護,控件就會失敗。 啟用刪除保護以保護應用程式負載平衡器免於刪除。

嚴重性:中

與負載平衡器相關聯的自動調整群組應該使用健康情況檢查

描述:與負載平衡器相關聯的自動調整群組會使用彈性負載平衡健康情況檢查。 PCI DSS 不需要負載平衡或高可用性組態。 AWS 最佳做法建議這麼做。

嚴重性:低

AWS 帳戶應已啟用 Azure Arc 自動布建

描述:如需適用於伺服器的 Microsoft Defender 安全性內容的完整可見度,EC2 實例應連線到 Azure Arc。為了確保所有合格的 EC2 實例都會自動接收 Azure Arc,請在 AWS 帳戶層級啟用從 適用於雲端的 Defender 自動布建。 深入瞭解 Azure Arc適用於伺服器的 Microsoft Defender。

嚴重性:高

CloudFront 散發套件應已設定原始故障轉移

描述:此控件會檢查 Amazon CloudFront 散發套件是否已設定為具有兩個或更多來源的來源群組。 CloudFront 原始故障轉移可能會增加可用性。 如果主要來源無法使用,或傳回特定的 HTTP 回應狀態代碼,來源故障轉移會自動將流量重新導向至次要來源。

嚴重性:中

CodeBuild GitHub 或 Bitbucket 來源存放庫 URL 應該使用 OAuth

描述:此控件會檢查 GitHub 或 Bitbucket 來源存放庫 URL 是否包含個人存取令牌或使用者名稱和密碼。 驗證認證不應該以純文本儲存或傳輸,或出現在存放庫 URL 中。 您應該使用 OAuth 來授與存取 GitHub 或 Bitbucket 存放庫的授權,而不是個人存取令牌或使用者名稱和密碼。 使用個人存取令牌或使用者名稱和密碼,可能會將您的認證公開至非預期的數據暴露和未經授權的存取。

嚴重性:高

CodeBuild 專案環境變數不應包含認證

描述:此控制項會檢查專案是否包含環境變數 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY。 驗證認證 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY 不應該以純文本儲存,因為這可能會造成非預期的數據暴露和未經授權的存取。

嚴重性:高

動態資料庫加速器 (DAX) 叢集應該在待用時加密

描述:此控件會檢查 DAX 叢集是否在待用時加密。 加密待用數據可降低使用者未向 AWS 驗證之磁碟上所儲存數據的風險。 加密會新增另一組訪問控制,以限制未經授權的使用者存取數據的能力。 例如,需要 API 許可權才能解密數據,才能讀取數據。

嚴重性:中

DynamoDB 資料表應該會自動隨需求調整容量

描述:此控件會檢查 Amazon DynamoDB 數據表是否可以視需要調整其讀取和寫入容量。 如果數據表使用隨選容量模式或已設定自動調整的布建模式,則此控件會通過。 使用需求調整容量可避免節流例外狀況,這有助於維護應用程式的可用性。

嚴重性:中

EC2 實例應該連線到 Azure Arc

描述:將 EC2 實例 連線 至 Azure Arc,以便完整檢視適用於伺服器的 Microsoft Defender 安全性內容。 深入瞭解 Azure Arc,以及 混合式雲端環境中適用於伺服器的 Microsoft Defender。

嚴重性:高

EC2 實例應該由 AWS 系統管理員管理

描述:在實例上安裝修補程序之後,Amazon EC2 Systems Manager 修補程式合規性的狀態為「符合規範」或「NON_COMPLIANT」。 只會檢查 AWS Systems Manager Patch Manager 所管理的實例。 不會檢查PCI DSS需求 '6' 在30天限制內套用的修補程式。

嚴重性:中

EDR 設定問題應在 EC2 上解決

描述:若要保護虛擬機免於最新的威脅和弱點,請解決已安裝端點偵測和回應 (EDR) 解決方案的所有已識別組態問題。
注意:目前,這項建議僅適用於已啟用 適用於端點的 Microsoft Defender (MDE) 的資源。

嚴重性:高

EDR 解決方案應該安裝在 EC2 上

描述:若要保護EC2,請安裝端點偵測和回應 (EDR) 解決方案。 EDR 有助於防止、偵測、調查及回應進階威脅。 使用適用於伺服器的 Microsoft Defender 來部署 適用於端點的 Microsoft Defender。 如果資源分類為「狀況不良」,則未安裝支援的 EDR 解決方案。 如果您已安裝無法透過此建議探索的 EDR 解決方案,您可以豁免它。

嚴重性:高

由系統管理員管理的實例應具有符合規範的關聯合規性狀態

描述:此控件會檢查在實例上執行關聯之後,AWS 系統管理員關聯合規性的狀態是否符合規範或NON_COMPLIANT。 如果關聯合規性狀態符合規範,控件就會通過。 狀態管理員關聯是指派給受控實例的組態。 組態會定義您想要在實例上維護的狀態。 例如,關聯可以指定必須在實例上安裝並執行防病毒軟體,或必須關閉特定埠。 建立一或多個狀態管理員關聯之後,合規性狀態資訊就會立即可供您在控制台中使用,或回應 AWS CLI 命令或對應的 Systems Manager API 作業。 對於關聯,「設定」合規性會顯示符合規範或不符合規範的狀態,以及指派給關聯之嚴重性層級,例如「重大」或」。 若要深入瞭解 State Manager 關聯合規性,請參閱 AWS 系統管理員使用者指南中的關於狀態管理員關聯合規性 。 您必須設定系統管理員關聯的範圍內 EC2 實例。 您也必須設定修補程式廠商安全性評等的修補程式基準,並設定自動核准日期以符合PCI DSS 3.2.1 需求 6.2。 如需如何 建立關聯的詳細資訊指引,請參閱 AWS 系統管理員使用者指南中的建立關聯。 如需在系統管理員中使用修補的詳細資訊,請參閱 AWS Systems Manager 使用者指南中的 AWS Systems Manager Patch Manager

嚴重性:低

Lambda 函式應該已設定寄不出的信件佇列

描述:此控件會檢查 Lambda 函式是否已設定成寄不出的信件佇列。 如果未使用寄不出的信件佇列來設定 Lambda 函式,控件就會失敗。 作為失敗目的地的替代方案,您可以使用寄不出的信件佇列來設定函式,以儲存捨棄的事件以供進一步處理。 寄不出的信件佇列的作用與失敗目的地相同。 當事件失敗所有處理嘗試或到期時,不會進行處理時,就會使用它。 寄不出的信件佇列可讓您回顧 Lambda 函式的錯誤或失敗要求,以偵錯或識別不尋常的行為。 從安全性觀點來看,請務必瞭解您的函式失敗的原因,並確保您的函式不會因此卸除數據或危害數據安全性。 例如,如果您的函式無法與基礎資源通訊,這可能是網路其他地方拒絕服務 (DoS) 攻擊的徵兆。

嚴重性:中

Lambda 函式應該使用支援的運行時間

描述:此控件會檢查運行時間的 Lambda 函式設定是否符合針對每個語言所支援運行時間所設定的預期值。 此控件會檢查下列運行時間:nodejs14.x、nodejs12.x、nodejs10.xpython3.8python3.7、python3.6、ruby2.7、ruby2.5、java11java8.al2go1.xdotnetcore3.1、dotnetcore2.1 Lambda 運行時間是以受維護和安全性更新之作業系統、程式設計語言和軟體連結庫的組合所建置。 當安全性更新不再支援運行時間元件時,Lambda 會取代運行時間。 即使您無法建立使用已取代運行時間的函式,函式仍可供處理調用事件。 請確定您的 Lambda 函式是最新的,且不會使用過時的運行時間環境。 若要深入瞭解此控件檢查支援語言的支持運行時間,請參閱 AWS Lambda 開發人員指南中的 AWS Lambda 運行 時間。

嚴重性:中

應使用 Just-In-Time 網路存取控制來保護 EC2 實例的管理埠

描述:適用於雲端的 Microsoft Defender 識別出您網路中管理埠的一些過於寬鬆的輸入規則。 啟用 Just-In-Time 訪問控制,以保護您的實例免受以因特網為基礎的暴力密碼破解攻擊。 深入了解

嚴重性:高

應移除未使用的EC2安全組

描述:安全組應該附加至 Amazon EC2 實例或 ENI。 狀況良好的尋找可能表示有未使用的 Amazon EC2 安全組。

嚴重性:低

AWS 容器建議

[預覽]AWS 登錄中的容器映像應該已解決弱點結果

描述:適用於雲端的 Defender 掃描登錄映射是否有已知的弱點(CVE),並提供每個掃描影像的詳細結果。 掃描和補救登錄中容器映射的弱點有助於維護安全且可靠的軟體供應鏈、降低安全性事件的風險,並確保符合業界標準。

嚴重性:高

類型:弱點評估

[預覽]在 AWS 中執行的容器應該已解決弱點結果

描述:適用於雲端的 Defender 會建立 Kubernetes 叢集中目前執行的所有容器工作負載清查,並比對所使用的映射和針對登錄映像建立的弱點報告,為這些工作負載提供弱點報告。 掃描和補救容器工作負載的弱點,對於確保健全且安全的軟體供應鏈、降低安全性事件的風險,並確保符合業界標準至關重要。

嚴重性:高

類型:弱點評估

EKS 叢集應將必要的 AWS 許可權授與 適用於雲端的 Microsoft Defender

描述:適用於容器的 Microsoft Defender 提供 EKS 叢集的保護。 若要監視叢集是否有安全性弱點和威脅,適用於容器的Defender需要AWS帳戶的許可權。 這些許可權可用來在您的叢集上啟用 Kubernetes 控制平面記錄,並在叢集與雲端中 適用於雲端的 Defender 的後端之間建立可靠的管線。 深入瞭解容器化環境 適用於雲端的 Microsoft Defender 的安全性功能。

嚴重性:高

EKS 叢集應安裝 Microsoft Defender 的 Azure Arc 延伸模組

描述:Microsoft Defender 的 叢集擴充功能 為您的 EKS 叢集提供安全性功能。 延伸模組會從叢集及其節點收集數據,以識別安全性弱點和威脅。 此擴充功能適用於 已啟用 Azure Arc 的 Kubernetes。 深入瞭解容器化環境 適用於雲端的 Microsoft Defender 的安全性功能。

嚴重性:高

應該在 AWS 連接器上啟用適用於容器的 Microsoft Defender

描述:適用於容器的 Microsoft Defender 提供容器化環境的實時威脅防護,併產生可疑活動的警示。 使用這項資訊來強化 Kubernetes 叢集的安全性,並補救安全性問題。

重要事項:當您啟用適用於容器的 Microsoft Defender 並將 Azure Arc 部署到您的 EKS 叢集時,將會開始保護及收費。 如果您未在叢集上部署 Azure Arc,適用於容器的 Defender 將不會保護它,而且該叢集的 Microsoft Defender 方案不會產生任何費用。

嚴重性:高

數據平面建議

啟用 Kubernetes 的 Azure 原則 之後,AWS 支援所有 Kubernetes 數據平面安全性建議。

AWS 數據建議

Amazon Aurora 叢集應該已啟用回溯功能

描述:此控件會檢查 Amazon Aurora 叢集是否已啟用回溯。 備份可協助您更快速地從安全性事件復原。 它們也會強化系統的復原能力。 極光回溯可縮短將資料庫復原到某個時間點的時間。 不需要還原資料庫。 如需在極光中回溯的詳細資訊,請參閱 Amazon Aurora 使用者指南中的回溯極光 DB 叢集

嚴重性:中

Amazon EBS 快照集不應該公開還原

描述:除非明確允許,否則 Amazon EBS 快照集不應由所有人公開還原,以避免意外暴露數據。 此外,變更 Amazon EBS 設定的許可權應僅限於授權的 AWS 帳戶。

嚴重性:高

Amazon ECS 工作定義應具有安全的網路模式和用戶定義

描述:此控件會檢查具有主機網路模式的作用中 Amazon ECS 工作定義是否也具有特殊許可權或使用者容器定義。 如果工作定義具有主機網路模式和容器定義,privileged=false 或是空的,且 user=root 或是空的,則控件會失敗。 如果工作定義具有較高的許可權,這是因為客戶特別選擇加入該組態。 當工作定義已啟用主機網路功能,但客戶未選擇提高許可權時,此控件會檢查非預期的許可權提升。

嚴重性:高

Amazon Elasticsearch Service 網域應該加密節點之間傳送的數據

描述:此控件會檢查 Amazon ES 網域是否已啟用節點對節點加密。 HTTPS (TLS) 可用來協助防止潛在的攻擊者竊聽或使用中間人或類似攻擊來操縱網路流量。 只允許透過 HTTPS (TLS) 的加密連線。 啟用 Amazon ES 網域的節點對節點加密可確保在傳輸中加密叢集內部通訊。 此設定可能會有效能降低。 您應該先注意並測試效能取捨,再啟用此選項。

嚴重性:中

Amazon Elasticsearch Service 網域應該已啟用待用加密

描述:請務必啟用其餘 Amazon ES 網域的加密以保護敏感數據

嚴重性:中

Amazon RDS 資料庫應使用客戶管理的金鑰進行加密

描述:此檢查會識別以預設 KMS 金鑰加密的 RDS 資料庫,而不是使用客戶管理的金鑰。 作為主要作法,使用客戶管理的密鑰來加密 RDS 資料庫上的數據,並維護對敏感數據工作負載的密鑰和數據的控制。

嚴重性:中

Amazon RDS 實例應設定為自動備份設定

描述:此檢查會識別未設定自動備份設定的 RDS 實例。 如果已設定自動備份,RDS 會建立 DB 實例的記憶體磁碟區快照集,並備份整個 DB 實例,而不只是個別資料庫,以提供時間點復原。 自動備份會在指定的備份時段時間進行,並保留保留期間中所定義的有限時間。 建議您為重要的 RDS 伺服器設定自動備份,以協助數據還原程式。

嚴重性:中

Amazon Redshift 叢集應該已啟用稽核記錄

描述:此控件會檢查 Amazon Redshift 叢集是否已啟用稽核記錄。 Amazon Redshift 稽核記錄提供叢集中連線和用戶活動的其他資訊。 此數據可以在 Amazon S3 中儲存及保護,並有助於安全性稽核和調查。 如需詳細資訊,請參閱 Amazon Redshift 叢集管理指南中的資料庫稽核記錄

嚴重性:中

Amazon Redshift 叢集應該已啟用自動快照集

描述:此控件會檢查 Amazon Redshift 叢集是否已啟用自動化快照集。 它也會檢查快照集保留期間是否大於或等於 7。 備份可協助您更快速地從安全性事件復原。 它們可強化系統的復原能力。 Amazon Redshift 預設會採用定期快照集。 此控件會檢查是否啟用自動快照集,並保留至少七天。 如需 Amazon Redshift 自動化快照集的詳細資訊,請參閱 Amazon Redshift 叢集管理指南中的自動化快照

嚴重性:中

Amazon Redshift 叢集應禁止公用存取

描述:建議您使用 Amazon Redshift 叢集,藉由評估叢集組態專案中的 [publiclyAccessible] 字段來避免公用存取。

嚴重性:高

Amazon Redshift 應該會自動升級至已啟用主要版本

描述:此控件會檢查 Amazon Redshift 叢集是否已啟用自動主要版本升級。 啟用自動主要版本升級可確保在維護期間安裝 Amazon Redshift 叢集的最新主要版本更新。 這些更新可能包含安全性修補程式和錯誤修正。 讓修補程式安裝保持最新狀態是保護系統的重要步驟。

嚴重性:中

Amazon SQS 佇列應該在待用時加密

描述:此控件會檢查 Amazon SQS 佇列是否在待用時加密。 伺服器端加密 (SSE) 可讓您在加密的佇列中傳輸敏感數據。 為了保護佇列中訊息的內容,SSE 會使用 AWS KMS 中管理的密鑰。 如需詳細資訊,請參閱 Amazon Simple Queue Service 開發人員指南中的待用 加密。

嚴重性:中

應針對重大叢集事件設定 RDS 事件通知訂用帳戶

描述:此控件會檢查 Amazon RDS 事件訂用帳戶是否存在,該訂用帳戶已啟用下列來源類型、事件類別索引鍵/值組的通知。 DBCluster:[“maintenance” 和 “failure”]。 RDS 事件通知會使用 Amazon SNS,讓您知道 RDS 資源的可用性或設定變更。 這些通知允許快速回應。 如需 RDS 事件通知的詳細資訊,請參閱 Amazon RDS 使用者指南中的使用 Amazon RDS 事件通知

嚴重性:低

應針對重要資料庫實例事件設定 RDS 事件通知訂閱

描述:此控件會檢查 Amazon RDS 事件訂閱是否存在,並啟用下列來源類型的通知。 事件類別索引鍵/值組。 DBInstance:[“maintenance”、“configuration change” 和 “failure”。 RDS 事件通知會使用 Amazon SNS,讓您知道 RDS 資源的可用性或設定變更。 這些通知允許快速回應。 如需 RDS 事件通知的詳細資訊,請參閱 Amazon RDS 使用者指南中的使用 Amazon RDS 事件通知

嚴重性:低

應針對重要資料庫參數群組事件設定 RDS 事件通知訂閱

描述:此控件會檢查 Amazon RDS 事件訂閱是否存在,並啟用下列來源類型的通知。 事件類別索引鍵/值組。 DBParameterGroup: [“configuration”,“change”]。 RDS 事件通知會使用 Amazon SNS,讓您知道 RDS 資源的可用性或設定變更。 這些通知允許快速回應。 如需 RDS 事件通知的詳細資訊,請參閱 Amazon RDS 使用者指南中的使用 Amazon RDS 事件通知

嚴重性:低

應針對重要資料庫安全組事件設定 RDS 事件通知訂用帳戶

描述:此控件會檢查 Amazon RDS 事件訂閱是否存在,並針對下列來源類型、事件類別索引鍵/值組啟用通知。DBSecurityGroup: [“configuration”,“change”,“failure”]。 RDS 事件通知會使用 Amazon SNS,讓您知道 RDS 資源的可用性或設定變更。 這些通知允許快速回應。 如需 RDS 事件通知的詳細資訊,請參閱 Amazon RDS 使用者指南中的使用 Amazon RDS 事件通知

嚴重性:低

應啟用 API 閘道 REST 和 WebSocket API 記錄

描述:此控件會檢查 Amazon API 閘道 REST 或 WebSocket API 的所有階段是否已啟用記錄。 如果未針對階段的所有方法啟用記錄,或記錄層級不是 ERROR 或 INFO,控件就會失敗。 API 閘道 REST 或 WebSocket API 階段應該已啟用相關的記錄。 API 閘道 REST 和 WebSocket API 執行記錄提供對 API 閘道 REST 和 WebSocket API 階段提出的要求詳細記錄。 這些階段包括 API 整合後端回應、Lambda 授權者回應,以及 AWS 整合端點的 requestId。

嚴重性:中

API 閘道 REST API 快取數據應該在待用時加密

描述:此控件會檢查已啟用快取之 API 閘道 REST API 階段中的所有方法是否已加密。 如果 API 閘道 REST API 階段中的任何方法設定為快取且快取未加密,控制件就會失敗。 加密待用數據可降低使用者未向 AWS 驗證之磁碟上所儲存數據的風險。 它會新增另一組訪問控制,以限制未經授權的使用者存取數據的能力。 例如,需要 API 許可權才能解密數據,才能讀取數據。 API 閘道 REST API 快取應以待用加密,以增加一層安全性。

嚴重性:中

API 閘道 REST API 階段應設定為使用 SSL 憑證進行後端驗證

描述:此控件會檢查 Amazon API 閘道 REST API 階段是否已設定 SSL 憑證。 後端系統使用這些憑證來驗證傳入要求是否來自 API 閘道。 API 閘道 REST API 階段應設定 SSL 憑證,以允許後端系統驗證來自 API 閘道的要求。

嚴重性:中

API 閘道 REST API 階段應已啟用 AWS X 光追蹤

描述:此控件會檢查 AWS X-Ray 作用中追蹤是否為 Amazon API 閘道 REST API 階段啟用。 X-Ray 主動追蹤可讓您更快速地響應基礎結構中的效能變更。 效能的變更可能會導致 API 的可用性不足。 X-Ray 主動追蹤提供即時計量,可透過您的 API 閘道 REST API 作業和連線服務流動的使用者要求。

嚴重性:低

API 閘道應該與 AWS WAF Web ACL 相關聯

描述:此控件會檢查 API 閘道階段是否使用 AWS WAF Web 存取控制清單(ACL)。 如果 AWS WAF Web ACL 未連結至 REST API 閘道階段,此控制件就會失敗。 AWS WAF 是 Web 應用程式防火牆,可協助保護 Web 應用程式和 API 免受攻擊。 它可讓您設定 ACL,這是一組規則,可根據您定義的可自定義 Web 安全性規則和條件來允許、封鎖或計算 Web 要求。 請確定您的 API 閘道階段與 AWS WAF Web ACL 相關聯,以協助防止惡意攻擊。

嚴重性:中

應啟用應用程式和傳統Load Balancer記錄

描述:此控件會檢查應用程式 Load Balancer 和傳統 Load Balancer 是否已啟用記錄。 如果 access_logs.s3.enabled 為 false,則控件會失敗。 彈性負載平衡提供存取記錄,可擷取傳送至負載平衡器之要求的詳細資訊。 每個記錄都包含資訊,例如收到要求的時間、用戶端的IP位址、延遲、要求路徑和伺服器回應。 您可以使用這些存取記錄來分析流量模式,並針對問題進行疑難解答。 若要深入瞭解,請參閱 傳統Load Balancer使用者指南中的傳統Load Balancer 存取記錄。

嚴重性:中

附加的 EBS 磁碟區應以待用加密

描述:此控件會檢查處於附加狀態的 EBS 磁碟區是否已加密。 若要通過這項檢查,EBS 磁碟區必須使用並加密。 如果未附加 EBS 磁碟區,則不會進行這項檢查。 若要在 EBS 磁碟區中新增敏感數據的安全性層,您應該啟用待用 EBS 加密。 Amazon EBS 加密為您的 EBS 資源提供簡單的加密解決方案,不需要您建置、維護及保護您自己的密鑰管理基礎結構。 它會在建立加密的磁碟區和快照集時,使用 AWS KMS 客戶主要金鑰 (CMK)。 若要深入瞭解 Amazon EBS 加密,請參閱 適用於 Linux 實例的 Amazon EC2 使用者指南中的 Amazon EBS 加密

嚴重性:中

AWS 資料移轉服務 複寫實例不應為公用

描述:若要保護您的復寫實例免於威脅。 私人復寫實例應該具有私人IP位址,您無法在複寫網路外部存取。 當來源和目標資料庫位於相同網路時,複寫實例應該有私人IP位址,而且網路會使用 VPN、AWS Direct 連線 或 VPN 對等互連連線到複寫實例的 VPN。 您也應該確保 AWS DMS 實例設定的存取權僅限於只有授權的使用者。 若要這樣做,請限制使用者的 IAM 許可權,以修改 AWS DMS 設定和資源。

嚴重性:高

傳統Load Balancer接聽程式應設定為 HTTPS 或 TLS 終止

描述:此控件會檢查您的傳統 Load Balancer 接聽程式是否已使用 HTTPS 或 TLS 通訊協議來設定前端(用戶端對負載平衡器)連線。 如果傳統Load Balancer有接聽程式,則控件適用。 如果您的傳統 Load Balancer 未設定接聽程式,則控件不會報告任何結果。 如果傳統Load Balancer接聽程式是針對前端連線使用TLS或 HTTPS 設定,控件就會通過。 如果接聽程式未針對前端連線設定 TLS 或 HTTPS,控件就會失敗。 開始使用負載平衡器之前,您必須先新增一或多個接聽程式。 接聽程式是使用已設定的通訊協定和埠來檢查連線要求的程式。 接聽程式可以同時支援 HTTP 和 HTTPS/TLS 通訊協定。 您應該一律使用 HTTPS 或 TLS 接聽程式,讓負載平衡器在傳輸中執行加密和解密的工作。

嚴重性:中

傳統Load Balancer應該已啟用連線清空

描述:此控件會檢查傳統Load Balancer是否已啟用連線清空。 在傳統 Load Balancer 上啟用連線清空,可確保負載平衡器會停止將要求傳送至取消註冊或狀況不良的實例。 它會讓現有的連線保持開啟。 這適用於自動調整群組中的實例,以確保連線不會突然中斷。

嚴重性:中

CloudFront 散發套件應已啟用 AWS WAF

描述:此控件會檢查 CloudFront 散發套件是否與 AWS WAF 或 AWS WAFv2 Web ACL 相關聯。 如果散發與 Web ACL 沒有關聯,控制件就會失敗。 AWS WAF 是 Web 應用程式防火牆,可協助保護 Web 應用程式和 API 免受攻擊。 它可讓您根據您定義的可自定義 Web 安全性規則和條件,設定一組稱為 Web 存取控制清單(Web ACL)的規則,允許、封鎖或計算 Web 要求。 請確定您的 CloudFront 散發套件與 AWS WAF Web ACL 相關聯,以協助防止其遭受惡意攻擊。

嚴重性:中

CloudFront 散發套件應該已啟用記錄功能

描述:此控件會檢查是否在 CloudFront 散發套件上啟用伺服器存取記錄。 如果未針對散發啟用存取記錄,控件就會失敗。 CloudFront 存取記錄提供有關 CloudFront 所接收之每個使用者要求的詳細資訊。 每個記錄檔都包含收到要求的日期和時間、提出要求的查看器IP位址、要求的來源,以及來自查看器的要求埠號碼等資訊。 這些記錄適用於安全性與存取稽核和鑑識調查等應用程式。 如需如何分析存取記錄的詳細資訊,請參閱 Amazon Athena 使用者指南中的查詢 Amazon CloudFront 記錄。

嚴重性:中

CloudFront 散發套件應要求傳輸中的加密

描述:此控件會檢查 Amazon CloudFront 散發套件是否需要檢視者直接使用 HTTPS,還是使用重新導向。 如果 ViewerProtocolPolicy 設定為 defaultCacheBehavior 或 cacheBehaviors 的 allow-all,控件就會失敗。 HTTPS (TLS) 可用來協助防止潛在的攻擊者使用中間人或類似的攻擊來竊聽或操作網路流量。 只允許透過 HTTPS (TLS) 的加密連線。 加密傳輸中的數據可能會影響效能。 您應該使用這項功能來測試應用程式,以瞭解效能配置檔和 TLS 的影響。

嚴重性:中

CloudTrail 記錄應該使用 KMS CMK 加密待用記錄

描述:建議設定 CloudTrail 以使用 SSE-KMS。 將 CloudTrail 設定為使用 SSE-KMS 可提供更多記錄數據的機密性控制,因為指定的用戶必須具有對應記錄貯體上的 S3 讀取許可權,而且必須由 CMK 原則授與解密許可權。

嚴重性:中

在傳輸中應加密 Amazon Redshift 叢集的 連線

描述:此控件會檢查與 Amazon Redshift 叢集的連線是否需要在傳輸中使用加密。 如果 Amazon Redshift 叢集參數require_SSL未設定為 1,檢查就會失敗。 TLS 可用來協助防止潛在的攻擊者使用中間人或類似的攻擊來竊聽或操作網路流量。 應該只允許透過 TLS 的加密連線。 加密傳輸中的數據可能會影響效能。 您應該使用這項功能來測試應用程式,以瞭解效能配置檔和 TLS 的影響。

嚴重性:中

使用 TLS 1.2 加密 Elasticsearch 網域 連線

描述:此控件會檢查是否需要使用 TLS 1.2 連線到 Elasticsearch 網域。 如果 Elasticsearch 網域 TLSSecurityPolicy 不是 Policy-Min-TLS-1-2-2019-07,則檢查會失敗。 HTTPS (TLS) 可用來協助防止潛在的攻擊者使用中間人或類似的攻擊來竊聽或操作網路流量。 只允許透過 HTTPS (TLS) 的加密連線。 加密傳輸中的數據可能會影響效能。 您應該使用這項功能來測試應用程式,以瞭解效能配置檔和 TLS 的影響。 TLS 1.2 提供數個舊版 TLS 的安全性增強功能。

嚴重性:中

DynamoDB 資料表應該已啟用時間點復原

描述:此控件會檢查 Amazon DynamoDB 數據表是否已啟用時間點復原(PITR)。 備份可協助您更快速地從安全性事件復原。 它們也會強化系統的復原能力。 DynamoDB 時間點復原會將 DynamoDB 數據表的備份自動化。 這可減少從意外刪除或寫入作業復原的時間。 已啟用 PITR 的 DynamoDB 資料表可以還原到過去 35 天內的任何時間點。

嚴重性:中

應啟用 EBS 預設加密

描述:此控件會檢查 Amazon Elastic Block Store(Amazon EBS) 預設是否啟用帳戶層級加密。 如果未啟用帳戶層級加密,控件就會失敗。 針對您的帳戶啟用加密時,Amazon EBS 磁碟區和快照集復本會在待用時加密。 這會為您的數據新增另一層保護。 如需詳細資訊,請參閱 Linux 實例的 Amazon EC2 使用者指南中的預設 加密。 請注意,下列實例類型不支援加密:R1、C1 和 M1。

嚴重性:中

彈性 Beanstalk 環境應該已啟用增強的健康情況報告

描述:此控件會檢查是否已為您的 AWS Elastic Beanstalk 環境啟用增強的健康情況報告。 彈性的 Beanstalk 增強健康情況報告可讓您更快速地響應基礎結構健康情況的變更。 這些變更可能會導致應用程式的可用性不足。 彈性的 Beanstalk 增強健康情況報告提供狀態描述元,可測量已識別問題的嚴重性,並找出可能調查的原因。 Elastic Beanstalk 健康情況代理程式包含在支援的 Amazon Machine Images (AMIS)中,會評估環境 EC2 實例的記錄和計量。

嚴重性:低

應啟用彈性 Beanstalk 受控平臺更新

描述:此控件會檢查是否已針對 Elastic Beanstalk 環境啟用受控平臺更新。 啟用受控平臺更新可確保已安裝環境的最新可用平臺修正、更新和功能。 讓修補程式安裝保持最新狀態是保護系統的重要步驟。

嚴重性:高

彈性負載平衡器不應在90天內過期或過期 ACM 憑證。

描述:此檢查會識別使用 ACM 憑證在 90 天內過期或過期的彈性負載平衡器 (ELB)。 AWS 憑證管理員 (ACM) 是布建、管理及部署伺服器憑證的慣用工具。 透過 ACM,您可以要求憑證,或將現有的 ACM 或外部憑證部署到 AWS 資源。 最佳做法是建議重新匯入過期/過期的憑證,同時保留原始憑證的 ELB 關聯。

嚴重性:高

應啟用 Elasticsearch 網域錯誤記錄至 CloudWatch Logs

描述:此控件會檢查 Elasticsearch 網域是否已設定為將錯誤記錄傳送至 CloudWatch 記錄。 您應該啟用 Elasticsearch 網域的錯誤記錄,並將這些記錄傳送至 CloudWatch 記錄,以取得保留和回應。 網域錯誤記錄可協助安全性和存取稽核,並可協助診斷可用性問題。

嚴重性:中

Elasticsearch 網域應至少設定三個專用主要節點

描述:此控件會檢查 Elasticsearch 網域是否已設定至少三個專用主要節點。 如果網域不使用專用主要節點,此控件就會失敗。 如果 Elasticsearch 網域有五個專用的主要節點,此控件就會通過。 不過,使用三個以上的主要節點可能不需要降低可用性風險,而且會產生更多成本。 Elasticsearch 網域至少需要三個專用主要節點,以提供高可用性和容錯。 專用主要節點資源在數據節點藍/綠部署期間可能會變得緊張,因為有更多的節點需要管理。 部署具有至少三個專用主要節點的 Elasticsearch 網域,可確保節點失敗時有足夠的主要節點資源容量和叢集作業。

嚴重性:中

Elasticsearch 網域應該至少有三個數據節點

描述:此控件會檢查 Elasticsearch 網域是否已設定至少三個數據節點,而 zoneAwarenessEnabled 是否為 true。 Elasticsearch 網域至少需要三個數據節點,以提供高可用性和容錯。 部署具有至少三個數據節點的 Elasticsearch 網域可確保節點失敗時的叢集作業。

嚴重性:中

Elasticsearch 網域應該已啟用稽核記錄

描述:此控件會檢查 Elasticsearch 網域是否已啟用稽核記錄。 如果 Elasticsearch 網域未啟用稽核記錄,此控件就會失敗。 稽核記錄具有高度自定義性。 它們可讓您追蹤 Elasticsearch 叢集上的用戶活動,包括驗證成功和失敗、OpenSearch 的要求、索引變更,以及傳入的搜尋查詢。

嚴重性:中

應針對 RDS DB 實例和叢集設定增強監視

描述:此控件會檢查是否已為您的 RDS DB 實例啟用增強監視。 在 Amazon RDS 中,增強式監視可讓您更快速地響應基礎結構中的效能變更。 這些效能變更可能會導致數據的可用性不足。 增強型監視提供 RDS DB 實例執行之作業系統的即時計量。 實例上已安裝代理程式。 代理程式可以比 Hypervisor 層更準確地取得計量。 當您想要查看 DB 實例上的不同進程或線程如何使用 CPU 時,增強的監視計量很有用。 如需詳細資訊,請參閱 Amazon RDS 使用者指南中的增強式監視

嚴重性:低

確定已啟用客戶建立 CMK 的輪替

描述:AWS 金鑰管理服務 (KMS) 可讓客戶輪替支援密鑰,這是儲存在 KMS 內,並系結至客戶建立客戶主要密鑰金鑰 (CMK) 金鑰標識碼的金鑰數據。 這是用來執行加密和解密等密碼編譯作業的備份密鑰。 自動化金鑰輪替目前會保留所有先前的備份金鑰,以便以透明方式解密加密的數據。 建議啟用 CMK 金鑰輪替。 輪替加密金鑰有助於降低遭入侵金鑰的潛在影響,因為使用新密鑰加密的數據無法使用可能已公開的先前密鑰來存取。

嚴重性:中

確定 CloudTrail S3 貯體上已啟用 S3 貯體存取記錄

描述:S3 貯體存取記錄會產生包含存取記錄的記錄,確保針對對 S3 貯體提出的每個要求在 CloudTrail S3 貯體上啟用 S3 貯體存取記錄。 存取記錄檔記錄包含要求的詳細數據,例如要求類型、要求中所指定的資源,以及處理要求的時間和日期。 建議您在 CloudTrail S3 貯體上啟用貯體存取記錄。 藉由在目標 S3 貯體上啟用 S3 貯體記錄,就可以擷取所有可能會影響目標貯體內物件的事件。 設定要放在個別貯體中的記錄可讓您存取記錄資訊,這在安全性和事件回應工作流程中很有用。

嚴重性:低

確定用來儲存 CloudTrail 記錄的 S3 貯體無法公開存取

描述:CloudTrail 會記錄 AWS 帳戶中每個 API 呼叫的記錄。 這些記錄檔會儲存在 S3 貯體中。 建議將貯體原則或訪問控制清單(ACL)套用至 CloudTrail 記錄的 S3 貯體,以防止公用存取 CloudTrail 記錄。 允許公用存取 CloudTrail 記錄內容,可能有助於攻擊者找出受影響帳戶使用或設定中的弱點。

嚴重性:高

IAM 不應該有過期的 SSL/TLS 憑證

描述:此檢查會識別過期的 SSL/TLS 憑證。 若要在 AWS 中啟用網站或應用程式的 HTTPS 連線,您需要 SSL/TLS 伺服器證書。 您可以使用 ACM 或 IAM 來儲存及部署伺服器證書。 拿掉過期的 SSL/TLS 憑證可消除將無效憑證意外部署到 AWS Elastic Load Balancer (ELB) 等資源的風險,這可能會損害 ELB 背後的應用程式/網站的信譽。 如果 AWS IAM 中儲存了任何過期的 SSL/TLS 憑證,這項檢查會產生警示。 最佳做法是建議刪除過期的憑證。

嚴重性:高

匯入的 ACM 憑證應該在指定的時段後更新

描述:此控件會檢查您帳戶中的 ACM 憑證是否在 30 天內標示為到期日。 它會檢查 AWS 憑證管理員所提供的匯入憑證和憑證。 ACM 可以自動更新使用 DNS 驗證的憑證。 對於使用電子郵件驗證的憑證,您必須回應網域驗證電子郵件。 ACM 也不會自動更新您匯入的憑證。 您必須手動更新匯入的憑證。 如需 ACM 憑證受控更新的詳細資訊,請參閱 AWS 憑證管理員使用者指南中的 ACM 憑證 受控更新。

嚴重性:中

應調查帳戶中過度布建的身分識別,以減少許可權爬行索引 (PCI)

描述:應調查帳戶中過度布建的身分識別,以減少許可權爬行索引 (PCI) 並保護您的基礎結構。 藉由移除未使用的高風險許可權指派來減少PCI。 高PCI反映與身分識別相關聯的風險,其許可權超過其一般或必要使用量。

嚴重性:中

應啟用 RDS 自動次要版本升級

描述:此控件會檢查 RDS 資料庫實例是否已啟用自動次要版本升級。 啟用自動次要版本升級可確保已安裝關係資料庫管理系統 (RDBMS) 的最新次要版本更新。 這些升級可能包括安全性修補程式和錯誤修正。 讓修補程式安裝保持最新狀態是保護系統的重要步驟。

嚴重性:高

RDS 叢集快照集和資料庫快照集應該在待用時加密

描述:此控件會檢查 RDS DB 快照集是否已加密。 此控件適用於 RDS DB 實例。 不過,它也可以針對極光 DB 實例、Neptune DB 實例和 Amazon DocumentDB 叢集的快照集產生結果。 如果這些發現沒有用處,您可以隱藏這些結果。 加密待用數據可降低未經驗證的使用者存取儲存在磁碟上之數據的風險。 RDS 快照集中的數據應以待用加密,以增加一層安全性。

嚴重性:中

RDS 叢集應已啟用刪除保護

描述:此控件會檢查 RDS 叢集是否已啟用刪除保護。 此控件適用於 RDS DB 實例。 不過,它也可以針對極光 DB 實例、Neptune DB 實例和 Amazon DocumentDB 叢集產生結果。 如果這些發現沒有用處,您可以隱藏這些結果。 啟用叢集刪除保護是防止未經授權的實體意外刪除或刪除資料庫的另一層保護。 啟用刪除保護時,就無法刪除 RDS 叢集。 刪除要求成功之前,必須先停用刪除保護。

嚴重性:低

應針對多個 可用性區域 設定 RDS DB 叢集

描述:應針對儲存的多個數據設定 RDS DB 叢集。 部署至多個 可用性區域 可讓 可用性區域 自動化,以確保可用性區域可用性問題及定期 RDS 維護事件期間發生 ed 故障轉移的可用性。

嚴重性:中

RDS DB 叢集應設定為將標籤複製到快照集

描述:識別和清查IT資產是治理和安全性的重要層面。 您必須能夠看見所有 RDS DB 叢集,以便評估其安全性狀態,並針對潛在的弱點區域採取行動。 快照集應該以與其父 RDS 資料庫叢集相同的方式標記。 啟用此設定可確保快照集繼承其父資料庫叢集的標記。

嚴重性:低

RDS DB 實例應設定為將標籤複製到快照集

描述:此控件會檢查 RDS DB 實例是否已設定為在建立快照集時將所有標籤複製到快照集。 識別和清查 IT 資產是治理和安全性的重要層面。 您必須能夠看見所有 RDS DB 實例,以便評估其安全性狀態,並針對潛在弱點區域採取動作。 快照集應該以與其父 RDS 資料庫實例相同的方式標記。 啟用此設定可確保快照集繼承其父資料庫實例的標記。

嚴重性:低

RDS DB 實例應設定多個 可用性區域

描述:此控件會檢查 RDS DB 實例是否已啟用高可用性。 應針對多個 可用性區域 設定 RDS DB 實例(AZ)。 這可確保儲存的數據可用性。 如果可用性區域可用性和一般 RDS 維護期間發生問題,多 AZ 部署可允許自動故障轉移。

嚴重性:中

RDS DB 實例應該已啟用刪除保護

描述:此控件會檢查使用其中一個所列資料庫引擎的 RDS DB 實例是否已啟用刪除保護。 啟用實例刪除保護是防止未經授權的實體意外刪除或刪除資料庫的另一層保護。 啟用刪除保護時,就無法刪除 RDS DB 實例。 刪除要求成功之前,必須先停用刪除保護。

嚴重性:低

RDS DB 實例應該已啟用待用加密

描述:此控件會檢查您的 Amazon RDS DB 實例是否已啟用記憶體加密。 此控件適用於 RDS DB 實例。 不過,它也可以針對極光 DB 實例、Neptune DB 實例和 Amazon DocumentDB 叢集產生結果。 如果這些發現沒有用處,您可以隱藏這些結果。 若要為 RDS DB 實例中的敏感數據新增一層安全性,您應該將 RDS DB 實例設定為待用加密。 若要加密您的 RDS DB 實例和待用快照集,請為您的 RDS DB 實例啟用加密選項。 待用加密的數據包括資料庫實例的基礎記憶體、其自動備份、讀取複本和快照集。 RDS 加密的 DB 實例會使用開放式標準 AES-256 加密演算法,在裝載 RDS DB 實例的伺服器上加密您的數據。 加密數據之後,Amazon RDS 會以透明方式處理數據的存取和解密驗證,對效能的影響最小。 您不需要修改資料庫用戶端應用程式以使用加密。 Amazon RDS 加密目前適用於所有資料庫引擎和儲存類型。 Amazon RDS 加密適用於大多數 DB 實例類別。 若要瞭解不支援 Amazon RDS 加密的 DB 實例類別,請參閱 Amazon RDS 使用者指南中的加密 Amazon RDS 資源

嚴重性:中

RDS DB 實例應禁止公用存取

描述:建議您也藉由限制使用者的 IAM 許可權來修改 RDS 實例的設定和資源,以確保 RDS 實例設定的存取權僅限於授權的使用者。

嚴重性:高

RDS 快照集應禁止公用存取

描述:我們建議只允許授權的主體存取快照集並變更 Amazon RDS 組態。

嚴重性:高

拿掉未使用的秘密管理員秘密

描述:此控件會檢查您的秘密是否已在指定的天數記憶體取。 預設值是 90 天。 如果未在定義的天數記憶體取秘密,此控件就會失敗。 刪除未使用的秘密與輪替秘密一樣重要。 未使用的秘密可能會遭到其前使用者濫用,他們不再需要存取這些秘密。 此外,隨著更多用戶獲得秘密的存取權,有人可能誤判並洩露給未經授權的實體,這會增加濫用的風險。 刪除未使用的秘密有助於撤銷不再需要秘密的使用者的秘密存取權。 它也有助於降低使用秘密管理員的成本。 因此,請務必定期刪除未使用的秘密。

嚴重性:中

S3 貯體應已啟用跨區域複寫

描述:啟用 S3 跨區域複寫可確保在不同不同區域中提供多個版本的數據。 這可讓您保護您的 S3 貯體免受 DDoS 攻擊和數據損毀事件。

嚴重性:低

S3 貯體應已啟用伺服器端加密

描述:啟用伺服器端加密來保護 S3 貯體中的數據。 加密數據可防止在數據外泄時存取敏感數據。

嚴重性:中

設定自動輪替的秘密管理員秘密應該會順利輪替

描述:此控件會根據輪替排程,檢查 AWS 秘密管理員秘密是否順利輪替。 如果 RotationOccurringAsScheduledfalse,控件就會失敗。 控件不會評估未設定輪替的秘密。 秘密管理員可協助您改善組織的安全性狀態。 秘密包括資料庫認證、密碼和第三方 API 金鑰。 您可以使用秘密管理員集中儲存秘密、自動加密秘密、控制秘密的存取,以及安全地自動輪替秘密。 秘密管理員可以輪替秘密。 您可以使用輪替,將長期秘密取代為短期秘密。 輪替您的秘密會限制未經授權的使用者可以使用遭入侵秘密的時間長度。 基於這個理由,您應該經常輪替秘密。 除了設定秘密自動輪替之外,您也應該確定這些秘密會根據輪替排程順利輪替。 若要深入瞭解輪替,請參閱 AWS 秘密管理員使用者指南中的輪替 AWS 秘密管理員秘密

嚴重性:中

秘密管理員秘密應在指定的天數內輪替

描述:此控件會檢查您的秘密是否已在90天內至少輪替一次。 輪替秘密可協助您降低在 AWS 帳戶中未經授權使用秘密的風險。 範例包括資料庫認證、密碼、第三方 API 金鑰,甚至是任意文字。 如果您長時間不變更秘密,秘密更有可能遭到入侵。 隨著更多使用者存取秘密,可能會讓某人誤判並洩露給未經授權的實體。 秘密可以透過記錄和快取數據洩漏。 其可共用以進行偵錯,且在偵錯完成後不會變更或撤銷。 基於所有這些原因,秘密應該經常輪替。 您可以在 AWS 秘密管理員中設定秘密來自動輪替。 使用自動輪替,您可以將長期秘密取代為短期秘密,大幅降低入侵的風險。 安全性中樞建議您啟用秘密管理員秘密的輪替。 若要深入瞭解輪替,請參閱 AWS 秘密管理員使用者指南中的輪替 AWS 秘密管理員秘密

嚴重性:中

SNS 主題應使用 AWS KMS 加密待用

描述:此控件會檢查 SNS 主題是否使用 AWS KMS 加密待用。 加密待用數據可降低使用者未向 AWS 驗證之磁碟上所儲存數據的風險。 它也會新增另一組訪問控制,以限制未經授權的使用者存取數據的能力。 例如,需要 API 許可權才能解密數據,才能讀取數據。 SNS 主題應 以待用加密 ,以增加一層安全性。 如需詳細資訊,請參閱 Amazon Simple Notification Service 開發人員指南中的待用加密。

嚴重性:中

所有 VPN 流量記錄都應該啟用

描述:[API 流量記錄] 可讓您查看通過 HTTP 的網路流量,並可用來偵測安全性事件期間的異常流量或深入解析。

嚴重性:中

AWS IdentityAndAccess 建議

Amazon Elasticsearch Service 網域應該在一個VP中

描述:無法包含具有公用端點的網域。 注意:這不會評估以判斷公用可觸達性的大眾子網路由組態。

嚴重性:高

應限制在貯體原則中授與其他 AWS 帳戶的 Amazon S3 許可權

描述:實作最低許可權存取是降低安全性風險和錯誤或惡意意圖影響的基礎。 如果 S3 貯體原則允許從外部帳戶存取,可能會導致內部威脅或攻擊者的數據外洩。 'blacklistedactionpatterns' 參數允許成功評估 S3 貯體的規則。 參數會針對未包含在 『blacklistedactionpatterns』 列表中的動作模式,授與外部帳戶的存取權。

嚴重性:高

避免使用「根」帳戶

描述:「根」帳戶對 AWS 帳戶中的所有資源具有不受限制的存取權。 強烈建議避免使用此帳戶。 「根」帳戶是最具許可權的 AWS 帳戶。 將此帳戶的使用降至最低,並採用存取管理最低許可權原則,將降低意外變更和意外洩漏高特殊許可權認證的風險。

嚴重性:高

AWS KMS 金鑰不應意外刪除

描述:此控件會檢查 KMS 金鑰是否已排程進行刪除。 如果已排程刪除 KMS 金鑰,控制件就會失敗。 一旦刪除 KMS 金鑰,就無法復原。 如果 KMS 金鑰遭到刪除,在 KMS 金鑰下加密的數據也會永久無法復原。 如果在排程刪除的 KMS 金鑰下加密有意義的數據,請考慮解密數據,或在新的 KMS 金鑰下重新加密數據,除非您刻意執行密碼編譯清除。 當 KMS 金鑰排程進行刪除時,強制等候期間會強制允許時間在錯誤中排程刪除時反轉刪除。 默認等候期間為 30 天,但當 KMS 金鑰排程刪除時,可以縮短為 7 天。 在等候期間,可以取消排程刪除,而且不會刪除 KMS 金鑰。 如需有關刪除 KMS 金鑰的詳細資訊,請參閱 AWS 金鑰管理服務 開發人員指南中的刪除 KMS 金鑰

嚴重性:高

AWS WAF 傳統全域 Web ACL 記錄應啟用

描述:此控件會檢查是否為 AWS WAF 全域 Web ACL 啟用記錄。 如果未針對 Web ACL 啟用記錄,此控制件就會失敗。 記錄是維護全球 AWS WAF 可靠性、可用性和效能的重要部分。 這是許多組織中的商務和合規性需求,可讓您針對應用程式行為進行疑難解答。 它也提供連結至 AWS WAF 之 Web ACL 所分析之流量的詳細資訊。

嚴重性:中

CloudFront 散發套件應已設定預設根物件

描述:此控件會檢查 Amazon CloudFront 散發套件是否已設定為傳回預設根物件的特定物件。 如果 CloudFront 散發沒有設定預設根物件,控件就會失敗。 用戶有時可能會要求散發根 URL,而不是散發中的物件。 發生這種情況時,指定預設根對象可協助您避免公開 Web 散發的內容。

嚴重性:高

CloudFront 散發套件應已啟用原始來源存取身分識別

描述:此控件會檢查 Amazon S3 Origin 類型的 Amazon CloudFront 散發是否已設定 Origin Access Identity (OAI)。 如果未設定 OAI,控制件就會失敗。 CloudFront OAI 可防止使用者直接存取 S3 貯體內容。 當使用者直接存取 S3 貯體時,他們實際上會略過 CloudFront 散發,以及套用至基礎 S3 貯體內容的任何許可權。

嚴重性:中

應啟用 CloudTrail 記錄檔驗證

描述:為了確保 CloudTrail 記錄的其他完整性檢查,建議您在所有 CloudTrails 上啟用檔案驗證。

嚴重性:低

應啟用 CloudTrail

描述:AWS CloudTrail 是一項 Web 服務,可記錄您帳戶的 AWS API 呼叫,並將記錄檔傳遞給您。 並非所有服務預設都會為所有 API 和事件啟用記錄。 您應該實作 CloudTrail 以外的任何其他稽核線索,並檢閱 CloudTrail 支援服務和整合中每個服務的檔。

嚴重性:高

CloudTrail 軌跡應該與 CloudWatch 記錄整合

描述:除了擷取指定 S3 貯體內的 CloudTrail 記錄以進行長期分析之外,還可以藉由設定 CloudTrail 將記錄傳送至 CloudWatch Logs 來執行即時分析。 針對帳戶中所有區域啟用的追蹤,CloudTrail 會將記錄檔從所有區域傳送至 CloudWatch Logs 記錄群組。 建議將 CloudTrail 記錄傳送至 CloudWatch 記錄,以確保 AWS 帳戶活動已擷取、監視及適當警示。 將 CloudTrail 記錄傳送至 CloudWatch 記錄有助於根據使用者、API、資源和 IP 位址進行即時和歷史活動記錄,並有機會建立異常或敏感度帳戶活動的警示和通知。

嚴重性:低

應啟用資料庫記錄

描述:此控件會檢查 Amazon RDS 的下列記錄是否已啟用並傳送至 CloudWatch Logs:

  • Oracle:(警示、稽核、追蹤、接聽程式)
  • PostgreSQL: (Postgresql, 升級)
  • MySQL: (Audit, Error, General, SlowQuery)
  • MariaDB: (Audit, Error, General, SlowQuery)
  • SQL Server: (錯誤,代理程式)
  • 極光:(稽核、錯誤、一般、慢查詢)
  • 極光-MySQL:(稽核、錯誤、一般、SlowQuery)
  • 極光-PostgreSQL:(Postgresql,升級)。 RDS 資料庫應該已啟用相關的記錄。 資料庫記錄提供對 RDS 提出要求的詳細記錄。 資料庫記錄可協助安全性和存取稽核,並有助於診斷可用性問題。

嚴重性:中

停用 Amazon SageMaker 筆記本實例的直接因特網存取

描述:SageMaker 筆記本實例應停用直接因特網存取。 這會檢查筆記本實例是否停用 『DirectInternetAccess』 字段。 您的實例應設定為使用網吧,而預設設定應該是 [停用 - 透過網吧存取因特網]。 若要啟用從筆記本定型或裝載模型的因特網存取,請確定您的 VPN 具有 NAT 閘道,且您的安全組允許輸出連線。 請確定 SageMaker 設定的存取權僅限於授權的使用者,並限制使用者的 IAM 許可權來修改 SageMaker 設定和資源。

嚴重性:高

請勿在初始使用者設定期間為具有控制台密碼的所有 IAM 用戶設定存取密鑰

描述:AWS 控制台預設為啟用建立存取金鑰的複選框。 這會導致產生許多不必要的存取金鑰。 除了不必要的認證之外,它也會在稽核和輪替這些密鑰時產生不必要的管理工作。 在使用者配置檔建立之後,要求使用者採取額外的步驟,將會更強烈地指出存取密鑰是其工作所需的 [a],並在存取密鑰建立於帳戶上,指出密鑰可能在組織某處使用。

嚴重性:中

請確定已建立支援角色,以使用 AWS 支援管理事件

描述:AWS 提供可用於事件通知和回應的支援中心,以及技術支援和客戶服務。 建立 IAM 角色,以允許授權的使用者使用 AWS 支援管理事件。 藉由實作訪問控制的最低許可權,IAM角色需要適當的 IAM 原則,才能允許支援中心存取,才能使用 AWS 支援管理事件。

嚴重性:低

確保每隔 90 天或更少輪替存取金鑰

描述:存取金鑰是由存取金鑰標識碼和秘密存取金鑰所組成,用來簽署對 AWS 提出的程式設計要求。 AWS 使用者需要自己的存取密鑰,才能使用個別 AWS 服務的 API,從 AWS 命令行介面 (AWS CLI)、Windows PowerShell 工具、AWS SDK 或直接 HTTP 呼叫進行程式設計呼叫。 建議定期輪替所有存取密鑰。 輪替存取金鑰可減少與所要使用之遭入侵或終止帳戶相關聯的存取金鑰機會視窗。 應該輪替存取金鑰,以確保無法使用遺失、破解或遭竊的舊密鑰來存取數據。

嚴重性:中

確定所有區域中都已啟用 AWS 設定

描述:AWS Config 是一項 Web 服務,可對帳戶內支援的 AWS 資源執行組態管理,並將記錄檔傳遞給您。 記錄的資訊包括組態專案(AWS 資源)、組態專案之間的關聯性(AWS 資源)、資源之間的任何組態變更。 建議在所有區域中啟用 AWS 設定。

AWS 設定所擷取的 AWS 設定專案歷程記錄可讓您進行安全性分析、資源變更追蹤和合規性稽核。

嚴重性:中

確定所有區域中都已啟用 CloudTrail

描述:AWS CloudTrail 是一項 Web 服務,可記錄您帳戶的 AWS API 呼叫,並將記錄檔傳遞給您。 記錄的資訊包括 API 呼叫者的身分識別、API 呼叫的時間、API 呼叫者的來源 IP 位址、要求參數,以及 AWS 服務傳回的回應元素。 CloudTrail 提供帳戶 AWS API 呼叫的歷程記錄,包括透過管理控制台、SDK、命令行工具和更高階 AWS 服務進行的 API 呼叫(例如 CloudFormation)。 CloudTrail 所產生的 AWS API 呼叫歷程記錄可讓您進行安全性分析、資源變更追蹤和合規性稽核。 此外:

  • 確保存在多區域追蹤可確保偵測到未使用區域中發生的非預期活動
  • 確保存在多區域記錄可確保預設會啟用「全域服務記錄」,以便擷取 AWS 全球服務上產生的事件記錄
  • 針對多重區域追蹤,確保針對所有類型的讀取/寫入所設定的管理事件,可確保記錄在AWS 帳戶中所有資源上執行的管理作業

嚴重性:高

請確定已停用 90 天或更新的未使用認證

描述:AWS IAM 使用者可以使用不同類型的認證來存取 AWS 資源,例如密碼或存取密鑰。 建議移除或停用 90 或更新天內未使用的所有認證。 停用或移除不必要的認證可減少與遭入侵或已放棄帳戶相關聯的認證使用的機會視窗。

嚴重性:中

確定 IAM 密碼原則會在 90 天內或少於 90 天內過期密碼

描述:IAM 密碼原則可能需要在指定天數之後輪替或過期密碼。 建議密碼原則在 90 天后過期密碼。 減少密碼存留期會增加針對暴力密碼破解登入嘗試的帳戶復原能力。 此外,在下列案例中需要一般密碼變更協助:

  • 有時候,密碼可能會遭竊或遭入侵,而不需要您的知識。 這可能會透過系統入侵、軟體弱點或內部威脅來發生。
  • 即使流量已加密,某些公司和政府 Web 篩選器或 Proxy 伺服器仍能夠攔截和記錄流量。
  • 許多人對許多系統使用相同的密碼,例如工作、電子郵件和個人。
  • 遭入侵的使用者工作站可能有擊鍵記錄器。

嚴重性:低

確定 IAM 密碼原則可防止重複使用密碼

描述:IAM 密碼原則可以防止相同使用者重複使用指定的密碼。 建議密碼原則防止重複使用密碼。 防止密碼重複使用會增加帳戶復原能力,以防止暴力密碼破解登入嘗試。

嚴重性:低

確定 IAM 密碼原則至少需要一個小寫字母

描述:密碼原則部分用來強制執行密碼複雜度需求。 IAM 密碼原則可用來確保密碼是由不同的字元集所組成。 建議密碼原則至少需要一個小寫字母。 設定密碼複雜度原則會增加帳戶復原能力,以防止暴力密碼破解登入嘗試。

嚴重性:中

確定 IAM 密碼原則至少需要一個數位

描述:密碼原則部分用來強制執行密碼複雜度需求。 IAM 密碼原則可用來確保密碼是由不同的字元集所組成。 建議密碼原則至少需要一個數位。 設定密碼複雜度原則會增加帳戶復原能力,以防止暴力密碼破解登入嘗試。

嚴重性:中

確定 IAM 密碼原則至少需要一個符號

描述:密碼原則部分用來強制執行密碼複雜度需求。 IAM 密碼原則可用來確保密碼是由不同的字元集所組成。 建議密碼原則至少需要一個符號。 設定密碼複雜度原則會增加帳戶復原能力,以防止暴力密碼破解登入嘗試。

嚴重性:中

確定 IAM 密碼原則至少需要一個大寫字母

描述:密碼原則部分用來強制執行密碼複雜度需求。 IAM 密碼原則可用來確保密碼是由不同的字元集所組成。 建議密碼原則至少需要一個大寫字母。 設定密碼複雜度原則會增加帳戶復原能力,以防止暴力密碼破解登入嘗試。

嚴重性:中

確定 IAM 密碼原則的長度下限為 14 或更高

描述:密碼原則部分用來強制執行密碼複雜度需求。 IAM 密碼原則可用來確保密碼至少為指定的長度。 建議密碼原則需要最小密碼長度 『14』。 設定密碼複雜度原則會增加帳戶復原能力,以防止暴力密碼破解登入嘗試。

嚴重性:中

確定已針對具有主控台密碼的所有 IAM 使用者開啟多重要素驗證 (MFA)

描述:多重要素驗證 (MFA) 會在使用者名稱和密碼之上新增額外的保護層。 啟用 MFA 時,當使用者登入 AWS 網站時,系統會提示他們輸入其使用者名稱和密碼,以及來自其 AWS MFA 裝置的驗證碼。 建議針對具有主控台密碼的所有帳戶啟用 MFA。 啟用 MFA 可為主控台存取提供更高的安全性,因為它需要驗證主體才能擁有發出時間敏感金鑰並具備認證知識的裝置。

嚴重性:中

應啟用 GuardDuty

描述:若要提供防止入侵的額外保護,您應該在 AWS 帳戶和區域上啟用 GuardDuty。 注意:GuardDuty 可能不是每個環境的完整解決方案。

嚴重性:中

應針對「根」帳戶啟用硬體 MFA

描述:根帳戶是帳戶中最具特殊許可權的使用者。 MFA 會在使用者名稱和密碼之上新增額外的保護層。 啟用 MFA 時,當使用者登入 AWS 網站時,系統會提示他們輸入使用者名稱和密碼,以及從其 AWS MFA 裝置取得驗證碼。 針對層級 2,建議您使用硬體 MFA 保護根帳戶。 硬體 MFA 的受攻擊面比虛擬 MFA 小。 例如,硬體 MFA 不會遭受虛擬 MFA 所在行動智慧型手機所引進的攻擊面。 針對許多帳戶使用硬體 MFA,許多帳戶可能會建立後勤裝置管理問題。 如果發生這種情況,請考慮選擇性地將此層級 2 建議實作到最高的安全性帳戶。 然後,您可以將層級 1 建議套用至其餘帳戶。

嚴重性:低

應針對 RDS 叢集設定 IAM 驗證

描述:此控件會檢查 RDS DB 叢集是否已啟用 IAM 資料庫驗證。 IAM 資料庫驗證允許對資料庫實例進行無密碼驗證。 驗證會使用驗證令牌。 來自資料庫的網路流量會使用 SSL 加密。 如需詳細資訊,請參閱 Amazon Aurora 使用者指南中的 IAM 資料庫驗證。

嚴重性:中

應為 RDS 實例設定 IAM 驗證

描述:此控件會檢查 RDS DB 實例是否已啟用 IAM 資料庫驗證。 IAM 資料庫驗證允許使用驗證令牌而非密碼向資料庫實例進行驗證。 來自資料庫的網路流量會使用 SSL 加密。 如需詳細資訊,請參閱 Amazon Aurora 使用者指南中的 IAM 資料庫驗證。

嚴重性:中

IAM 客戶管理的原則不應允許所有 KMS 金鑰的解密動作

描述:檢查預設版本的 IAM 客戶管理原則是否允許主體在所有資源上使用 AWS KMS 解密動作。 此控件會使用 自動化推理引擎 Zelkova 來驗證並警告您有關原則,這些原則可能會授與跨 AWS 帳戶廣泛存取秘密的許可權。 如果所有 KMS 金鑰都允許 「kms:Decrypt」 或 「kms:ReEncryptFrom」 動作,此控件就會失敗。 控件會評估附加和未連結的客戶管理原則。 它不會檢查內嵌原則或 AWS 受控原則。 透過 AWS KMS,您可以控制誰可以使用您的 KMS 金鑰,並取得加密資料的存取權。 IAM 原則會定義身分識別(使用者、群組或角色)可以在哪些資源上執行的動作。 遵循安全性最佳做法,AWS 建議您允許最低許可權。 換句話說,您應該只授與身分識別 「kms:Decrypt」 或 「kms:ReEncryptFrom」 許可權,而且只授與執行工作所需的密鑰。 否則,使用者可能會使用不適合您數據的密鑰。 使用者不需要授與所有金鑰的許可權,而是決定使用者存取加密數據所需的最小密鑰集。 然後設計原則,允許使用者只使用這些密鑰。 例如,不允許所有 KMS 金鑰的 “kms:Decrypt” 許可權。 相反地,請只在您帳戶的特定區域中的密鑰上允許 「kms:Decrypt」。。 藉由採用最低許可權原則,您可以降低數據意外洩漏的風險。

嚴重性:中

您建立的 IAM 客戶管理原則不應允許服務的通配符動作

描述:此控件會檢查您建立的 IAM 身分識別型原則是否具有 Allow 語句,以使用 * 通配符來授與任何服務上所有動作的許可權。 如果有任何原則語句包含 『Effect』: 'Allow' 與 'Action': 'Service:*',控件就會失敗。 例如,原則中的下列語句會導致找不到失敗。

'Statement': [
{
  'Sid': 'EC2-Wildcard',
  'Effect': 'Allow',
  'Action': 'ec2:*',
  'Resource': '*'
}

如果您使用 'Effect': 'Allow' 搭配 'NotAction': 'service:',控件也會失敗。在此情況下,NotAction 元素會提供 AWS 服務中所有動作的存取權,但 NotAction 中指定的動作除外。此控制件僅適用於客戶管理的 IAM 原則。它不適用於 AWS 所管理的 IAM 原則。當您將許可權指派給 AWS 服務時,請務必在 IAM 原則中設定允許的 IAM 動作範圍。您應該只將 IAM 動作限制為所需的動作。這可協助您布建最低許可權許可權。如果原則附加至可能不需要許可權的 IAM 主體,過度寬鬆的原則可能會導致許可權提升。在某些情況下,您可能想要允許具有類似前置詞的 IAM 動作,例如 DescribeFlowLogs 和 DescribeAvailabilityZones。在這些授權的情況下,您可以將後綴通配符新增至通用前置詞。例如,ec2:Describe

如果您使用前置 IAM 動作搭配後綴通配符,則此控件會通過。 例如,原則中的下列語句會產生經過的尋找。

 'Statement': [
{
  'Sid': 'EC2-Wildcard',
  'Effect': 'Allow',
  'Action': 'ec2:Describe*',
  'Resource': '*'
}

當您以這種方式分組相關的 IAM 動作時,也可以避免超過 IAM 原則大小限制。

嚴重性:低

IAM 原則應僅附加至群組或角色

描述:根據預設,IAM 使用者、群組和角色無法存取 AWS 資源。 IAM 原則是授與使用者、群組或角色許可權的方法。 建議將 IAM 原則直接套用至群組和角色,但不會套用至使用者。 在群組或角色層級指派許可權可降低隨著用戶數目增加而降低存取管理的複雜性。 減少存取管理複雜度可能會減少主體不小心接收或保留過多許可權的機會。

嚴重性:低

不應建立允許完整 「」 系統管理許可權的 IAM 原則

描述:IAM 原則是授與使用者、群組或角色許可權的方法。 建議並考慮標準安全性建議,以授與最低許可權,也就是只授與執行工作所需的許可權。 判斷使用者需要執行的動作,然後為其製作原則,讓使用者只執行這些工作,而不是允許完整的系統管理許可權。 從最低許可權集開始,並視需要授與其他許可權,而不是從過於寬鬆的許可權開始,然後稍後嘗試收緊許可權,這更安全。 提供完整的系統管理許可權,而不是限制用戶必須執行的最低許可權集,以將資源公開給潛在的垃圾動作。 應移除具有 “Effect”: “Allow” 語句的 IAM 原則,其具有 “Action”: “” over “Resource”: “” 。

嚴重性:高

IAM 主體不應該有允許所有 KMS 金鑰的解密動作的 IAM 內嵌原則

描述:檢查內嵌在IAM身分識別中的內嵌原則(角色、使用者或群組)是否允許所有 KMS 密鑰上的 AWS KMS 解密動作。 此控件會使用 自動化推理引擎 Zelkova 來驗證並警告您有關原則,這些原則可能會授與跨 AWS 帳戶廣泛存取秘密的許可權。 如果內嵌原則中所有 KMS 金鑰都允許 「kms:Decrypt」 或 「kms:ReEncryptFrom」 動作,此控件就會失敗。 透過 AWS KMS,您可以控制誰可以使用您的 KMS 金鑰,並取得加密資料的存取權。 IAM 原則會定義身分識別(使用者、群組或角色)可以在哪些資源上執行的動作。 遵循安全性最佳做法,AWS 建議您允許最低許可權。 換句話說,您應該只授與身分識別所需的許可權,以及執行工作所需的密鑰。 否則,使用者可能會使用不適合您數據的密鑰。 而不是授與所有金鑰的許可權,而是決定使用者存取加密數據所需的最小密鑰集。 然後設計原則,允許使用者只使用這些密鑰。 例如,不允許所有 KMS 金鑰的 “kms:Decrypt” 許可權。 相反地,請只在您帳戶的特定區域中的密鑰上允許它們。 藉由採用最低許可權原則,您可以降低數據意外洩漏的風險。

嚴重性:中

Lambda 函式應限制公用存取

描述:Lambda 函式資源型原則應限制公用存取。 此建議不會檢查內部主體的存取權。 請確定只有使用最低許可權資源型原則,才能存取函式的授權主體。

嚴重性:高

應為所有 IAM 用戶啟用 MFA

描述:所有 IAM 用戶都應該啟用多重要素驗證(MFA)。

嚴重性:中

應針對「根」帳戶啟用 MFA

描述:根帳戶是帳戶中最具特殊許可權的使用者。 MFA 會在使用者名稱和密碼之上新增額外的保護層。 啟用 MFA 時,當使用者登入 AWS 網站時,系統會提示他們輸入使用者名稱和密碼,以及從其 AWS MFA 裝置取得驗證碼。 當您針對根帳戶使用虛擬 MFA 時,建議使用的裝置不是個人裝置。 相反地,請使用您管理的專用行動裝置(平板電腦或手機),以保持收費和保護,不受任何個別個人裝置保護。 這會降低因裝置遺失、裝置取捨或公司不再僱用擁有裝置的個人而失去 MFA 存取權的風險。

嚴重性:低

IAM 使用者的密碼原則應具有強式設定

描述:檢查 IAM 使用者的帳戶密碼原則是否使用下列最低設定。

  • RequireUppercaseCharacters - 密碼中至少需要一個大寫字元。 (預設值 = true)
  • RequireLowercaseCharacters - 密碼中至少需要一個小寫字元。 (預設值 = true)
  • RequireNumbers - 密碼中至少需要一個數位。 (預設值 = true)
  • MinimumPasswordLength - 密碼長度下限。 (預設值 = 7 或更長)
  • PasswordReusePrevention - 允許重複使用之前的密碼數目。 (預設值 = 4)
  • MaxPasswordAge - 密碼到期前的天數。 (預設值 = 90)

嚴重性:中

根帳戶存取金鑰不應該存在

描述:根帳戶是 AWS 帳戶中最具特殊許可權的使用者。 AWS 存取金鑰會以程式設計方式存取指定的 AWS 帳戶。 建議移除與根帳戶相關聯的所有存取金鑰。 拿掉與根帳戶相關聯的存取金鑰會限制帳戶遭入侵的向量。 此外,移除根存取密鑰會鼓勵建立和使用最低許可權的角色型帳戶。

嚴重性:高

應啟用 S3 [封鎖公用存取] 設定

描述:為 S3 貯體啟用 [封鎖公用存取] 設定有助於防止敏感數據外泄,並保護您的貯體免於惡意動作。

嚴重性:中

S3 [封鎖公用存取] 設定應在貯體層級啟用

描述:此控件會檢查是否已套用 S3 貯體層級的公用存取區塊。 如果下列任何設定設為 false,此控制件就會失敗:

  • ignorePublicAcls
  • blockPublicPolicy
  • blockPublicAcls
  • restrictPublicBuckets 封鎖 S3 貯體層級的公用存取提供控件,以確保對象永遠不會有公用存取權。 公用存取權會透過訪問控制清單(ACL)、貯體原則或兩者授與貯體和物件。 除非您打算公開存取您的 S3 貯體,否則您應該設定貯體層級 Amazon S3 封鎖公用存取功能。

嚴重性:高

應移除 S3 貯體公用讀取許可權

描述:移除 S3 貯體的公用讀取許可權有助於保護您的數據,並防止數據外洩。

嚴重性:高

應移除 S3 貯體公用寫入許可權

描述:允許對 S3 貯體進行公用寫入存取,可能會讓您容易受到惡意動作的攻擊,例如以您的代價儲存數據、加密您的檔案進行贖金,或使用貯體操作惡意代碼。

嚴重性:高

秘密管理員秘密應該已啟用自動輪替

描述:此控件會檢查儲存在 AWS 秘密管理員中的秘密是否設定為自動輪替。 秘密管理員可協助您改善組織的安全性狀態。 秘密包括資料庫認證、密碼和第三方 API 金鑰。 您可以使用秘密管理員集中儲存秘密、自動加密秘密、控制秘密的存取,以及安全地自動輪替秘密。 秘密管理員可以輪替秘密。 您可以使用輪替,將長期秘密取代為短期秘密。 輪替您的秘密會限制未經授權的使用者可以使用遭入侵秘密的時間長度。 基於這個理由,您應該經常輪替秘密。 若要深入瞭解輪替,請參閱 AWS 秘密管理員使用者指南中的輪替 AWS 秘密管理員秘密

嚴重性:中

停止的 EC2 實例應該在指定的時間週期之後移除

描述:此控件會檢查是否已停止任何 EC2 實例超過允許的天數。 EC2 實例會失敗,此檢查是否已停止超過允許的最長時間週期,預設為 30 天。 失敗的發現表示 EC2 實例在長時間未執行。 這會建立安全性風險,因為 EC2 實例並未主動維護(分析、修補、更新)。 如果稍後啟動,缺少適當的維護可能會導致AWS環境中發生非預期的問題。 若要在一段時間內以非執行狀態安全地維護EC2實例,請定期啟動它以進行維護,然後在維護之後停止。 在理想情況下,這是自動化程式。

嚴重性:中

AWS 過度佈建的身分識別應該只有必要的許可權 (預覽)

描述:過度布建的作用中身分識別是可存取他們尚未使用之許可權的身分識別。 過度布建的作用中身分識別,特別是針對已定義動作和責任的非人類帳戶,可能會增加使用者、金鑰或資源入侵時的高射半徑。 拿掉不需要的許可權,並建立檢閱程式以達到最低許可權。

嚴重性:中

您的 AWS 環境中未使用的身分識別應移除 (預覽)

描述:非使用中的身分識別是過去90天內未對任何資源執行任何動作的人和非人類實體。 AWS 帳戶中具有高風險許可權的非作用中 IAM 身分識別,如果保持一般狀態,讓組織能夠存取認證誤用或惡意探索,可能會容易受到攻擊。 主動偵測和回應未使用的身分識別,可協助您防止未經授權的實體取得 AWS 資源的存取權。

嚴重性:中

AWS 網路建議

Amazon EC2 應設定為使用VP 端點

描述:此控件會檢查 Amazon EC2 的服務端點是否針對每個VP 建立。 如果目前沒有針對 Amazon EC2 服務建立的VP 端點,控件就會失敗。 若要改善您的VP的安全性狀態,您可以將 Amazon EC2 設定為使用介面的VP端點。 介面端點是由 AWS PrivateLink 提供技術支援,此技術可讓您私下存取 Amazon EC2 API 作業。 它會限制您於 AMAZON 與 Amazon EC2 之間的所有網路流量至 Amazon 網路。 因為端點僅支援在同一個區域內,因此您無法在不同的區域中建立一個端點與某個服務之間的端點。 這可防止非預期的 Amazon EC2 API 呼叫其他區域。 若要深入瞭解如何建立適用於 Amazon EC2 的VP 端點,請參閱 Amazon EC2 和適用於 Linux 實例的 Amazon EC2 使用者指南中的介面VP 端點

嚴重性:中

Amazon ECS 服務不應該自動指派公用IP位址

描述:公用IP位址是可從因特網連線的IP位址。 如果您使用公用IP位址啟動 Amazon ECS 實例,則您的 Amazon ECS 實例可從因特網連線。 Amazon ECS 服務不應公開存取,因為這可能會允許非預期的容器應用程式伺服器存取。

嚴重性:高

Amazon EMR 叢集主要節點不應該有公用IP位址

描述:此控件會檢查 Amazon EMR 叢集上的主要節點是否有公用 IP 位址。 如果主要節點具有與其任何實例相關聯的公用IP位址,控件就會失敗。 公用IP位址會指定於實例之 NetworkInterfaces 組態的 PublicIp 字段中。 此控件只會檢查處於 RUNNING 或 WAITING 狀態的 Amazon EMR 叢集。

嚴重性:高

Amazon Redshift 叢集應使用增強式的VP 路由

描述:此控件會檢查 Amazon Redshift 叢集是否已啟用 EnhancedVpcRouting。 增強的VP路由會強制叢集和數據存放庫之間的所有 COPY 和 UNLOAD 流量透過您的VP。 然後,您可以使用安全組和網路存取控制清單等VP功能來保護網路流量。 您也可以使用VP流量記錄來監視網路流量。

嚴重性:高

應用程式負載平衡器應設定為將所有 HTTP 要求重新導向至 HTTPS

描述:若要強制執行傳輸中的加密,您應該搭配ApplicationLoad Balancer使用重新導向動作,將用戶端 HTTP 要求重新導向至埠 443 上的 HTTPS 要求。

嚴重性:中

應用程式負載平衡器應設定為卸除 HTTP 標頭

描述:此控件會評估 AWS 應用程式負載平衡器 (ALB),以確保它們已設定為卸除無效的 HTTP 標頭。 如果 routing.http.drop_invalid_header_fields.enabled 的值設定為 false,控件就會失敗。 根據預設,ALB 不會設定為卸除無效的 HTTP 標頭值。 拿掉這些標頭值可防止 HTTP 異步攻擊。

嚴重性:中

將 Lambda 函式設定為一個 LAMBDA

描述:此控件會檢查 Lambda 函式是否在一個VP中。 它不會評估以判斷公用可觸達性之 VM 子網路由組態。 請注意,如果在帳戶中找到Lambda@Edge,則此控件會產生失敗的結果。 若要防止這些結果,您可以停用此控件。

嚴重性:低

EC2 實例不應該有公用IP位址

描述:此控件會檢查 EC2 實例是否有公用 IP 位址。 如果 EC2 實例組態專案中有 「publicIp」 字段,控件就會失敗。 此控制件僅適用於 IPv4 位址。 公用 IPv4 位址是可從因特網連線的 IP 位址。 如果您使用公用IP位址啟動實例,則可以從因特網連線到EC2實例。 私人 IPv4 位址是無法從因特網連線的 IP 位址。 您可以使用私人 IPv4 位址,在相同網或連線專用網中的 EC2 實例之間進行通訊。 IPv6 位址是全域唯一的,因此可從因特網連線。 不過,根據預設,所有子網都會將 IPv6 尋址屬性設定為 false。 如需 IPv6 的詳細資訊,請參閱 AmazonVP 使用者指南中的 IP 位址。 如果您有合法的使用案例來維護具有公用IP位址的EC2實例,則可以隱藏此控件的結果。 如需前端架構選項的詳細資訊,請參閱 AWS 架構部落格此為我的架構系列

嚴重性:高

EC2 實例不應該使用多個 ENIS

描述:此控件會檢查 EC2 實例是否使用多個彈性網路介面 (ENIs) 或彈性網狀架構配接器 (EFA)。 如果使用單一網路適配器,此控件就會通過。 控制項包含選擇性參數清單,以識別允許的 ENIS。 多個 ENIS 可能會造成雙重裝載實例,這表示具有多個子網的實例。 這可增加網路安全性複雜性,並引進非預期的網路路徑和存取。

嚴重性:低

EC2 實例應該使用IMDSv2

描述:此控件會檢查您的 EC2 實例元數據版本是否已設定為實例元數據服務第 2 版(IMDSv2)。 如果 IMDSv2 的 「HttpTokens」 設定為 「required」,控件就會通過。 如果 「HttpTokens」 設定為 「optional」,控件就會失敗。 您可以使用實例元數據來設定或管理執行中的實例。 IMDS 可讓您存取暫時且經常輪替的認證。 這些認證可移除硬式程式碼或以手動或程序設計方式將敏感性認證散發至實例的需求。 IMDS 會附加至每個 EC2 實例的本機。 它會在 169.254.169.254 的特殊「連結本機」IP 位址上執行。 此IP位址只能由實例上執行的軟體存取。 IMDS 第 2 版會為下列類型的弱點新增新的保護。 這些弱點可用來嘗試存取 IMDS。

  • 開啟網站應用程式防火牆
  • 開啟反向 Proxy
  • 伺服器端要求偽造 (SSRF) 弱點
  • 開啟第 3 層防火牆和網路位址轉換 (NAT) 安全性中樞,建議您使用 IMDSv2 設定 EC2 實例。

嚴重性:高

EC2 子網不應該自動指派公用IP位址

描述:此控件會檢查 Amazon Virtual Private Cloud (Amazon AMAZON) 子網中的公用 IP 指派是否將 “MapPublicIpOnLaunch” 設定為 “FALSE”。 如果旗標設定為 「FALSE」,控件就會通過。 所有子網都有一個屬性,可決定在子網中建立的網路介面是否會自動接收公用 IPv4 位址。 啟動至已啟用此屬性之子網的實例已指派給其主要網路介面的公用IP位址。

嚴重性:中

確定 AWS 組態變更有記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議您建立計量篩選和警示,以偵測 CloudTrail 設定的變更。 監視 AWS 組態的變更有助於確保 AWS 帳戶內設定專案的持續可見度。

嚴重性:低

確保 AWS 管理主控台驗證失敗的記錄計量篩選和警示存在

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議針對失敗的控制台驗證嘗試建立計量篩選和警示。 監視失敗的主控台登入可能會減少偵測嘗試暴力密碼破解認證的嘗試,這可能提供指標,例如來源IP,可用於其他事件相互關聯。

嚴重性:低

確保網路 存取控制 清單變更的記錄計量篩選和警示存在 (NACL)

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 NACL 會作為無狀態封包篩選條件,以控制在時間內子網的輸入和輸出流量。 建議針對對 NACL 所做的變更建立計量篩選和警示。 監視 NACL 的變更有助於確保 AWS 資源和服務不會意外公開。

嚴重性:低

確保網路閘道的變更存在記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 需要網路閘道,才能將流量傳送/接收到位於VP外部的目的地。 建議您針對網路閘道的變更建立計量篩選和警示。 監視網路閘道的變更可協助確保所有輸入/輸出流量都會透過受控制的路徑周遊於NAT邊界。

嚴重性:低

確定 CloudTrail 設定變更有記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議您建立計量篩選和警示,以偵測 CloudTrail 設定的變更。

監視 CloudTrail 設定的變更有助於確保持續能看見 AWS 帳戶中執行的活動。

嚴重性:低

確定記錄計量篩選和警示存在,以停用或排程刪除客戶建立的 CMK

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議為客戶建立的 CMK 建立計量篩選和警示,其已將狀態變更為停用或排程刪除。 已停用或刪除金鑰加密的數據將無法再存取。

嚴重性:低

確保 IAM 原則變更的記錄計量篩選和警示存在

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議對身分識別和存取管理 (IAM) 原則進行計量篩選和警示的變更。 監視 IAM 原則的變更有助於確保驗證和授權控制保持不變。

嚴重性:低

確保沒有 MFA 的 Management Console 登入有記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議針對不受多重要素驗證 (MFA) 保護的主控台登入建立計量篩選和警示。 監視單一因素主控台登入會增加對不受 MFA 保護的帳戶的可見度。

嚴重性:低

確定路由表變更有記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 路由表可用來路由子網與網路閘道之間的網路流量。 建議針對路由表的變更建立計量篩選和警示。 監視路由表的變更有助於確保所有 TCP 流量都流經預期的路徑。

嚴重性:低

確定 S3 貯體原則變更有記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議針對 S3 貯體原則的變更建立計量篩選和警示。 監視 S3 貯體原則的變更可能會縮短偵測和更正敏感性 S3 貯體上寬鬆原則的時間。

嚴重性:低

確定安全組變更有記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 安全組是可設定狀態的封包篩選條件,可控制在一個時間內的輸入和輸出流量。 建議對安全組建立計量篩選和警示變更。 監視安全組的變更有助於確保不會意外公開資源和服務。

嚴重性:低

確保未經授權的 API 呼叫存在記錄計量篩選和警示

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議針對未經授權的 API 呼叫建立計量篩選和警示。 監視未經授權的 API 呼叫有助於顯示應用程式錯誤,並可能縮短偵測惡意活動的時間。

嚴重性:低

確定有記錄計量篩選和警示存在,以使用「根」帳戶

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 建議針對根登入嘗試建立計量篩選和警示。

監視根帳戶登入可讓您查看使用完整特殊許可權帳戶,並有機會減少其使用。

嚴重性:低

請確定有記錄計量篩選條件和警示存在,以用於變更於 2016 年

描述:將 CloudTrail 記錄導向 CloudWatch 記錄,並建立對應的計量篩選和警示,即可即時監視 API 呼叫。 帳戶內可能有多個 VPN,此外,還可以在 2 個 VPN 之間建立對等連線,讓網路流量在 VPC 之間路由。 建議針對對 VPC 所做的變更建立計量篩選和警示。 監視 IAM 原則的變更有助於確保驗證和授權控制保持不變。

嚴重性:低

確定沒有任何安全組允許從 0.0.0.0/0 進入埠 3389

描述:安全組提供對 AWS 資源的輸入/輸出網路流量進行具狀態篩選。 建議沒有任何安全組允許對埠 3389 進行不受限制的輸入存取。 拿掉遠端主控台服務的不受限制連線,例如 RDP,可降低伺服器的風險。

嚴重性:高

RDS 資料庫和叢集不應該使用資料庫引擎預設埠

描述:此控件會檢查 RDS 叢集或實例是否使用資料庫引擎預設埠以外的埠。 如果您使用已知的埠來部署 RDS 叢集或實例,攻擊者可以猜測叢集或實例的相關信息。 攻擊者可以使用此資訊搭配其他資訊來連線到 RDS 叢集或實例,或取得應用程式的其他資訊。 當您變更埠時,也必須更新用來連線到舊埠的現有 連接字串。 您也應該檢查 DB 實例的安全組,以確保它包含允許新埠連線的輸入規則。

嚴重性:低

RDS 實例應該部署在一個VP中

描述:VPC 提供數個網路控制,以保護 RDS 資源的存取。 這些控制件包括「API 端點」、「網路 ACL」和「安全組」。 若要利用這些控件,建議您將EC2-Classic RDS 實例移至EC2-VPN。

嚴重性:低

S3 貯體應要求使用安全套接字層

描述:我們建議要求要求在所有 Amazon S3 貯體上使用安全套接字層 (SSL)。 S3 貯體應具有原則,要求所有要求 ('Action: S3:*') 只接受 S3 資源原則中透過 HTTPS 傳輸數據的原則,以條件索引鍵 'aws:SecureTransport' 表示。

嚴重性:中

安全組不應允許從 0.0.0.0/0 輸入埠 22

描述:若要減少伺服器的曝光率,建議您不要允許不受限制的輸入存取埠 '22'。

嚴重性:高

安全組不應允許對高風險的埠進行不受限制的存取

描述:此控件會檢查是否有安全組不受限制的連入流量可供具有最高風險的指定埠存取。 當安全組中沒有任何規則允許這些埠從 0.0.0.0/0 輸入流量時,此控件就會通過。 不受限制的存取權(0.0.0.0/0)會增加惡意活動的機會,例如駭客攻擊、阻斷服務攻擊,以及數據遺失。 安全組提供對 AWS 資源的輸入和輸出網路流量的具狀態篩選。 安全組不應允許對下列埠進行不受限制的輸入存取:

  • 3389 (RDP)
  • 20, 21 (FTP)
  • 22 (SSH)
  • 23 (Telnet)
  • 110 (POP3)
  • 143 (IMAP)
  • 3306 (MySQL)
  • 8080 (proxy)
  • 1433, 1434 (MSSQL)
  • 9200 或 9300 (Elasticsearch)
  • 5601 (基巴納)
  • 25 (SMTP)
  • 445 (CIFS)
  • 135 (RPC)
  • 4333 (阿什普)
  • 5432 (postgresql)
  • 5500 (fcp-addr-srvr1)

嚴重性:中

安全組只允許授權埠的不受限制的連入流量

描述:此控件會檢查使用中的安全組是否允許不受限制的連入流量。 選擇性地,規則會檢查埠號碼是否列在 “authorizedTcpPorts” 參數中。

  • 如果安全組規則埠號碼允許不受限制的連入流量,但埠號碼是在 “authorizedTcpPorts” 中指定,則控件會通過。 “authorizedTcpPorts” 的預設值為 80,443
  • 如果安全組規則埠號碼允許不受限制的連入流量,但未在 authorizedTcpPorts 輸入參數中指定埠號碼,則控件會失敗。
  • 如果未使用 參數,則任何具有不受限制輸入規則之安全組的控件會失敗。 安全組提供對 AWS 輸入和輸出網路流量的具狀態篩選。 安全組規則應遵循最低特殊許可權存取原則。 不受限制的存取權(具有 /0 後綴的IP位址)會增加惡意活動的機會,例如駭客攻擊、阻斷服務攻擊,以及數據遺失。 除非特別允許埠,否則埠應該拒絕不受限制的存取。

嚴重性:高

應移除未使用的EC2 EIP

描述:配置給VP 的彈性IP位址應附加至 Amazon EC2 實例或使用中的彈性網路介面(ENIS)。

嚴重性:低

應移除未使用的網路訪問控制清單

描述:此控件會檢查是否有任何未使用的網路訪問控制清單(ACL)。 控件會檢查資源 「AWS::EC2::NetworkAcl」 的項目組態,並判斷網路 ACL 的關聯性。 如果唯一的關聯性是網路 ACL 的VP,則控件會失敗。 如果列出其他關聯性,則控件會通過。

嚴重性:低

預設安全組應限制所有流量

描述:安全組應限制所有流量,以減少資源暴露。

嚴重性:低