Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update CloudFront's upstream ECC preference list #4301

Merged
merged 1 commit into from
Dec 1, 2023
Merged

Conversation

zz85
Copy link
Contributor

@zz85 zz85 commented Nov 28, 2023

Description of changes:

updating Update CloudFront's upstream ECC preference list from s2n_ecc_pref_list_20140601 to s2n_ecc_pref_list_20230623 to include X25519 inline with CloudFront's documentation in https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-ciphers-cloudfront-to-origin.html

This should only update the following security policies

  • CloudFront-Upstream
  • CloudFront-Upstream-TLS-1-0
  • CloudFront-Upstream-TLS-1-1
  • CloudFront-Upstream-TLS-1-2

Call-outs:

as mentioned in

/* Curve p256 is at the top of the list in order to minimize HRR */
,

s2n_ecc_pref_list_20230623 prefers p256 over x25519. using that over s2n_ecc_pref_list_20200310 should have no differences in TLS 1.2, but could improve compatibility when moving to support TLS 1.3 to origins

Testing:

Unit tests and integration tests with s2nc (see comment)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@zz85
Copy link
Contributor Author

zz85 commented Nov 30, 2023

Update on testing, I've used the new security policy using a s2nc script against a alexa 100 top sites list I could find.

for domain in $(cat alexa-top-100); do
	echo $domain;
	echo "\n\n" | S2N_DONT_MLOCK=1 ./build/bin/s2nc -f ./tests/pems/trust-store/ca-bundle.crt  --ciphers CloudFront-Upstream $domain -e -i | head -2
	echo "ok"
	sleep 0.1
done

I've compared the results against the default security policies, and apart from domains not reachable from my testing host, I've found no regression so far.

- from s2n_ecc_pref_list_20140601 to s2n_ecc_pref_list_20230623
  to include X25519 inline with CloudFront's documentation
  in https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-ciphers-cloudfront-to-origin.html
@goatgoose goatgoose self-requested a review November 30, 2023 22:11
@goatgoose goatgoose requested a review from lrstewart November 30, 2023 22:58
@lrstewart lrstewart merged commit 6d09496 into aws:main Dec 1, 2023
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants