π‘οΈ AWS ELB Load Balancer is not configured with defensive or strictest desync mitigation modeπ’
- Contextual name: π‘οΈ Load Balancer is not configured with defensive or strictest desync mitigation modeπ’
- ID:
/ce/ca/aws/elb/load-balancer-desync-mitigation-mode - Tags:
- π’ Policy with categories
- π’ Policy with type
- π’ Production policy
- Policy Type:
COMPLIANCE_POLICY - Policy Categories:
RELIABILITY,PERFORMANCE
Logicβ
- π§ prod.logic.yamlπ’
Similar Policiesβ
- AWS Security Hub: [ELB.12] Application Load Balancer should be configured with defensive or strictest desync mitigation mode
- AWS Security Hub: [ELB.14] Classic Load Balancer should be configured with defensive or strictest desync mitigation mode
Descriptionβ
Descriptionβ
This policy identifies AWS ELB Classic and Application Load Balancers that are not configured with an HTTP desync mitigation mode of
defensive(default) orstrictest.Note: The
routing.http.drop_invalid_header_fields.enabledattribute (AWS ELB Application Load Balancer is not configured to drop invalid HTTP headers) was introduced to provide baseline protection against HTTP desync by dropping malformed HTTP headers. Therouting.http.desync_mitigation_modeattribute was later added to offer more comprehensive and configurable protection against HTTP desync attacks. You are not required to enable both attributes; instead, you should select the option that best aligns with your applicationβs security and compatibility requirements.Rationaleβ
HTTP desync occurs when a load balancer and its backend targets interpret HTTP request boundaries differently. This condition can be exploited through HTTP Request Smuggling attacks, enabling an attacker to:
... see more
Remediationβ
Remediationβ
Configure HTTP Desync Mitigation Modeβ
Update the HTTP desync mitigation mode to
defensiveorstrictestto prevent malformed or ambiguous HTTP requests from reaching backend targets. This helps protect applications from HTTP Request Smugglingβrelated attacks.Recommendation: For most environments, the default
defensivemode provides strong protection while maintaining application availability. Choosestrictestfor maximum security, but validate that your application can function with RFC-strict traffic, as it blocks all "Acceptable" and "Ambiguous" requestsFrom Command Lineβ
For Application Load Balancersβ
Run the following command to set the desync mitigation mode to
defensive(recommended for most environments):aws elbv2 modify-load-balancer-attributes \
--load-balancer-arn {{load-balancer-arn}} \
--attributes Key=routing.http.desync_mitigation_mode,Value=defensiveTo enforce the highest level of protection, you may optionally use
strictestinstead ofdefensiveafter validating application compatibility.... see more