CVE-2026-22700
HighSummary
In RustCrypto: Elliptic Curves versions 0.14.0-pre.0 and 0.14.0-rc.0, a denial-of-service vulnerability exists in the SM2 public-key encryption implementation. The decrypt() function performs unchecked slice::split_at operations on buffers derived from untrusted ciphertext, which can trigger bounds-check panics and crash the calling thread or process.
Risk Assessment
An attacker can submit short or specially crafted ciphertext to cause a crash, leading to denial of service. This can be exploited remotely if the application processes untrusted encrypted data.
Recommendation
Upgrade the library to a patched version (commit e60e991) or later immediately. If upgrading is not possible, restrict access to the decryption function and validate the length and structure of ciphertext before processing.
Other vulnerabilities in RustCrypto: Elliptic Curves
Original NVD description (English source)
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.

