Katalog CVE

CVE-2026-22698

Wysokie
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W bibliotece RustCrypto: Elliptic Curves występuje krytyczna podatność w implementacji szyfrowania klucza publicznego SM2, gdzie tymczasowy nonce k jest generowany z poważnie ograniczoną entropią. Błąd dopasowania jednostek powoduje, że funkcja generująca nonce żąda jedynie 32 bitów losowości zamiast oczekiwanych 256 bitów.

Ocena ryzyka

Obniżenie poziomu bezpieczeństwa szyfrowania z 128 bitów do zaledwie 16 bitów stwarza możliwość przeprowadzenia praktycznego ataku, który pozwala na odzyskanie nonce k i odszyfrowanie dowolnego szyfrogramu przy użyciu jedynie klucza publicznego i szyfrogramu.

Rekomendacja

Zaleca się aktualizację do wersji, w której wprowadzono poprawkę, aby zabezpieczyć implementację przed tymi atakami.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS