CVE-2023-30590

HIGHCVSS 7.5/10EPSS 1.46%

Last modified

CVE-2023-30590 is a high-severity vulnerability rated 7.5/10 on the CVSS scale. The generateKeys() API function returned from crypto.createDiffieHellman() only generates missing (or outdated) keys, that is, it only generates a private key if none has been set yet, but the function is also needed to compute the corresponding public key after calling setPrivateKey(). However, the documentation says this API call: "Generates private and public Diffie-Hellman key values". The documented behavior is very different from the actual behavior, and this difference could easily lead to security issues in applications that use these APIs as the DiffieHellman may be used as the basis for application-level security, implications are consequently broad.. EPSS estimates a 1.46% chance of exploitation in the next 30 days.

Description

The generateKeys() API function returned from crypto.createDiffieHellman() only generates missing (or outdated) keys, that is, it only generates a private key if none has been set yet, but the function is also needed to compute the corresponding public key after calling setPrivateKey(). However, the documentation says this API call: "Generates private and public Diffie-Hellman key values". The documented behavior is very different from the actual behavior, and this difference could easily lead to security issues in applications that use these APIs as the DiffieHellman may be used as the basis for application-level security, implications are consequently broad.

Metrics

CVSS 3.1
7.5/10

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

EPSS Probability
1.46%

70.3th percentile

Probability of exploitation in the next 30 days. Learn more

Affected Software

VendorProductVersions
NodejsNode.Js>= 16.0.0, < 16.20.1
NodejsNode.Js>= 18.0.0, < 18.16.1
NodejsNode.Js>= 20.0.0, < 20.3.1

References

Timeline

Published
Last Modified
Status
Modified

Frequently Asked Questions

What is CVE-2023-30590?
The generateKeys() API function returned from crypto.createDiffieHellman() only generates missing (or outdated) keys, that is, it only generates a private key if none has been set yet, but the function is also needed to compute the corresponding public key after calling setPrivateKey(). However, the documentation says this API call: "Generates private and public Diffie-Hellman key values". The documented behavior is very different from the actual behavior, and this difference could easily lead to security issues in applications that use these APIs as the DiffieHellman may be used as the basis for application-level security, implications are consequently broad.
How severe is CVE-2023-30590?
CVE-2023-30590 has a CVSS score of 7.5/10 (HIGH severity). The EPSS model estimates a 1.46% probability of exploitation in the next 30 days.
How do I fix CVE-2023-30590?
Check the vendor references and advisories linked above for patched versions and mitigation guidance. You can also run a Strix scan to test if your systems are affected.

Are you affected by CVE-2023-30590?

Run a free Strix scan to check your systems for this vulnerability.

Scan your code now

Source: NVD / NIST