Repository navigation
fix: accept API Gateway enhanced TLS 1.2/1.3 security policies in aws-insecure-api-gateway-tls-version - #4146
Open
Johnbjoseph-cybersec wants to merge 1 commit into
Conversation
…-insecure-api-gateway-tls-version
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
aws-insecure-api-gateway-tls-versionexempts onlysecurity_policy = "TLS_1_2"onaws_api_gateway_domain_name. Every other value gets "insecure version of TLS" and the advice to go back toTLS_1_2.That now includes the enhanced policies API Gateway accepts for REST custom domains (API_DomainName). Each one starts with
SecurityPolicy_TLS12orSecurityPolicy_TLS13, and each is as strict asTLS_1_2or stricter (policy table):SecurityPolicy_TLS13_1_3_2025_09andSecurityPolicy_TLS13_2025_EDGEallow only TLS 1.3._PQ_policies keep a TLS 1.2 floor and add hybrid post-quantum key exchange.So a team that moves to TLS 1.3 or PQ gets a warning telling them to step back down.
Changes:
pattern-notnow binds$POLICYand exempts^['"](TLS_1_2|SecurityPolicy_TLS1[23]_[A-Z0-9_]+)['"]$. The regex includes the surrounding quotes because a Terraform string bound to a metavariable keeps them, the same wayaws-ec2-security-group-rule-missing-descriptionmatches its description strings.ok:cases (TLS 1.3 only, PQ and edge), each withendpoint_access_mode, which AWS requires with anySecurityPolicy_policy. All three are flagged by the current rule and pass with this change. TheTLS_1_0ruleid:case is unchanged.aws_apigatewayv2_domain_nameis unchanged. HTTP and WebSocket APIs only supportTLS_1_2, and the provider's validation only acceptsTLS_1_2for that resource.John B Joseph, Co-founder & CPTO, Purplecop Security