cryptography before 46.0.5: Missing subgroup validation in public key imports
CVE-2026-26007 Published on February 10, 2026
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_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.
Vulnerability Analysis
CVE-2026-26007 can be exploited with network access, and does not require authorization privileges or user interaction. This vulnerability is consided to have a high level of attack complexity. The potential impact of an exploit of this vulnerability is considered to have a high impact on confidentiality and integrity, and no impact on availability.
Weakness Types
Insufficient Verification of Data Authenticity
The software does not sufficiently verify the origin or authenticity of data, in a way that causes it to accept invalid data.
Improper Validation of Integrity Check Value
The software does not validate or incorrectly validates the integrity check values or "checksums" of a message. This may prevent it from detecting if the data has been modified or corrupted in transmission. Improper validation of checksums before use results in an unnecessary risk that can easily be mitigated. The protocol specification describes the algorithm used for calculating the checksum. It is then a simple matter of implementing the calculation and verifying that the calculated checksum and the received checksum match. Improper verification of the calculated checksum and the received checksum can lead to far greater consequences.
Products Associated with CVE-2026-26007
You can be notified by email with stack.watch whenever vulnerabilities like CVE-2026-26007 are published in these products:
Affected Versions
pyca cryptography:- Version < 46.0.5 is affected.
- Version 0:4.6.28-3.el8ap and below * is unaffected.
- Version 0:4.6.28-3.el9ap and below * is unaffected.
- Version 0:4.2.1-129.el8_10.25 and below * is unaffected.
- Version 0:4.10.0-110.el9_8.2 and below * is unaffected.
- Version 0:4.10.0-98.el9_7.12 and below * is unaffected.
- Version 0:4.10.0-43.el9_2.21 and below * is unaffected.
- Version 0:4.10.0-62.el9_4.24 and below * is unaffected.
- Version 0:4.10.0-86.el9_6.16 and below * is unaffected.
- Version 1774446874 and below * is unaffected.
- Version 1777403872 and below * is unaffected.
- Version 1774414699 and below * is unaffected.
- Version 1777296732 and below * is unaffected.
- Version 1774417022 and below * is unaffected.
- Version 1777398576 and below * is unaffected.
- Version 1774363040 and below * is unaffected.
- Version 1777387242 and below * is unaffected.
- Version 1777311601 and below * is unaffected.
- Version 1774644659 and below * is unaffected.
- Version 1770913597 and below * is unaffected.
- Version 46.0.7-1.hum1 and below * is unaffected.
- Version 1776338381 and below * is unaffected.
- Version 1776343111 and below * is unaffected.
- Version 1776257621 and below * is unaffected.
- Version 1776413275 and below * is unaffected.
- Version 1776243239 and below * is unaffected.
- Version 1776243238 and below * is unaffected.
- Version 1776243299 and below * is unaffected.
- Version 1776243249 and below * is unaffected.
- Version 1776243309 and below * is unaffected.
- Version 1776336652 and below * is unaffected.
- Version 1776319193 and below * is unaffected.
- Version 1776319213 and below * is unaffected.
- Version 1776319200 and below * is unaffected.
- Version 1776319190 and below * is unaffected.
- Version 1776319179 and below * is unaffected.
- Version 1776319185 and below * is unaffected.
- Version 1776318795 and below * is unaffected.
- Version 1776319453 and below * is unaffected.
- Version 1776336534 and below * is unaffected.
- Version 1776319275 and below * is unaffected.
- Version 1773971077 and below * is unaffected.
- Version 1775169219 and below * is unaffected.
- Version 1775069491 and below * is unaffected.
- Version 1775169226 and below * is unaffected.
- Version 1773936323 and below * is unaffected.
- Version 1780492008 and below * is unaffected.
Vulnerable Packages
The following package name and versions may be associated with CVE-2026-26007
| Package Manager | Vulnerable Package | Versions | Fixed In |
|---|---|---|---|
| pip | cryptography | <= 46.0.4 | 46.0.5 |
Exploit Probability
EPSS (Exploit Prediction Scoring System) scores estimate the probability that a vulnerability will be exploited in the wild within the next 30 days. The percentile shows you how this score compares to all other vulnerabilities.