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-22700: CWE-20: Improper Input Validation in RustCrypto elliptic-curves

0
High
VulnerabilityCVE-2026-22700cvecve-2026-22700cwe-20
Published: Sat Jan 10 2026 (01/10/2026, 05:17:25 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 public-key encryption (PKE) implementation: the decrypt() path performs unchecked slice::split_at operations on input buffers derived from untrusted ciphertext. An attacker can submit short/undersized ciphertext or carefully-crafted DER-encoded structures to trigger bounds-check panics (Rust unwinding) which crash the calling thread or process. This issue has been patched via commit e60e991.

AI-Powered Analysis

AILast updated: 01/10/2026, 05:43:50 UTC

Technical Analysis

CVE-2026-22700 identifies a denial-of-service vulnerability in the RustCrypto elliptic-curves library, specifically in the SM2 public-key encryption implementation within versions 0.14.0-pre.0 and 0.14.0-rc.0. The vulnerability arises from improper input validation (CWE-20) where the decrypt() function performs unchecked slice::split_at operations on input buffers derived from untrusted ciphertext. This lack of bounds checking allows an attacker to submit crafted short or malformed DER-encoded ciphertexts that cause Rust's slice splitting to panic due to out-of-bounds access. The panic triggers Rust's unwinding mechanism, crashing the thread or process executing the decryption. Since the vulnerability affects availability by causing denial of service but does not compromise confidentiality or integrity, it is classified with a CVSS v3.1 score of 7.5 (high severity). The vulnerability is remotely exploitable without requiring privileges or user interaction, increasing its risk profile. The flaw has been addressed in subsequent patches, notably via commit e60e991, which presumably adds proper input validation and bounds checking to prevent panics. The RustCrypto elliptic-curves library is widely used for general-purpose elliptic curve cryptography, including key representations and cryptographic operations, making this vulnerability relevant to any software leveraging this library for SM2 encryption. The SM2 algorithm is a Chinese national standard for public-key cryptography, so usage may be more prevalent in applications targeting or interoperating with Chinese cryptographic standards. However, the RustCrypto library is open source and globally used, so the vulnerability has broader implications. The vulnerability's root cause is the failure to validate input lengths before performing slice operations, a common source of runtime panics in Rust when working with unsafe or unchecked code paths. This highlights the importance of defensive programming and input validation in cryptographic libraries to maintain availability and robustness.

Potential Impact

For European organizations, the primary impact of CVE-2026-22700 is on the availability of services that rely on the vulnerable RustCrypto elliptic-curves library for SM2 decryption. Exploitation can cause application or service crashes, potentially leading to denial of service conditions in critical systems such as secure communications, authentication services, or cryptographic middleware. Although confidentiality and integrity are not directly compromised, repeated or targeted exploitation could disrupt business operations, degrade user trust, and increase incident response costs. Organizations using SM2 encryption, particularly in sectors like finance, telecommunications, or government where cryptographic standards compliance is critical, may face operational risks. The vulnerability's remote exploitability without authentication means attackers can trigger crashes without prior access, increasing exposure. Additionally, the presence of this vulnerability could be leveraged as part of a larger attack chain to cause service interruptions or to distract defenders while other attacks proceed. Given the growing adoption of Rust in security-sensitive applications, the vulnerability underscores the need for rigorous supply chain and dependency management. European entities integrating RustCrypto elliptic-curves in their software stacks must assess their exposure and prioritize remediation to maintain service continuity and compliance with cybersecurity regulations such as NIS2.

Mitigation Recommendations

To mitigate CVE-2026-22700, European organizations should immediately identify and inventory all software components and applications using RustCrypto elliptic-curves versions 0.14.0-pre.0 or 0.14.0-rc.0, especially those employing SM2 encryption. The primary mitigation is to upgrade to the patched version of the library where the vulnerability has been fixed (post-commit e60e991). If upgrading is not immediately feasible, implement input validation at the application layer to ensure ciphertext buffers meet expected length and format requirements before passing them to the decrypt() function. Employ robust error handling to gracefully catch and recover from panics or exceptions triggered by malformed inputs, preventing process crashes. Incorporate fuzz testing and static analysis tools focused on input validation and boundary conditions in cryptographic code. Monitor application logs and runtime metrics for unusual crashes or panics indicative of exploitation attempts. For critical systems, consider deploying runtime protections such as process supervisors or container orchestration features that automatically restart crashed services to minimize downtime. Finally, maintain awareness of supply chain security best practices to track and promptly apply updates to third-party cryptographic libraries.

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: 6961e3b319784dcf52ed6559

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

Last enriched: 1/10/2026, 5:43:50 AM

Last updated: 1/10/2026, 10:09:16 PM

Views: 9

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