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

Transient CI failures for target S2nIntegrationV2SmallBatch #3339

Closed
torben-hansen opened this issue May 31, 2022 · 5 comments
Closed

Transient CI failures for target S2nIntegrationV2SmallBatch #3339

torben-hansen opened this issue May 31, 2022 · 5 comments

Comments

@torben-hansen
Copy link
Contributor

Security issue notifications

If you discover a potential security issue in s2n we ask that you notify
AWS Security via our vulnerability reporting page. Please do not create a public github issue.

Problem:

I see some transient CI failures in the CI target S2nIntegrationV2SmallBatch. One example is

FAILED test_well_known_endpoints.py::test_well_known_endpoints[KMS-PQ-TLS-1-0-2020-07-S2N-www.apple.com-TLS1.2]
======================== 1 failed, 431 passed in 24.27s ========================
ERROR: InvocationError for command /codebuild/output/src981233478/src/github.com/aws/s2n-tls/tests/integrationv2/.tox/py39/bin/pytest -n 2 --cache-clear -rpfsq --provider-version=openssl-1.0.2 --fips-mode=0 --no-pq=0 test_well_known_endpoints.py (exited with code 1)

There is some weak consistency in failures:

  • I mostly see failures for test_well_known_endpoints.py, but it can vary.
  • Mostly failures for PQ cipher suites, but can vary.
  • For endpoints I have seen a mix of: apple.com, att.com, microsoft.com, ebay.com

There doesn't appear to be any correlation with the libcrypto used. I have seen failures for almost all of them: openssl 1.0.2, openssl 1.1.1, aws-lc, awslc-fips.

Here are some failures for the past two weeks or so:

  • libcrypto = openssl 1.0.2, endpoint = apple.com, test script = test_well_known_endpoints.py: build batch build
  • libcrypto = openssl 1.0.2, endpoint = ebay.com, test script = test_well_known_endpoints.py: build batch build
  • libcrypto = openssl 1.0.2, endpoint = att.com, test script = test_well_known_endpoints.py: build batch build
  • libcrypto = openssl 1.1.1, endpoint = att.com, test script = test_well_known_endpoints.py: build batch build
  • libcrypto = aws-lc, test script = test_cross_compatibility.py: (internal) build batch build
  • libcrypto = awslc-fips, endpoint = att.com, test script = test_well_known_endpoints.py: (internal) build batch build

Solution:

A description of the possible solution in terms of S2N architecture. Highlight and explain any potentially controversial design decisions taken.

  • Does this change what S2N sends over the wire? If yes, explain.
  • Does this change any public APIs? If yes, explain.
  • Which versions of TLS will this impact?

Requirements / Acceptance Criteria:

What must a solution address in order to solve the problem? How do we know the solution is complete?

  • RFC links: Links to relevant RFC(s)
  • Related Issues: Link any relevant issues
  • Will the Usage Guide or other documentation need to be updated?
  • Testing: How will this change be tested? Call out new integration tests, functional tests, or particularly interesting/important unit tests.
    • Will this change trigger SAW changes? Changes to the state machine, the s2n_handshake_io code that controls state transitions, the DRBG, or the corking/uncorking logic could trigger SAW failures.
    • Should this change be fuzz tested? Will it handle untrusted input? Create a separate issue to track the fuzzing work.

Out of scope:

Is there anything the solution will intentionally NOT address?

@jmayclin
Copy link
Contributor

more errors, for well-known-endpoint Amazon on TLS 1.0

__________ test_well_known_endpoints[None-S2N-www.amazon.com-TLS1.0] ___________
Command '['s2nc', '--non-blocking', '-e', '-T', '-f', 
'../pems/trust-store/ca-bundle.trust.crt', '-c', 'test_all_tls12', 
'--enter-fips-mode', 'www.amazon.com', '443']' timed out after 5 seconds
 s2nc --non-blocking -e -T -f ../pems/trust-store/ca-bundle.trust.crt -c
 test_all_tls12 --enter-fips-mode www.amazon.com 443

@jmayclin
Copy link
Contributor

Actually I think I'm gonna close out this issue and open a new one because it seems like failure behavior has changed significantly.

The only false negatives that I see on S2nIntegrationV2SmallBatch are the the well-known-endpoint failures, specifically amazon failures.

@jmayclin
Copy link
Contributor

Closing this issue out, new issue is #3999

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants