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).
CVE-2024-5642
Score 6.5 from GitHub Security Advisory published 2024-06-27. NVD baseline CVSS 6.5; sources differ by 0.0.
- Lower severity and no public exploit yet
A fix is available — apply it.
- CVSS v3
- 6.5
- EG Score
- 6.5(medium)
- EG Risk
- 30(Track)EG Risk 30/100SSVC: Track
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity65% × 45%Exploitation1% × 40%Automatability0% × 15%Action: Routine — remediate on your standard cadence. - EPSS PROB
- 1%
- EPSS %ILE
- 53%
- KEV
- Not listed
Published
June 27, 2024
Last Modified
July 31, 2026
Advisory Details (8)
Auto-updated Jul 31, 2026commit a2cdbb6e8188 (python/cpython)
Fix landed in python/cpython commit a2cdbb6e8188 — awaiting tagged release
https://github.com/python/cpython/commit/a2cdbb6e8188ba9ba8b356b28d91bff60e86fe31Disallow setting an empty list for NPN in CPython 3.9 and earlier · Issue #121227 · python/cpython · GitHub
https://github.com/python/cpython/issues/121227oss-security - Fwd: [Security-announce][CVE-2024-5642] Buffer over-read in SSLContext.set_npn_protocols() for Python 3.9 and earlier
http://www.openwall.com/lists/oss-security/2024/06/28/4commit 39258d359530 (python/cpython)
Fix landed in python/cpython commit 39258d359530 — awaiting tagged release
https://github.com/python/cpython/commit/39258d3595300bc7b952854c915f63ae2d4b9c3eMailman 3 [CVE-2024-5642] Buffer over-read in SSLContext.set_npn_protocols() for Python 3.9 and earlier - Security-announce - python.org
https://mail.python.org/archives/list/[email protected]/thread/PLP2JI3PJY33YG6P5BZYSSNU66HASXBQ/bpo-43669: PEP 644: Require OpenSSL 1.1.1 or newer (GH-23014)
Fix merged in python/cpython PR #23014 on 2021-04-17 — awaiting tagged release
https://github.com/python/cpython/pull/23014jbp.io :: CVE-2024-5535: `SSL_select_next_proto` buffer overread
https://jbp.io/2024/06/27/cve-2024-5535-openssl-memory-safety.htmlVendor Advisories for CVE-2024-5642(5)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
- RHSA-2026:1652Red Hat Product SecurityHigh
Red Hat Security Advisory: Red Hat Ceph Storage
- RHSA-2026:0685Red Hat Product SecurityMedium
Red Hat Security Advisory: Red Hat Update Infrastructure 5 security update
- RHSA-2026:0414Red Hat Product SecurityHigh
Red Hat Security Advisory: A Subscription Management tool for finding and reporting Red Hat product usage
- RHSA-2025:23342Red Hat Product SecurityMedium
Red Hat Security Advisory: python3.9 security update
- RHSA-2025:23530Red Hat Product SecurityHigh
Red Hat Security Advisory: python39:3.9 security update
Patch Availability(5)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| redhat | rhceph/rhceph-8-rhel9:1769512383 | 2026-02-02 | redhat |
| redhat | rhui5/rhua-rhel9:1768377012 | 2026-01-15 | redhat |
| redhat | discovery/discovery-ui-rhel9:1767904573 | 2026-01-08 | redhat |
| redhat | python3.9-0:3.9.25-2.el9_7 | 2025-12-18 | redhat |
| redhat | python39-devel:3.9-8100020251126112422.d47b87a4 | 2025-12-18 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(6 across 4 ecosystems)
Debian:11(3)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | 7.3.10+dfsg-1 ... 7.3.9+dfsg-5 (53 versions) | — | — |
| python2.7 | 2.7.18-10 ... 2.7.18-9 (10 versions) | — | — |
| python3.9 | 3.9.10-1 ... 3.9.9-4 (29 versions) | — | — |
Debian:12(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | — | 7.3.10+dfsg-1 | — |
Debian:13(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | — | 7.3.10+dfsg-1 | — |
Debian:14(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | — | 7.3.10+dfsg-1 | — |
Additional Vendor Advisories
(1)
Vendors that published advisories for this CVE beyond the curated set above. Broader coverage but minimal per-row detail — click through for the original advisory.
Data Freshness Timeline
(refreshed 7× in last 7d / 29× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
Showing the most recent 100 of 184 total refreshes for this CVE.
- 2026-09-18 19:26 UTCEPSS rescore
- 2026-09-16 14:06 UTCEPSS rescore
- 2026-09-16 14:06 UTCEPSS rescore
- 2026-09-16 05:12 UTCEPSS rescore
- 2026-09-15 03:08 UTCEPSS rescore
- 2026-09-13 16:45 UTCEPSS rescore
- 2026-09-12 14:59 UTCEPSS rescore
- 2026-09-11 14:51 UTCEPSS rescore
- 2026-09-11 09:35 UTCEPSS rescore
- 2026-09-10 09:33 UTCEPSS rescore
- 2026-09-08 21:59 UTCEPSS rescore
- 2026-09-07 16:00 UTCEPSS rescore
- 2026-09-06 13:46 UTCEPSS rescore
- 2026-09-04 13:59 UTCEPSS rescore
- 2026-09-04 05:05 UTCEPSS rescore
- 2026-09-02 14:10 UTCEPSS rescore
- 2026-09-01 20:27 UTCOSV refresh
- 2026-09-01 13:52 UTCEPSS rescore
- 2026-08-30 19:16 UTCEPSS rescore
- 2026-08-30 19:16 UTCEPSS rescore
- 2026-08-30 01:21 UTCEPSS rescore
- 2026-08-28 21:39 UTCEPSS rescore
- 2026-08-27 14:24 UTCEPSS rescore
- 2026-08-26 14:44 UTCEPSS rescore
- 2026-08-25 13:47 UTCEPSS rescore
Show 75 moreShow fewer
- 2026-08-24 14:15 UTCEPSS rescore
- 2026-08-23 00:18 UTCEPSS rescore
- 2026-08-21 23:47 UTCEPSS rescore
- 2026-08-20 22:54 UTCEPSS rescore
- 2026-08-19 17:02 UTCEPSS rescore
- 2026-08-18 13:47 UTCEPSS rescore
- 2026-08-17 13:45 UTCEPSS rescore
- 2026-08-16 14:55 UTCEPSS rescore
- 2026-08-16 02:13 UTCEPSS rescore
- 2026-08-15 22:07 UTCOSV refresh
- 2026-08-15 01:29 UTCEPSS rescore
- 2026-08-13 21:59 UTCEPSS rescore
- 2026-08-12 13:49 UTCEPSS rescore
- 2026-08-11 13:41 UTCEPSS rescore
- 2026-08-10 23:58 UTCEPSS rescore
- 2026-08-09 13:45 UTCEPSS rescore
- 2026-08-08 16:35 UTCEPSS rescore
- 2026-08-07 16:26 UTCEPSS rescore
- 2026-08-06 13:45 UTCEPSS rescore
- 2026-08-05 19:16 UTCEPSS rescore
- 2026-08-04 15:08 UTCEPSS rescore
- 2026-08-03 10:35 UTCEPSS rescore
- 2026-08-02 02:25 UTCEPSS rescore
- 2026-08-02 02:25 UTCEPSS rescore
- 2026-08-01 04:14 UTCEPSS rescore
- 2026-07-31 15:27 UTCVendor advisory
- 2026-07-31 15:27 UTCGHSA enrichment
- 2026-07-31 14:51 UTCEG score recompute
- 2026-07-31 14:51 UTCVendor advisory
- 2026-07-31 14:51 UTCGHSA enrichment
- 2026-07-30 16:26 UTCEPSS rescore
- 2026-07-30 16:26 UTCEPSS rescore
- 2026-07-30 01:29 UTCEPSS rescore
- 2026-07-28 15:35 UTCEPSS rescore
- 2026-07-28 11:50 UTCOSV refresh
- 2026-07-26 14:53 UTCEPSS rescore
- 2026-07-25 14:17 UTCEPSS rescore
- 2026-07-25 14:17 UTCEPSS rescore
- 2026-07-24 14:16 UTCEPSS rescore
- 2026-07-23 14:17 UTCEPSS rescore
- 2026-07-23 14:17 UTCEPSS rescore
- 2026-07-23 02:45 UTCEG score recompute
- 2026-07-22 14:07 UTCEPSS rescore
- 2026-07-21 15:23 UTCEPSS rescore
- 2026-07-20 17:07 UTCEPSS rescore
- 2026-07-19 14:30 UTCEPSS rescore
- 2026-07-19 14:30 UTCEPSS rescore
- 2026-07-19 02:28 UTCEPSS rescore
- 2026-07-19 02:28 UTCEPSS rescore
- 2026-07-18 10:03 UTCEPSS rescore
- 2026-07-16 17:02 UTCEPSS rescore
- 2026-07-15 16:57 UTCEPSS rescore
- 2026-07-15 01:59 UTCEPSS rescore
- 2026-07-15 01:59 UTCEPSS rescore
- 2026-07-13 22:29 UTCEPSS rescore
- 2026-07-13 06:12 UTCEPSS rescore
- 2026-07-12 05:45 UTCEPSS rescore
- 2026-07-11 08:26 UTCEPSS rescore
- 2026-07-11 03:52 UTCOSV refresh
- 2026-07-09 19:09 UTCEPSS rescore
- 2026-07-09 19:09 UTCEPSS rescore
- 2026-07-08 15:14 UTCEPSS rescore
- 2026-07-07 13:45 UTCEPSS rescore
- 2026-07-07 13:45 UTCEPSS rescore
- 2026-07-06 16:26 UTCEPSS rescore
- 2026-07-06 16:26 UTCEPSS rescore
- 2026-07-06 02:22 UTCEPSS rescore
- 2026-07-05 02:29 UTCEPSS rescore
- 2026-07-04 06:30 UTCEPSS rescore
- 2026-07-04 06:30 UTCEPSS rescore
- 2026-07-01 15:06 UTCEPSS rescore
- 2026-06-30 23:21 UTCEPSS rescore
- 2026-06-30 23:21 UTCEPSS rescore
- 2026-06-29 14:05 UTCEPSS rescore
- 2026-06-28 14:07 UTCEPSS rescore
Frequently asked(5)
What is CVE-2024-5642?
When was CVE-2024-5642 disclosed?
Is CVE-2024-5642 actively exploited?
What is the CVSS score of CVE-2024-5642?
How do I remediate CVE-2024-5642?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2024-5642
Is Your Infrastructure Affected by CVE-2024-5642?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.