本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Elastic Load Balancing 控制
這些控制項與 Elastic Load Balancing 資源有關。
這些控制項可能並非全部可用 AWS 區域。如需詳細資訊,請參閱 各區域控制項的可用性。
[ELB.1] 應配置應 Application Load Balancer 以將所有HTTP請求重定向到 HTTPS
相關要求:PCIDSS3.2.1/2.3, PCI DSS 3.2.1/4.1, .800-53.r5 (2), NIST .800-53.r5 交流 -4, NIST .800-53.r5 IA-5 (1), .800-53.r5 SC-12 (3), NIST .800-53.r5 SC-13, .800-53.r5 SC-23, NIST .800-53.r5, .800-53.r5, 4), NIST .800-53.R5,. NIST NIST NIST NIST NIST NIST NIST AC-17 SC-23
類別:偵測 > 偵測服務
嚴重性:中
資源類型:AWS::ElasticLoadBalancingV2::LoadBalancer
AWS Config 規則:alb-http-to-https-redirection-check
排程類型:定期
參數:無
此控制項會檢查是否在應HTTP用程式負載平衡器的所有HTTP接聽程式上設定HTTPS重新導向。如果應用程式負載平衡器的任何HTTP接聽程式不HTTP需要設定HTTPS重新導向,則控制項會失敗。
開始使用應用程式負載平衡器之前,您必須新增一或多個接聽程式。接聽程式是使用已設定通訊協定和連接埠檢查連線請求的一種程序。偵聽程式支援HTTP和HTTPS通訊協定。您可以使用接HTTPS聽程式將加密和解密的工作卸載到負載平衡器。若要強制執行傳輸中的加密,您應該使用應用程式負載平衡器的重新導向動作,將用戶端HTTPS要HTTP求重新導向至連接埠 443 上的要求。
若要深入了解,請參閱應用程式負載平衡器使用者指南中的應用程式負載平衡器的接聽程式。
修補
若要將HTTP要求重新導向至HTTPS,您必須新增應用程式負載平衡器接聽程式規則或編輯現有規則。
如需有關新增規則的指示,請參閱應用程式負載平衡器使用者指南中的新增規則。針對「通訊協定:連接埠」HTTP,選擇,然後輸入80
。針對 [新增動作],[重新導向至] HTTPS、選擇,然後輸入443
。
如需有關編輯現有規則的指示,請參閱應用程式負載平衡器使用者指南中的編輯規則。針對「通訊協定:連接埠」HTTP,選擇,然後輸入80
。針對 [新增動作],[重新導向至] HTTPS、選擇,然後輸入443
。
[ELB.2] SSL 帶有/監HTTPS聽器的傳統負載平衡器應該使用由提供的證書 AWS Certificate Manager
相關要求:NIST.800-53.r5 交流 -4, .800-53.r5 IA-5 (1), NIST .800-53.r5 (1), NIST .800-53.r5 SC-12 (3), .800-53.r5 SC-13, .800-53.r5 SC-23, NIST .800-53.r5 代 5, .800-53.R5 星期六 (1), NIST .800-53.R5 (二), NIST .800-53.r5 四七 (6) NIST NIST NIST NIST NIST NIST AC-17 SC-23
分類:保護 > 資料保護 > 加密 data-in-transit
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
AWS Config 規則:elb-acm-certificate-required
排程類型:已觸發變更
參數:無
此控制項會檢查 Classic Load Balancer 是否使用 AWS Certificate Manager (ACM) 提供的HTTPS/SSL憑證。如果使用HTTPS/SSL偵聽程式設定的 Classic Load Balancer 未使用由提供的憑證,則控制項會失敗ACM。
若要建立憑證,您可以使用ACM或支援SSL和TLS通訊協定的工具,例如 Open SSL。Security Hub 建議您使用ACM來建立或匯入負載平衡器的憑證。
ACM與傳統負載平衡器整合,以便您可以在負載平衡器上部署憑證。您也應該自動續訂這些憑證。
修補
如需如何將 ACMSSL/TLS憑證與 Classic Load Balancer 產生關聯的詳細資訊,請參閱 AWS 知識中心文章如何將 ACMSSL/TLS憑證與傳統、應用程式或 Network Load Balancer 產生關聯?
[ELB.3] Classic Load Balancer 偵聽器應配置HTTPS或TLS終止
相關要求:NIST.800-53.r5 交流 -4, .800-53.r5 IA-5 (1), NIST .800-53.r5 (1), NIST .800-53.r5 SC-12 (3), .800-53.r5 SC-13, .800-53.r5 SC-23, NIST .800-53.r5 代 5, .800-53.R5 星期六 (1), NIST .800-53.R5 (二), NIST .800-53.r5 四七 (6) NIST NIST NIST NIST NIST NIST AC-17 SC-23
分類:保護 > 資料保護 > 加密 data-in-transit
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
AWS Config 規則:elb-tls-https-listeners-only
排程類型:已觸發變更
參數:無
此控制項會檢查您的 Classic Load Balancer 接聽程式是HTTPS否設定了前端 (用戶端至負載平衡器) 連線的TLS通訊協定。如果 Classic Load Balancer 具有接聽程式,則此控制項適用。如果您的 Classic Load Balancer 未設定接聽程式,則控制項不會報告任何發現項目。
如果將 Classic Load Balancer 接聽程式設定HTTPS為前端連線TLS或前端連線,則控制項會通過。
如果監聽器未設定TLS或用HTTPS於前端連線,則控制項會失敗。
開始使用負載平衡器之前,您必須新增一或多個接聽程式。接聽程式是使用已設定通訊協定和連接埠檢查連線請求的一種程序。偵聽程式可以同時支援HTTP和HTTPS/TLS通訊協定。您應該始終使用HTTPS或TLS偵聽器,以便負載平衡器在傳輸過程中執行加密和解密的工作。
修補
若要修正此問題,請更新您的接聽程式以使用TLS或HTTPS通訊協定。
將所有不相容的監聽程式變更為TLS/HTTPS監聽程式
在打開 Amazon EC2 控制台https://console.aws.amazon.com/ec2/
。 -
在導覽窗格的 Load Balancing (負載平衡) 下方,選擇 Load Balancers (負載平衡器)。
選取您的 Classic Load Balancer。
-
在 Listeners (接聽程式) 標籤上,選擇 Edit (編輯)。
-
對於「Load Balancer 通訊協定」未設為HTTPS或的所有監聽器SSL,請將設定變更為HTTPS或SSL。
-
對於所有修改的監聽器,請在憑證索引標籤上選擇變更預設值。
-
對於ACM和IAM憑證,請選取憑證。
-
選擇儲存為預設。
-
更新所有監聽程式之後,請選擇 [儲存]。
[ELB.4] 應將應 Application Load Balancer 設定為刪除 http 標頭
相關需求:NISTSC-7 (4)、NIST
分類:保護 > 網絡安全
嚴重性:中
資源類型:AWS::ElasticLoadBalancingV2::LoadBalancer
AWS Config 規則:alb-http-drop-invalid-header-enabled
排程類型:已觸發變更
參數:無
此控制項會評估 AWS 應用程式負載平衡器,以確保它們設定為刪除無效HTTP標頭。如果的routing.http.drop_invalid_header_fields.enabled
值設定為,則控制項會失敗false
。
根據預設,應用程式負載平衡器未設定為卸除無效的HTTP標頭值。移除這些標頭值可防HTTP止不同步攻擊。
請注意,如果啟用 ELB.12,您可以停用此控制項。
修補
若要修正此問題,請將負載平衡器設定為卸除無效的標頭欄位。
設定負載平衡器刪除無效標頭欄位
在打開 Amazon EC2 控制台https://console.aws.amazon.com/ec2/
。 -
在導覽窗格上,選擇 Load balancers (負載平衡器)。
-
選擇應用程式負載平衡器。
-
從「動作」 中選擇 「編輯屬性」。
-
在 [刪除無效標頭欄位] 下,選擇 [啟用]
-
選擇儲存。
[ELB.5] 應啟用應用程式和傳統負載平衡器記錄
相關要求:NIST.800-53.R5 交流四 (26)、NIST .800-53.R5 AU-10、.800-53.R5、.800-53.R5 澳大利亞交流四 (26)、NIST. NIST 800-53.R5 澳洲六 (3)、.800-53.R5、NIST .800-53.R5 三七七 (8) NIST NIST NIST NIST NIST AU-12
類別:識別 > 記錄日誌
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
, AWS::ElasticLoadBalancingV2::LoadBalancer
AWS Config 規則:elb-logging-enabled
排程類型:已觸發變更
參數:無
此控制項會檢查「應用程式負載平衡器」和「傳統負載平衡器」記錄是否已啟用。如果access_logs.s3.enabled
是,則控制項失敗false
。
Elastic Load Balancing 提供存取日誌,可針對傳送到負載平衡器的請求,擷取其詳細資訊。每個日誌包含收到請求的時間、用戶端的 IP 地址、延遲、請求路徑和伺服器回應等資訊。您可以使用這些存取日誌來分析流量模式和排除問題。
若要深入了解,請參閱 Classic Load Balancer 使用者指南中的傳統負載平衡器的存取記錄。
修補
若要啟用存取記錄,請參閱《應用程式負載平衡器使用者指南》中的步驟 3:設定存取記錄。
[ELB.6] 應用程式、閘道和網路負載平衡器應啟用刪除保護
相關需求:NIST.800-53.R5 介面卡 -9 (1)、NIST .800-53.R5 公分控制器 (2)、.800-53.R5 公分控制器-5 公分 (2) NIST NIST NIST
分類:復原 > 復原能力 > 高可用性
嚴重性:中
資源類型:AWS::ElasticLoadBalancingV2::LoadBalancer
AWS Config 規則:elb-deletion-protection-enabled
排程類型:已觸發變更
參數:無
此控制項會檢查應用程式、閘道或 Network Load Balancer 是否已啟用刪除保護。如果停用刪除保護,則控制項會失敗。
啟用刪除保護以保護您的應用程式、閘道或 Network Load Balancer 免於刪除。
修補
為避免您的負載平衡器上遭意外刪除,您可以啟用刪除保護。您的負載平衡器的刪除保護預設為停用。
如果您為負載平衡器啟用刪除保護,則必須先停用刪除保護,然後才能刪除負載平衡器。
若要啟用 Application Load Balancer 的刪除保護,請參閱應用程式負載平衡器使用者指南中的刪除保護。若要啟用閘道 Load Balancer 的刪除保護,請參閱閘道負載平衡器使用者指南中的刪除保護。若要啟用 Network Load Balancer 的刪除保護,請參閱網路負載平衡器使用者指南中的刪除保護。
[ELB.7] 傳統負載平衡器應啟用連線排空
相關需求:NISTNIST
分類:復原 > 復原力
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
AWS Config規則:elb-connection-draining-enabled
(自訂 Security Hub 規則)
排程類型:已觸發變更
參數:無
此控制項會檢查傳統負載平衡器是否已啟用連線排空。
在傳統負載平衡器上啟用連線排除功能,可確保負載平衡器停止向解除註冊或運作狀態不佳的執行個體傳送要求。它保持現有的連接打開。這對 Auto Scaling 群組中的執行個體特別有用,可確保連線不會突然切斷。
修補
若要在 Classic Load Balancer 上啟用連線排空,請參閱傳統負載平衡器使用者指南中的設定傳統負載平衡器的連線排空。
[ELB.8] 帶有SSL偵聽器的傳統負載平衡器應使用具有強大配置的預定義安全策略 AWS Config
相關要求:NIST.800-53.r5 交流 -4, .800-53.r5 IA-5 (1), NIST .800-53.r5 (1), NIST .800-53.r5 SC-12 (3), .800-53.r5 SC-13, .800-53.r5 SC-23, NIST .800-53.r5 代 5, .800-53.R5 星期六 (1), NIST .800-53.R5 (二), NIST .800-53.r5 四七 (6) NIST NIST NIST NIST NIST NIST AC-17 SC-23
分類:保護 > 資料保護 > 加密 data-in-transit
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
AWS Config 規則:elb-predefined-security-policy-ssl-check
排程類型:已觸發變更
參數:
-
predefinedPolicyName
:ELBSecurityPolicy-TLS-1-2-2017-01
(不可定制)
此控制項會檢查 Classic Load BalancerHTTPS/SSL接聽程式是否使用預先定義的原則ELBSecurityPolicy-TLS-1-2-2017-01
。如果 Classic Load BalancerHTTPS/SSL接聽程式未使用,則控制項會失敗ELBSecurityPolicy-TLS-1-2-2017-01
。
安全性原則是SSL通訊協定、密碼和伺服器順序喜好設定選項的組合。預先定義的原則可控制用戶端與負載平衡器之間SSL交涉期間支援的密碼、通訊協定和偏好設定順序。
使用ELBSecurityPolicy-TLS-1-2-2017-01
可協助您符合要求您停用特定版本的和的法規遵循SSL與安全性標準TLS。如需詳細資訊,請參閱傳統負載平衡器使用者指南中的傳統負載平衡器預先定義的SSL安全性原則。
修補
如需如何ELBSecurityPolicy-TLS-1-2-2017-01
搭配 Classic Load Balancer 使用預先定義的安全性原則的詳細資訊,請參閱傳統負載平衡器使用者指南中的設定安全性設定。
[ELB.9] 傳統負載平衡器應啟用跨區域負載平衡
相關要求:CP-10,NIST.800-53.r5 CP-6 (2),NIST.800-53.r5 SC-36,.800-53.r5 SC-5 (2),NIST.800-53.r5 SI-13 (5) NIST NIST
分類:復原 > 復原能力 > 高可用性
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
AWS Config 規則:elb-cross-zone-load-balancing-enabled
排程類型:已觸發變更
參數:無
此控制項會檢查是否為傳統負載平衡器 () CLBs 啟用跨區域負載平衡。如果未啟用跨區域負載平衡,則控制項會失敗。CLB
負載平衡器節點只會將流量分配到其可用區域中已註冊的目標。停用跨區域負載平衡時,每個負載平衡器節點只會將流量分發到其可用區域內已註冊的目標。如果可用區域中的已註冊目標數目不一樣,流量將不會平均分配,而且與另一個區域中的執行個體相比,一個區域中的執行個體最終可能會過度使用。啟用跨區域負載平衡後,Classic Load Balancer 的每個負載平衡器節點將請求平均分配到所有已啟用的可用區域中已註冊的執行個體。如需詳細資訊,請參閱 Elastic Load Balancing 使用指南中的跨區域負載平衡。
修補
若要在 Classic Load Balancer 中啟用跨區域負載平衡,請參閱傳統負載平衡器使用者指南中的啟用跨區域負載平衡。
[ELB.10] Classic Load Balancer 應跨越多個可用區域
相關要求:CP-10,NIST.800-53.r5 CP-6 (2),NIST.800-53.r5 SC-36,.800-53.r5 SC-5 (2),NIST.800-53.r5 SI-13 (5) NIST NIST
分類:復原 > 復原能力 > 高可用性
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
AWS Config 規則:clb-multiple-az
排程類型:已觸發變更
參數:
參數 | Description (描述) | Type | 允許的自訂值 | Security Hub 預設值 |
---|---|---|---|---|
|
可用區域的最小數目 |
列舉 |
|
|
此控制項會檢查 Classic Load Balancer 是否已設定為至少跨越指定數目的可用區域 (AZs)。如果 Classic Load Balancer 未跨越至少指定的數目,則控制項會失敗AZs。除非您為最小數目提供自訂參數值AZs,否則 Security Hub 會使用預設值 2 AZs。
您可以設定 Classic Load Balancer,在單一可用區域或多個可用區域的 Amazon EC2 執行個體之間分發傳入的請求。如果唯一設定的可用區域無法使用,則不跨越多個可用區域的 Classic Load Balancer 將流量重新導向至另一個可用區域中的目標。
修補
若要將可用區域新增至 Classic Load Balancer,請參閱 Classic Load Balancer 使用者指南中的為傳統負載平衡器新增或移除子網路。
[ELB.12] Application Load Balancer 應設定為防禦性或最嚴格的不同步緩解模式
相關需求:NIST.800-53.5 交流電四 (21)、NIST .800-53.R5 鈣 -9 (1)、NIST
分類:保護 > 資料保護 > 資料完整性
嚴重性:中
資源類型:AWS::ElasticLoadBalancingV2::LoadBalancer
AWS Config 規則:alb-desync-mode-check
排程類型:已觸發變更
參數:
desyncMode
:defensive, strictest
(不可定制)
此控制項會檢查應用程式負載平衡器是否設定為防禦性或最嚴格的不同步緩和模式。如果 Application Load Balancer 未設定防禦性或最嚴格的不同步緩和模式,則控制項會失敗。
HTTP不同步問題可能會導致要求走私,並使應用程式容易遭受要求佇列或快取中毒。反過來,這些弱點可能導致憑證填滿或執行未經授權的命令。應用程式負載平衡器設定為防禦性或最嚴格的不同步緩和模式,可保護您的應用程式免於遭受 Desync 可能造成的安全性問題。HTTP
修補
若要更新應用程式負載平衡器的不同步緩和模式,請參閱《應用程式負載平衡器使用者指南》中的「不同步緩和模式」。
[ELB.13] 應用程式、網路和閘道負載平衡器應跨越多個可用區域
相關要求:CP-10,NIST.800-53.r5 CP-6 (2),NIST.800-53.r5 SC-36,.800-53.r5 SC-5 (2),NIST.800-53.r5 SI-13 (5) NIST NIST
分類:復原 > 復原能力 > 高可用性
嚴重性:中
資源類型:AWS::ElasticLoadBalancingV2::LoadBalancer
AWS Config 規則:elbv2-multiple-az
排程類型:已觸發變更
參數:
參數 | Description (描述) | Type | 允許的自訂值 | Security Hub 預設值 |
---|---|---|---|---|
|
可用區域的最小數目 |
列舉 |
|
|
此控制項會檢查 Elastic Load Balancer V2 (應用程式、網路或閘道 Load Balancer) 是否具有至少指定數目的可用區域 (AZs) 註冊執行個體。如果 Elastic Load Balancer V2 沒有註冊至少指定數量的執行個體,則控制項會失敗AZs。除非您為最小數目提供自訂參數值AZs,否則 Security Hub 會使用預設值 2 AZs。
Elastic Load Balancing 會在一或多個可用區域中自動將傳入流量分配到多個目標,例如EC2執行個體、容器和 IP 位址。當傳入流量隨著時間發生變化,Elastic Load Balancing 會擴展您的負載平衡器。建議至少設定兩個可用區域,以確保服務的可用性,因為如果 Elastic Load Balancer 無法使用,將流量導向另一個可用區域。設定多個可用區域將有助於避免應用程式發生單一故障點。
修補
若要將可用區域新增至 Application Load Balancer,請參閱 Application Load Balancer 使用者指南中的應用程式負載平衡器的可用區域。若要將可用區域新增至 Network Load Balancer,請參閱網路負載平衡器使用者指南中的網路負載平衡器。若要將可用區域新增至閘道 Load Balancer,請參閱閘道 Load Balancer 使用者指南中的建立閘道負載平衡器。
[ELB.14] Classic Load Balancer 應設定為防禦性或最嚴格的不同步緩解模式
相關需求:NIST.800-53.5 交流電四 (21)、NIST .800-53.R5 鈣 -9 (1)、NIST
分類:保護 > 資料保護 > 資料完整性
嚴重性:中
資源類型:AWS::ElasticLoadBalancing::LoadBalancer
AWS Config 規則:clb-desync-mode-check
排程類型:已觸發變更
參數:
desyncMode
:defensive, strictest
(不可定制)
此控制項會檢查 Classic Load Balancer 是否設定為防禦性或最嚴格的不同步緩和模式。如果 Classic Load Balancer 未設定為防禦性或最嚴格的不同步緩和模式,則控制項會失敗。
HTTP不同步問題可能會導致要求走私,並使應用程式容易遭受要求佇列或快取中毒。反過來,這些漏洞可能導致憑證劫持或執行未經授權的命令。經典負載平衡器設定為防禦性或最嚴格的不同步緩和模式,可保護您的應用程式免於遭受 Desync 可能造成的安全性問題。HTTP
修補
若要更新 Classic Load Balancer 上的不同步緩和模式,請參閱傳統負載平衡器使用者指南中的修改不同步緩和模式。
[ELB.16] 應用程序負載平衡器應與 Web 相關聯 AWS WAF ACL
相關要求NIST:交流 -4
分類:保護 > 保護服務
嚴重性:中
資源類型:AWS::ElasticLoadBalancingV2::LoadBalancer
AWS Config 規則:alb-waf-enabled
排程類型:已觸發變更
參數:無
此控制項會檢查應用程式負載平衡器是否與 AWS WAF 傳統或 AWS WAF Web 存取控制清單 (WebACL) 相關聯。如果 AWS WAF 組態的Enabled
欄位設定為,則控制項會失敗false
。
AWS WAF 是一種網絡應用程序防火牆,可幫助保護 Web 應用程序和免APIs受攻擊。使用 AWS WAF,您可以設定 WebACL,這是一組規則,可根據您定義的可自訂 Web 安全規則和條件來允許、封鎖或計數 Web 要求。建議您將 Application Load Balancer 與 AWS WAF Web 建立關聯,ACL以協助保護其免受惡意攻擊。
修補
若要將應用程式負載平衡器與 Web 建立關聯ACL,請參閱開發人員指南中的建立 Web ACL 與 AWS 資源的關聯或取消關聯。AWS WAF