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

Cipher configuration issue #6380

Closed
Zsolt-LazarZsolt opened this issue Apr 24, 2024 · 0 comments · Fixed by #6461
Closed

Cipher configuration issue #6380

Zsolt-LazarZsolt opened this issue Apr 24, 2024 · 0 comments · Fixed by #6461
Assignees
Labels
kind/bug Categorizes issue or PR as related to a bug. lifecycle/needs-triage Indicates that an issue needs to be triaged by a project contributor.

Comments

@Zsolt-LazarZsolt
Copy link

What steps did you take and what happened:
Contour Checks the validity of the tls.cipher-suites in the configmap against the following hardcoded list:

https://github.com/projectcontour/contour/blob/main/apis/projectcontour/v1alpha1/ciphersuites.go

var ValidTLSCiphers = map[string]struct{}{
"[ECDHE-ECDSA-AES128-GCM-SHA256|ECDHE-ECDSA-CHACHA20-POLY1305]": {},
"[ECDHE-RSA-AES128-GCM-SHA256|ECDHE-RSA-CHACHA20-POLY1305]": {},
"ECDHE-ECDSA-AES128-GCM-SHA256": {},
"ECDHE-RSA-AES128-GCM-SHA256": {},
"ECDHE-ECDSA-AES128-SHA": {},
"ECDHE-RSA-AES128-SHA": {},
"AES128-GCM-SHA256": {},
"AES128-SHA": {},
"ECDHE-ECDSA-AES256-GCM-SHA384": {},
"ECDHE-RSA-AES256-GCM-SHA384": {},
"ECDHE-ECDSA-AES256-SHA": {},
"ECDHE-RSA-AES256-SHA": {},
"AES256-GCM-SHA384": {},
"AES256-SHA": {},
}

The first two lines in envoy mean there is no order of preference between ECDHE-ECDSA-AES128-GCM-SHA256 and ECDHE-ECDSA-CHACHA20-POLY1305.
Because the list element are checked as is, it is possible to give ECDHE-ECDSA-AES128-GCM-SHA256 on its own (as it has its own element), but it is not possible to set ECDHE-ECDSA-CHACHA20-POLY1305 on its own, as it is only part of the first element and does not have its own element in ValidTLSCiphers.

What did you expect to happen:
All elements in ValidTLSCiphers could be independent ciphers, and the input if given as "[cipher1|cipher2|cipherX]", the ciphers could be checked against ValidTLSCiphers one by one.
Making it possible to create equal preference between any ciphers.

@Zsolt-LazarZsolt Zsolt-LazarZsolt added kind/bug Categorizes issue or PR as related to a bug. lifecycle/needs-triage Indicates that an issue needs to be triaged by a project contributor. labels Apr 24, 2024
@tsaarni tsaarni self-assigned this Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug. lifecycle/needs-triage Indicates that an issue needs to be triaged by a project contributor.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants