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.
Advisories
Source ID Title
Debian DLA Debian DLA DLA-3776-1 nodejs security update
Debian DLA Debian DLA DLA-3886-1 nodejs security update
Debian DSA Debian DSA DSA-5589-1 nodejs security update
Ubuntu USN Ubuntu USN USN-6735-1 Node.js vulnerabilities
Fixes

Solution

No solution given by the vendor.


Workaround

No workaround given by the vendor.

History

Wed, 16 Jul 2025 13:45:00 +0000

Type Values Removed Values Added
Metrics epss

{'score': 0.00637}

epss

{'score': 0.00655}


Mon, 14 Jul 2025 13:45:00 +0000

Type Values Removed Values Added
Metrics epss

{'score': 0.00587}

epss

{'score': 0.00637}


cve-icon MITRE

Status: PUBLISHED

Assigner: hackerone

Published:

Updated: 2025-04-30T22:24:57.627Z

Reserved: 2023-04-13T01:00:12.086Z

Link: CVE-2023-30590

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Modified

Published: 2023-11-28T20:15:07.480

Modified: 2024-11-21T08:00:28.723

Link: CVE-2023-30590

cve-icon Redhat

Severity : Moderate

Publid Date: 2023-06-20T00:00:00Z

Links: CVE-2023-30590 - Bugzilla

cve-icon OpenCVE Enrichment

No data.