CVE-2022-3358:
Using a Custom Cipher with `NID_undef` may lead to NULL encryption
7.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.94341%
CWE
Published
10/11/2022
Updated
2/5/2024
KEV Status
No
Technology
Rust
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
openssl-src | rust | >= 300.0.0, < 300.0.10 | 300.0.10 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from initialization functions (EVP_*Init_ex2) incorrectly fetching ciphers from providers instead of using custom ciphers directly. When a custom cipher is created with EVP_CIPHER_meth_new(NID_undef), these initialization functions match it to the NULL cipher through provider lookup. The commit diff shows fixes in evp_cipher_init_internal (called by these functions) that add checks for cipher origin (EVP_ORIG_METH), confirming the vulnerable code path was in these initialization functions. The vulnerability documentation explicitly names these functions as entry points for the flawed behavior.