CVE-2024-5642
Published: June 28, 2024Last modified: June 23, 2025
Description
CPython 3.9 and earlier doesn't disallow configuring an empty list ("[]") for SSLContext.set_npn_protocols() which is an invalid value for the underlying OpenSSL API. This results in a buffer over-read when NPN is used (see CVE-2024-5535 for OpenSSL). This vulnerability is of low severity due to NPN being not widely used and specifying an empty list likely being uncommon in-practice (typically a protocol name would be configured).
Severity score breakdown
Parameter | Value |
---|---|
Base score | 6.5 |
Attack Vector | NETWORK |
Attack complexity | LOW |
Privileges required | NONE |
User interaction | NONE |
Scope | UNCHANGED |
Confidentiality | LOW |
Integrity impact | NONE |
Availability impact | LOW |
Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L |
Notes
Fixed in version 3.10: https://github.com/python/cpython/commit/39258d3595300bc7b952854c915f63ae2d4b9c3e
Status
Product | Release | Package | Status |
---|---|---|---|
Alpaquita Linux | 23 LTS | python3 | Not affected (3.11.3-r0) |
Stream | python3 | Not affected (3.11.4-r0) |
References
- http://www.openwall.com/lists/oss-security/2024/06/28/4
- https://github.com/python/cpython/commit/39258d3595300bc7b952854c915f63ae2d4b9c3e
- https://github.com/python/cpython/issues/121227
- https://github.com/python/cpython/pull/23014
- https://jbp.io/2024/06/27/cve-2024-5535-openssl-memory-safety.html
- https://mail.python.org/archives/list/[email protected]/thread/PLP2JI3PJY33YG6P5BZYSSNU66HASXBQ/
- https://security.netapp.com/advisory/ntap-20240726-0005/