CVE-2026-22698
CVE-2026-22698 is a high-severity vulnerability in Rustcrypto Sm2 Elliptic Curve with a CVSS 3.x base score of 7.5. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-331.
Key facts
- Severity: High (CVSS 3.x base score 7.5)
- CVSS v4: 8.7
- EPSS exploit prediction: 0% (16th percentile)
- Actively exploited: Not listed in CISA KEV
- EU (EUVD) id: EUVD-2026-1876
- Weakness: CWE-331
- Affected product: Rustcrypto Sm2 Elliptic Curve
- Published:
- Last modified:
Description
RustCrypto: Elliptic Curves is general purpose Elliptic Curve Cryptography (ECC) support, including types and traits for representing various elliptic curve forms, scalars, points, and public/secret keys composed thereof. In versions 0.14.0-pre.0 and 0.14.0-rc.0, a critical vulnerability exists in the SM2 Public Key Encryption (PKE) implementation where the ephemeral nonce k is generated with severely reduced entropy. A unit mismatch error causes the nonce generation function to request only 32 bits of randomness instead of the expected 256 bits. This reduces the security of the encryption from a 128-bit level to a trivial 16-bit level, allowing a practical attack to recover the nonce k and decrypt any ciphertext given only the public key and ciphertext. This issue has been patched via commit e4f7778.
Frequently asked questions
- What is CVE-2026-22698?
- RustCrypto: Elliptic Curves is general purpose Elliptic Curve Cryptography (ECC) support, including types and traits for representing various elliptic curve forms, scalars, points, and public/secret keys composed thereof. In versions 0.14.0-pre.0 and 0.14.0-rc.0, a critical vulnerability exists in the SM2 Public Key Encryption (PKE) implementation where the ephemeral nonce k is generated with severely reduced entropy. A unit mismatch error causes the nonce generation function to request only 32 bits of randomness instead of the expected 256 bits. This reduces the security of the encryption from a 128-bit level to a trivial 16-bit level, allowing a practical attack to recover the nonce k and decrypt any ciphertext given only the public key and ciphertext. This issue has been patched via commit e4f7778.
- How severe is CVE-2026-22698?
- CVE-2026-22698 has a CVSS 3.x base score of 7.5, rated high severity. It is exploitable over network with low attack complexity, requires no privileges and no user interaction. Impact on confidentiality is high, integrity none, and availability none.
- Is CVE-2026-22698 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (16th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-22698?
- CVE-2026-22698 primarily affects Rustcrypto Sm2 Elliptic Curve. In total, 2 product configurations (CPEs) are listed as vulnerable; see the affected-products list for the exact versions.
- How do I fix CVE-2026-22698?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its high severity, prioritise patching exposed systems.
- Does CVE-2026-22698 have an EU (EUVD) identifier?
- Yes. CVE-2026-22698 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2026-1876.
- When was CVE-2026-22698 published?
- CVE-2026-22698 was published on 2026-01-10 and last updated on 2026-06-17.
References
- https://crates.io/crates/sm2/0.14.0-pre.0
- https://crates.io/crates/sm2/0.14.0-rc.0
- https://github.com/RustCrypto/elliptic-curves/commit/4781762f23ff22ab34763410f648128055c93731
- https://github.com/RustCrypto/elliptic-curves/commit/e4f77788130d065d760e57fb109370827110a525
- https://github.com/RustCrypto/elliptic-curves/pull/1600
- https://github.com/RustCrypto/elliptic-curves/security/advisories/GHSA-w3g8-fp6j-wvqw
Affected products (2)
- cpe:2.3:a:rustcrypto:sm2_elliptic_curve:0.14.0:pre0:*:*:*:rust:*:*
- cpe:2.3:a:rustcrypto:sm2_elliptic_curve:0.14.0:rc0:*:*:*:rust:*:*
More vulnerabilities in Rustcrypto Sm2 Elliptic Curve
- CVE-2026-22700 — High (CVSS 7.5): RustCrypto: Elliptic Curves is general purpose Elliptic Curve Cryptography (ECC) support, including types and traits…
- CVE-2026-22699 — High (CVSS 7.5): RustCrypto: Elliptic Curves is general purpose Elliptic Curve Cryptography (ECC) support, including types and traits…
All CVEs affecting Rustcrypto Sm2 Elliptic Curve →
Other CWE-331 vulnerabilities
- CVE-2020-36925 — Critical (CVSS 9.8): Arteco Web Client DVR/NVR contains a session hijacking vulnerability with insufficient session ID complexity that…
- CVE-2025-47781 — Critical (CVSS 9.8): Rallly is an open-source scheduling and collaboration tool. Versions up to and including 3.22.1 of the application…
- CVE-2024-47945 — Critical (CVSS 9.8): The devices are vulnerable to session hijacking due to insufficient entropy in its session ID generation algorithm.…
- CVE-2024-25730 — Critical (CVSS 9.8): Hitron CODA-4582 and CODA-4589 devices have default PSKs that are generated from 5-digit hex values concatenated with a…
- CVE-2023-49599 — Critical (CVSS 9.8): An insufficient entropy vulnerability exists in the salt generation functionality of WWBN AVideo dev master commit…
- CVE-2022-34294 — Critical (CVSS 9.8): totd 1.5.3 uses a fixed UDP source port in upstream queries sent to DNS resolvers. This allows DNS cache poisoning…