Skip to main content
Press slash or control plus K to focus the search. Use the arrow keys to navigate results and press enter to open a threat.
Reconnecting to live updates…

CVE-2026-22699: CWE-20: Improper Input Validation in RustCrypto elliptic-curves

0
High
VulnerabilityCVE-2026-22699cvecve-2026-22699cwe-20
Published: Sat Jan 10 2026 (01/10/2026, 05:17:22 UTC)
Source: CVE Database V5
Vendor/Project: RustCrypto
Product: elliptic-curves

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

AI-Powered Analysis

AILast updated: 01/10/2026, 05:44:05 UTC

Technical Analysis

CVE-2026-22699 identifies a denial-of-service vulnerability in the RustCrypto elliptic-curves library, specifically affecting versions 0.14.0-pre.0 and 0.14.0-rc.0. RustCrypto provides general-purpose elliptic curve cryptography support, including types and traits for elliptic curve points, scalars, and keys. The vulnerability exists in the SM2 public key encryption (PKE) decryption path, where the code attempts to decode an elliptic curve point (C1) using AffinePoint::from_encoded_point(&encoded_c1). This function may return None (CtOption::None) if the input coordinates, while syntactically valid, do not lie on the SM2 curve. The affected code improperly uses .unwrap() on this result without checking for None, causing a panic and thus a denial-of-service condition when invalid points are supplied. This flaw allows an attacker to send crafted ciphertexts with invalid points to crash the application performing the decryption. The vulnerability does not compromise confidentiality or integrity but impacts availability by causing application crashes. It requires no privileges or user interaction to exploit and can be triggered remotely. The issue was addressed in a patch that removes the unsafe unwrap and adds proper validation and error handling. No known exploits are currently reported in the wild. The CVSS v3.1 score is 7.5, indicating a high severity due to network vector, low attack complexity, no privileges required, and no user interaction needed, with impact limited to availability.

Potential Impact

For European organizations, this vulnerability poses a risk primarily to availability. Systems using the affected RustCrypto elliptic-curves library versions in their cryptographic operations, particularly those implementing SM2 PKE, may be susceptible to denial-of-service attacks. This can lead to application crashes, service interruptions, and potential operational downtime. Industries relying on secure communications, such as finance, telecommunications, and government sectors, could experience disruptions if their cryptographic libraries are vulnerable. Although confidentiality and integrity are not directly impacted, the availability loss can degrade trust and service reliability. Organizations using Rust-based cryptographic solutions or third-party software incorporating these versions should assess their exposure. The lack of required authentication or user interaction increases the risk of remote exploitation, making public-facing services particularly vulnerable. The absence of known exploits suggests limited current active threat, but the ease of triggering the issue warrants prompt remediation to avoid future attacks.

Mitigation Recommendations

1. Upgrade immediately to a patched version of RustCrypto elliptic-curves beyond 0.14.0-rc.0 where the unwrap issue is fixed. 2. Audit all cryptographic components and dependencies in your software supply chain to identify usage of the vulnerable versions. 3. Implement additional input validation and error handling around elliptic curve point decoding to prevent unhandled panics. 4. Employ runtime monitoring and alerting for application crashes or unusual termination patterns in cryptographic modules. 5. For critical systems, consider deploying rate limiting or input sanitization on endpoints accepting SM2 encrypted data to reduce attack surface. 6. Engage with software vendors and development teams to ensure secure coding practices that avoid unsafe unwraps or unchecked assumptions in cryptographic code. 7. Conduct penetration testing focusing on malformed cryptographic inputs to validate resilience against denial-of-service conditions. 8. Maintain an updated inventory of cryptographic libraries and their versions to facilitate rapid vulnerability response.

Need more detailed analysis?Upgrade to Pro Console

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2026-01-08T19:23:09.856Z
Cvss Version
3.1
State
PUBLISHED

Threat ID: 6961e3b319784dcf52ed6554

Added to database: 1/10/2026, 5:29:23 AM

Last enriched: 1/10/2026, 5:44:05 AM

Last updated: 1/10/2026, 10:08:14 PM

Views: 17

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats