Check ID:
Provider: AWS
Service:
Severity: MEDIUM
Categories:
Resource type:
shield_advanced_protection_in_classic_load_balancersProvider: AWS
Service:
shieldSeverity: MEDIUM
Categories:
resilience, internet-exposedResource type:
AwsElbLoadBalancerWhat this check verifies
Classic Load Balancers are evaluated for association with AWS Shield Advanced as a protected resource. Identifies load balancers without an active Shield Advanced protection when the subscription is enabled.Risk
Unprotected ELB Classic endpoints are more exposed to large L3/L4 DDoS (e.g., SYN/UDP floods), risking availability loss from connection exhaustion and failed health checks, plus operational impact from autoscaling and data transfer surges.Recommendation
Add internet-facing Classic Load Balancers as protected resources in Shield Advanced to strengthen DDoS resilience and cost protection. Apply defense-in-depth: minimize public exposure, enforce least-privilege network access, enable health-based detection, and use protection groups.Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
aws shield create-protection —name <PROTECTION_NAME> —resource-arn <ELB_ARN>
References
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = shield_advanced_protection_in_classic_load_balancers. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks