The generateKeys() API function returned from crypto.createDiffieHellman() only generates…
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Partial Red Hat: 4 fixed, 2 without a fix
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and Red Hat.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| NodeJS | Node | 4.0 and later; 5.0 and later; 6.0 and later; 7.0 and later; 8.0 and later; 9.0 and later; 10.0 and later; 11.0 and later; 12.0 and later; 13.0 and later; 14.0 and later; 15.0 and later; 16.0 to before 16.20.1; 17.0 and later; 18.0 to before 18.16.1; 19.0 and later; 20.0 to before 20.3.1 | 16.20.1, 18.16.1, 20.3.1 | Patch available | CNA |
- Node VendorNodeJS Affected 4.0 and later; 5.0 and later; 6.0 and later; 7.0 and later; 8.0 and later; 9.0 and later; 10.0 and later; 11.0 and later; 12.0 and later; 13.0 and later; 14.0 and later; 15.0 and later; 16.0 to before 16.20.1; 17.0 and later; 18.0 to before 18.16.1; 19.0 and later; 20.0 to before 20.3.1 Fixed in 16.20.1, 18.16.1, 20.3.1 Patch available CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:nodejs:node.js:*:*:*:*:*:*:*:* | 16.0.0 to before 16.20.1; 18.0.0 to before 18.16.1; 20.0.0 to before 20.3.1 | Vulnerable | NodeJS |
- cpe:2.3:a:nodejs:node.js:*:*:*:*:*:*:*:* Versions 16.0.0 to before 16.20.1; 18.0.0 to before 18.16.1; 20.0.0 to before 20.3.1 Vulnerable ·NodeJS
Remediation
- Fix · CNA Node (NodeJS) Fixed in 16.20.1, 18.16.1, 20.3.1
Red Hat 6 advisories
- RHSA-2023:5533 Released 2023-10-09 · Red Hat rating Importantnodejs security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream EUS (v.9.0) nodejs-1:16.20.2-1.el9_0, nodejs-docs-1:16.20.2-1.el9_0, nodejs-full-i18n-1:16.20.2-1.el9_0 +2
- RHSA-2023:5361 Released 2023-09-26 · Red Hat rating Importantnodejs:16 security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream EUS (v.8.6) nodejs-1:16.20.2-2.module+el8.6.0+19897+9590a839.aarch64::nodejs:16, nodejs-1:16.20.2-2.module+el8.6.0+19897+9590a839.ppc64le::nodejs:16, nodejs-1:16.20.2-2.module+el8.6.0+19897+9590a839.s390x::nodejs:16 +19
- RHSA-2023:4537 Released 2023-08-08 · Red Hat rating Moderatenodejs:16 security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream (v. 8) nodejs-1:16.20.1-1.module+el8.8.0+19440+ee8dbee5.aarch64::nodejs:16, nodejs-1:16.20.1-1.module+el8.8.0+19440+ee8dbee5.ppc64le::nodejs:16, nodejs-1:16.20.1-1.module+el8.8.0+19440+ee8dbee5.s390x::nodejs:16 +19
Show 3 more Red Hat advisories
- RHSA-2023:4536 Released 2023-08-08 · Red Hat rating Moderatenodejs:18 security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream (v. 8) nodejs-1:18.16.1-1.module+el8.8.0+19438+94e84959.aarch64::nodejs:18, nodejs-1:18.16.1-1.module+el8.8.0+19438+94e84959.ppc64le::nodejs:18, nodejs-1:18.16.1-1.module+el8.8.0+19438+94e84959.s390x::nodejs:18 +20
- RHSA-2023:4330 Released 2023-07-31 · Red Hat rating Moderatenodejs:18 security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream (v. 9) nodejs-1:18.16.1-1.module+el9.2.0.z+19424+78951f07.aarch64::nodejs:18, nodejs-1:18.16.1-1.module+el9.2.0.z+19424+78951f07.ppc64le::nodejs:18, nodejs-1:18.16.1-1.module+el9.2.0.z+19424+78951f07.s390x::nodejs:18 +20
- RHSA-2023:4331 Released 2023-07-31 · Red Hat rating Moderatenodejs security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream (v. 9) nodejs-1:16.20.1-1.el9_2, nodejs-docs-1:16.20.1-1.el9_2, nodejs-full-i18n-1:16.20.1-1.el9_2 +2
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
NodeJS Node 10.*, 11.* and 15 more versions
3 records Highest priority Priority MEDIUM 2 MEDIUM, 1 LOW
Other records, highest priority first
- TI-2023-14410 A vulnerability has been identified in the Node.js (.msi version) installation process…Priority MEDIUM 42
- TI-2023-14413 When an invalid public key is used to create an x509 certificate using the…Priority LOW 26
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux 8 | Affected | No fix planned: Will not fix |
| Red Hat Software Collections | Affected | No fix planned: Will not fix |
| Red Hat Enterprise Linux AppStream (v. 8) | Fixed | RHSA-2023:4536, RHSA-2023:4537 |
| Red Hat Enterprise Linux AppStream (v. 9) | Fixed | RHSA-2023:4330, RHSA-2023:4331 |
| Red Hat Enterprise Linux AppStream EUS (v.8.6) | Fixed | RHSA-2023:5361 |
| Red Hat Enterprise Linux AppStream EUS (v.9.0) | Fixed | RHSA-2023:5533 |
Timeline
- 2026-10-02 Threatist record created from CVE-2023-30590
- 2026-10-03 Alias added: GHSA-v63h-9gvh-2x49
- 2026-10-08 CISA SSVC decision points changed
- 2026-10-09 Priority changed: LOW → MEDIUM
References
More NodeJS Node.js vulnerabilities
- TI-2026-79288 Out-of-bounds write in Google Brotli decoder KEVCVSS 4.0CRITICAL 9.2
- TI-2023-23979 The HTTP/2 protocol allows a denial of service (server resource consumption) because… KEVCVSS 3.1HIGH 7.5
- TI-2016-01993 The DES and Triple DES ciphers, as used in the TLS, SSH, and IPSec protocols and other… CVSS 3.1HIGH 7.5
- TI-2024-03325 Command injection vulnerability in programing languages on Microsoft Windows operating system. CVSS 3.1CRITICAL 9.8
- TI-2022-03472 X.509 Email Address Variable Length Buffer Overflow CVSS 3.1HIGH 7.5
- TI-2022-03315 X.509 Email Address 4-byte Buffer Overflow CVSS 3.1HIGH 7.5
Sources
- CVE-2023-30590 · CVE Program
- CVE-2023-30590 · NVD
- FIRST EPSS
- GHSA-v63h-9gvh-2x49 · GitHub Advisory Database · CC BY 4.0
- CVE-2023-30590 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences