CVE-2026-26007
published 2026-02-10CVE-2026-26007: cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 46.0.5, the public_key_from_numbers (or…
PriorityP336medium6.5CVSS 3.1
AVNACLPRNUIRSUCHINAN
EPSS
0.34%
26.6th percentile
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 46.0.5, the public_key_from_numbers (or EllipticCurvePublicNumbers.public_key()), EllipticCurvePublicNumbers.public_key(), load_der_public_key() and load_pem_public_key() functions do not verify that the point belongs to the expected prime-order subgroup of the curve. This missing validation allows an attacker to provide a public key point P from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as S = [victim_private_key]P via ECDH, this leaks information about victim_private_key mod (small_subgroup_order). For curves with cofactor > 1, this reveals the least significant bits of the private key. When these weak public keys are used in ECDSA , it's easy to forge signatures on the small subgroup. Only SECT curves are impacted by this. This vulnerability is fixed in 46.0.5.
Affected
5 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| cryptography.io | cryptography | < 46.0.5 | 46.0.5 |
| cryptography.io | cryptography | >= 0 < 46.0.5 | 46.0.5 |
| debian | python-cryptography | < python-cryptography 46.0.5-1 (forky) | python-cryptography 46.0.5-1 (forky) |
| pyca | cryptography | < 46.0.5 | 46.0.5 |
| ubuntu | python-cryptography | — | — |
CVSS provenance
nvdv3.16.5MEDIUMCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
nvdv4.08.2HIGHCVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
osv8.2HIGH
vendor_debian8.2HIGH
vendor_redhat8.2HIGH
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
VulDB
pyca cryptography up to 46.0.4 data authenticity (GHSA-r6ph-v2qm-q3c2 / Nessus ID 298585)
vuldb·2026-04-15·CVSS 8.2
CVE-2026-26007 [HIGH] pyca cryptography up to 46.0.4 data authenticity (GHSA-r6ph-v2qm-q3c2 / Nessus ID 298585)
A vulnerability was found in pyca cryptography up to 46.0.4. It has been classified as problematic. This issue affects the function EllipticCurvePublicNumbers.public_key/EllipticCurvePublicNumbers.public_key/load_der_public_key/load_pem_public_key. The manipulation leads to insufficient verification of data authenticity.
This vulnerability is documented as CVE-2026-26007. The attack can be initiated remotely. There is not any exploit available.
Upgrading the affected component is recommended.
OSV
cryptography Vulnerable to a Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
osv·2026-02-10
CVE-2026-26007 [HIGH] cryptography Vulnerable to a Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
cryptography Vulnerable to a Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
## Vulnerability Summary
The `public_key_from_numbers` (or `EllipticCurvePublicNumbers.public_key()`), `EllipticCurvePublicNumbers.public_key()`, `load_der_public_key()` and `load_pem_public_key()` functions do not verify that the point belongs to the expected prime-order subgroup of the curve.
This missing validation allows an attacker to provide a public key point `P` from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as `S = [victim_private_key]P` via ECDH, this leaks information about `victim_private_key mod (small_su
GHSA
cryptography Vulnerable to a Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
ghsa·2026-02-10
CVE-2026-26007 [HIGH] CWE-345 cryptography Vulnerable to a Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
cryptography Vulnerable to a Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
## Vulnerability Summary
The `public_key_from_numbers` (or `EllipticCurvePublicNumbers.public_key()`), `EllipticCurvePublicNumbers.public_key()`, `load_der_public_key()` and `load_pem_public_key()` functions do not verify that the point belongs to the expected prime-order subgroup of the curve.
This missing validation allows an attacker to provide a public key point `P` from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as `S = [victim_private_key]P` via ECDH, this leaks information about `victim_private_key mod (small_su
OSV
CVE-2026-26007: cryptography is a package designed to expose cryptographic primitives and recipes to Python developers
osv·2026-02-10·CVSS 8.2
CVE-2026-26007 [HIGH] CVE-2026-26007: cryptography is a package designed to expose cryptographic primitives and recipes to Python developers
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 46.0.5, the public_key_from_numbers (or EllipticCurvePublicNumbers.public_key()), EllipticCurvePublicNumbers.public_key(), load_der_public_key() and load_pem_public_key() functions do not verify that the point belongs to the expected prime-order subgroup of the curve. This missing validation allows an attacker to provide a public key point P from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as S = [victim_private_key]P via ECDH, this leaks information about victim_private_key mod (small_subgroup_order). For
Ubuntu
python-cryptography vulnerability
vendor_ubuntu·2026-04-28
CVE-2026-26007 python-cryptography vulnerability
Title: python-cryptography vulnerability
Summary: python-cryptography could be made to expose sensitive information over the
network.
USN-8087-1 fixed a vulnerability in python-cryptography. This update
provides the corresponding update to Ubuntu 16.04 LTS, Ubuntu 18.04 LTS,
and Ubuntu 20.04 LTS.
Original advisory details:
It was discovered that python-cryptography incorrectly handled subgroup
validation for SECT curves. A remote attacker could use this issue to
perform a subgroup attack and possibly recover the least significant bits
of private keys.
Instructions: In general, a standard system update will make all the necessary changes.
Ubuntu
python-cryptography vulnerability
vendor_ubuntu·2026-03-12
CVE-2026-26007 python-cryptography vulnerability
Title: python-cryptography vulnerability
Summary: python-cryptography could be made to expose sensitive information over the
network.
It was discovered that python-cryptography incorrectly handled subgroup
validation for SECT curves. A remote attacker could use this issue to
perform a subgroup attack and possibly recover the least significant bits
of private keys.
Instructions: In general, a standard system update will make all the necessary changes.
Red Hat
cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
vendor_redhat·2026-02-10·CVSS 8.2
CVE-2026-26007 [HIGH] CWE-354 cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 46.0.5, the public_key_from_numbers (or EllipticCurvePublicNumbers.public_key()), EllipticCurvePublicNumbers.public_key(), load_der_public_key() and load_pem_public_key() functions do not verify that the point belongs to the expected prime-order subgroup of the curve. This missing validation allows an attacker to provide a public key point P from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as S = [victim_private_
Debian
CVE-2026-26007: python-cryptography - cryptography is a package designed to expose cryptographic primitives and recipe...
vendor_debian·2026·CVSS 8.2
CVE-2026-26007 [HIGH] CVE-2026-26007: python-cryptography - cryptography is a package designed to expose cryptographic primitives and recipe...
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 46.0.5, the public_key_from_numbers (or EllipticCurvePublicNumbers.public_key()), EllipticCurvePublicNumbers.public_key(), load_der_public_key() and load_pem_public_key() functions do not verify that the point belongs to the expected prime-order subgroup of the curve. This missing validation allows an attacker to provide a public key point P from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as S = [victim_private_key]P via ECDH, this leaks information about victim_private_key mod (small_subgroup_order). For
No detection rules found.
No public exploits indexed.
Bugzilla
CVE-2026-26007 cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
bugzilla·2026-02-10·CVSS 8.2
CVE-2026-26007 [HIGH] CVE-2026-26007 cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
CVE-2026-26007 cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT Curves
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 46.0.5, the public_key_from_numbers (or EllipticCurvePublicNumbers.public_key()), EllipticCurvePublicNumbers.public_key(), load_der_public_key() and load_pem_public_key() functions do not verify that the point belongs to the expected prime-order subgroup of the curve. This missing validation allows an attacker to provide a public key point P from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as S = [
Wiz
CVE-2026-26007 Impact, Exploitability, and Mitigation Steps | Wiz
blogs_wiz·CVSS 8.2
CVE-2026-26007 [HIGH] CVE-2026-26007 Impact, Exploitability, and Mitigation Steps | Wiz
## CVE-2026-26007 :
Python vulnerability analysis and mitigation
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 46.0.5, the public_key_from_numbers (or EllipticCurvePublicNumbers.public_key()), EllipticCurvePublicNumbers.public_key(), load_der_public_key() and load_pem_public_key() functions do not verify that the point belongs to the expected prime-order subgroup of the curve. This missing validation allows an attacker to provide a public key point P from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as S = [victim_private_key]P via ECDH, this leaks i
https://github.com/pyca/cryptography/commit/0eebb9dbb6343d9bc1d91e5a2482ed4e054a6d8chttps://github.com/pyca/cryptography/security/advisories/GHSA-r6ph-v2qm-q3c2http://www.openwall.com/lists/oss-security/2026/02/10/4https://access.redhat.com/errata/RHSA-2026:10184https://access.redhat.com/errata/RHSA-2026:12176https://access.redhat.com/errata/RHSA-2026:13512https://access.redhat.com/errata/RHSA-2026:13545https://access.redhat.com/errata/RHSA-2026:13553https://access.redhat.com/errata/RHSA-2026:13672https://access.redhat.com/errata/RHSA-2026:19355https://access.redhat.com/errata/RHSA-2026:21431https://access.redhat.com/errata/RHSA-2026:21517https://access.redhat.com/errata/RHSA-2026:22330https://access.redhat.com/errata/RHSA-2026:22993https://access.redhat.com/errata/RHSA-2026:2694https://access.redhat.com/errata/RHSA-2026:5168https://access.redhat.com/errata/RHSA-2026:5665https://access.redhat.com/errata/RHSA-2026:6308https://access.redhat.com/errata/RHSA-2026:6309https://access.redhat.com/errata/RHSA-2026:6497https://access.redhat.com/errata/RHSA-2026:6567https://access.redhat.com/errata/RHSA-2026:6568https://access.redhat.com/errata/RHSA-2026:7295https://access.redhat.com/security/cve/CVE-2026-26007https://bugzilla.redhat.com/show_bug.cgi?id=2438762https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-26007.json
2026-02-10
Published