Cyber Resilience

CVE-2026-22699

HighPublic PoC

Published: 10 January 2026

Published
10 January 2026
Modified
22 January 2026
KEV Added
Patch
CVSS Score v3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
EPSS Score 0.0015 34.8th percentile
Risk Priority 15 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2026-22699 is a high-severity Improper Input Validation (CWE-20) vulnerability in Rustcrypto Sm2 Elliptic Curve. Its CVSS base score is 7.5 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Application or System Exploitation (T1499.004); ranked at the 34.8th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified are NIST 800-53 SI-10 (Information Input Validation) and SI-11 (Error Handling).

Deeper analysis

CVE-2026-22699 is a denial-of-service vulnerability in the RustCrypto elliptic-curves library, which provides general-purpose elliptic curve cryptography support including types and traits for elliptic curves, scalars, points, and keys. The issue affects versions 0.14.0-pre.0 and 0.14.0-rc.0 specifically in the SM2 PKE decryption path, where an invalid elliptic-curve point (C1) with syntactically valid but off-curve coordinates is decoded. The AffinePoint::from_encoded_point function may return None, but the calling code uses unwrap(), triggering a panic.

Attackers can exploit this remotely over a network with low complexity and no privileges or user interaction required, as indicated by the CVSS 3.1 score of 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H). By supplying crafted input to the SM2 decryption function, an unauthenticated remote attacker can cause the affected application to panic, resulting in denial of service through crashed processes or services.

The vulnerability has been patched in commit 085b7be, as detailed in the GitHub security advisory GHSA-78p6-6878-8mj6, pull request 1602, and the commit itself. Security practitioners should update to a patched version of the elliptic-curves crate beyond the affected pre-release versions to mitigate the issue.

EU & UK References

Vulnerability details

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 denial-of-service vulnerability exists in the SM2…

more

PKE decryption path where an invalid elliptic-curve point (C1) is decoded and the resulting value is unwrapped without checking. Specifically, AffinePoint::from_encoded_point(&encoded_c1) may return a None/CtOption::None when the supplied coordinates are syntactically valid but do not lie on the SM2 curve. The calling code previously used .unwrap(), causing a panic when presented with such input. This issue has been patched via commit 085b7be.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise TechniquesAI

T1499.004 Application or System Exploitation Impact
Adversaries may exploit software vulnerabilities that can cause an application or system to crash and deny availability to users.
Why these techniques?

Remote unauthenticated input triggers panic in crypto library, enabling application DoS via exploitation.

Confidence: HIGH · MITRE ATT&CK Enterprise v18.1

CVEs Like This One

CVE-2026-22700Same product: Rustcrypto Sm2 Elliptic Curve
CVE-2026-22698Same product: Rustcrypto Sm2 Elliptic Curve
CVE-2026-22862Shared CWE-20
CVE-2026-22868Shared CWE-20
CVE-2025-70123Shared CWE-20
CVE-2025-61616Shared CWE-20
CVE-2026-22565Shared CWE-20
CVE-2026-33218Shared CWE-20
CVE-2025-59032Shared CWE-20
CVE-2026-27623Shared CWE-20

Affected Assets

rustcrypto
sm2 elliptic curve
0.14.0

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

prevent

Flaw remediation requires timely patching of the elliptic-curves library to the version fixing the unwrap panic in SM2 decryption, directly eliminating the DoS vulnerability.

prevent

Proper error handling prevents panics from invalid elliptic curve points by replacing unwrap with safe checks during SM2 PKE decryption.

prevent

Information input validation ensures encoded elliptic curve points (C1) are verified to lie on the SM2 curve before processing, blocking crafted invalid inputs.

References