Tests: Stop using deprecated ssl.wrap_socket
(Default version of SSL/TLS may be insecure)
#470
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.
TLDR;
Stop using deprecated
ssl.wrap_socket()
, use SSL context factory andcontext.wrap_socket()
instead.Problem report
This was reported as a check failure by CodeQL code scanning (#467) with id
py/insecure-default-protocol
1, which translates to »Default version of SSL/TLS may be insecure«.Solution
Use modern alternative SSL context factory methods instead. While
ssl.create_default_context()
was too restrictive,ssl._create_unverified_context()
was just right, as advertised:On this SSL context, use a minimum version to restrict to secure TLS protocol variants only.
With kind regards,
Andreas.
Footnotes
https://github.com/github/codeql/blob/main/python/ql/src/Security/CWE-327/InsecureDefaultProtocol.qhelp ↩