Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify app on Python 3.14.10 in OpenSSL FIPS mode
-
ExploitInvoke hashlib with usedforsecurity=True
-
ImpactFIPS algorithm enforcement regression breaks integrity guarantee
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Protection mechanism completeness
|
| Exploitation Conditions | Three concrete, simultaneous prerequisites are required: (1) OpenSSL must be configured in FIPS mode - the description states 'Only users that are using OpenSSL in FIPS mode are affected'; (2) the interpreter must be exactly Python 3.14.10, as 'all other Python versions are unaffected'; and (3) code must invoke the hashlib module requesting security use (usedforsecurity=True), the exact path fixed in the patch (fetching the '-fips' property). These conditions sharply limit real-world exposure: FIPS mode is a non-default, regulated-environment configuration, and only a single point release is affected, so the vast majority of Python deployments are not at risk. The CVSS AT:P flag reflects this FIPS-mode dependency as a condition outside the attacker's control. |
| Impact | The vendor CVSS 4.0 base score of 8.2 (AV:N/AC:L/AT:P/PR:N/UI:N) is driven almost entirely by a single High integrity impact (VI:H) with no confidentiality or availability impact (VC:N/VA:N) and no subsequent-system impact (SC/SI/SA:N). The AT:P flag signals that exploitation requires a condition outside the attacker's control, which the description makes explicit: OpenSSL must be running in FIPS mode and the interpreter must be exactly Python 3.14.10 - every other Python version is unaffected. No EPSS score is provided in the input, so exploitation probability cannot be quantified. There is no CISA KEV listing and no public exploit or PoC reference (the only linked code is the vendor's fix PR), so exploitation status is 'no public exploit identified at time of analysis.' The vuln.today decision label is 'this_week,' consistent with a patch-available, moderate-urgency integrity regression rather than an emergency. Net assessment: this is a genuine but tightly scoped integrity/compliance defect, not a broad high-risk remote vulnerability - real priority is limited to organizations running the single affected release in OpenSSL FIPS mode (typically regulated/government environments). Note a data conflict: the 'Information Disclosure' tag contradicts the CVSS vector, which shows VC:N (no confidentiality impact) and VI:H, i.e. this is an integrity/FIPS-enforcement issue, not information disclosure. |
| Exploit ScenarioDerived | In an environment running Python 3.14.10 against OpenSSL in FIPS mode, an application calls hashlib with usedforsecurity=True expecting FIPS-approved-algorithm enforcement; due to the inverted FIPS-property logic the enforcement does not behave as intended, undermining the cryptographic/compliance integrity guarantee. Because the vector is AV:N/AC:L but gated by AT:P, the flaw manifests under the specific FIPS deployment condition rather than through a crafted remote attack. No public exploit or PoC code exists at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 06, 2026
FIPS algorithm enforcement in CPython 3.14.10's hashlib module can fail for hash requests made with usedforsecurity=True when the interpreter is running against OpenSSL in FIPS mode, undermining the integrity guarantee that callers expect from FIPS-validated digests. Only Python 3.14.10 is affected, all other Python versions are unaffected, and exposure is further limited to non-default OpenSSL FIPS deployments. No public exploit identified at time of analysis, while an upstream fix is available in PR 160984 and the vendor advisory reports patch availability, though a released patched version is not independently confirmed.
RemediationAI
Apply the upstream fix in PR 160984, which corrects the inverted FIPS property handling in Modules/_hashopenssl.c by computing fips = !disable_fips, and deploy a CPython 3.14.10 build containing that change. The provided data reports vendor patch availability, but an exact patched release version is not listed, so confirm the release containing the fix with the Python security advisory at https://mail.python.org/archives/list/security-announce@python.org/thread/PXVTTOBPUMFJSSUXN6XCS7FC5DZOSZXK/ and track the issue at https://github.com/python/cpython/issues/160923. If an immediate upgrade or rebuilt interpreter is not possible, do not run CPython 3.14.10 with OpenSSL in FIPS mode where hashlib usedforsecurity=True is relied upon; this removes exposure to the regression but also removes FIPS-mode operation for that interpreter, so it is a containment measure and not equivalent to applying the fix. After remediation, verify in a FIPS-enabled test environment that hashlib with usedforsecurity=True correctly enforces the OpenSSL FIPS provider property.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is in CPython's _hashopenssl extension, which maps hashlib digest requests to OpenSSL implementations and consults OpenSSL FIPS provider properties when usedforsecurity=True. The supplied patch shows the 3.14.10 code assigned the result of disable_fips_property() directly to a variable named fips; the fix renames that result to disable_fips and computes fips = !disable_fips, confirming an inverted FIPS property handling regression rather than a memory-safety class issue. No CWE is provided. The CPE string cpe:2.3:a:python_software_foundation:cpython:*:*:*:*:*:*:*:* is wildcarded across CPython releases, so the authoritative advisory scoping to exactly Python 3.14.10 is essential. The vendor CVSS 4.0 vector AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N scores 8.2, with AT:P representing the OpenSSL FIPS-mode prerequisite; the independent assessment records CVSS 3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N, retaining integrity-only impact. The feed tag 'Information Disclosure' is not corroborated by the assessed confidentiality impact of C:N, and the sources do not describe a concrete remote attack sequence beyond the affected hashlib/FIPS code path.
Know when OpenSSL gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
AC:H captures the FIPS-mode and single-version precondition (mapped from 4.0 AT:P); impact is integrity-only (I:H), with no confidentiality or availability effect, hence C:N/A:N.
Primary rating from Vendor (PSF).
CVSS VectorVendor: PSF
DescriptionCVE.org
There was a regression in how FIPS algorithms were enforced for the hashlib module. Only users that are using OpenSSL in FIPS mode are affected. Only Python 3.14.10 is affected, all other Python versions are unaffected.
Articles & Coverage 1
Executive ViewAI
A high-severity integrity flaw in CPython 3.14.10 could allow applications relying on FIPS-validated cryptography to receive non-compliant hash results, potentially undermining regulatory compliance and security assurances. Only organizations running this specific Python version against a FIPS-enabled OpenSSL are exposed, but those that do face a serious risk to any integrity-dependent processes, such as secure logging or digital signatures.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe
In order to decrypt SM2 encrypted data an application is expected to call the API function EVP_PKEY_decrypt(). Rated cri
The dtls1_reassemble_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
The SSLv2 protocol, as used in OpenSSL before 1.0.1s and 1.0.2 before 1.0.2g and other products, requires a server to se
The ssl3_get_key_exchange function in s3_clnt.c in OpenSSL before 0.9.8zd, 1.0.0 before 1.0.0p, and 1.0.1 before 1.0.1k
In addition to the c_rehash shell command injection identified in CVE-2022-1292, further circumstances where the c_rehas
The TLS protocol 1.2 and earlier, when a DHE_EXPORT ciphersuite is enabled on a server but not on a client, does not pro
The SSL protocol 3.0, as used in OpenSSL through 1.0.1i and other products, uses nondeterministic CBC padding, which mak
The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a
The X509_verify_cert function in crypto/x509/x509_vfy.c in OpenSSL 1.0.1n, 1.0.1o, 1.0.2b, and 1.0.2c does not properly
A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Rated hig
EUVD-2026-118275
GHSA-vq78-g94j-3ppp
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB