Description
A weak randomness in WebCrypto keygen vulnerability exists in Node.js 18 due to a change with EntropySource() in SecretKeyGenTraits::DoKeyGen() in src/crypto/crypto_keygen.cc. There are two problems with this: 1) It does not check the return value, it assumes EntropySource() always succeeds, but it can (and sometimes will) fail. 2) The random data returned byEntropySource() may not be cryptographically strong and therefore not suitable as keying material.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| NodeJS | Node | 4.0 – < 4.*, 5.0 – < 5.*, 6.0 – < 6.*, 7.0 – < 7.*, 8.0 – < 8.*, 9.0 – < 9.*, 10.0 – < 10.*, 11.0 – < 11.*, 12.0 – < 12.*, 13.0 – < 13.*, 15.0 – < 15.*, 17.0 – < 17.*, 18.0 – < 18.9.1 | 4.* |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | nodejs | 18.10.0+dfsg-1 | — |
| Debian 13 | nodejs | 18.10.0+dfsg-1 | — |
| Debian 12 | nodejs | 18.10.0+dfsg-1 | — |
| Debian 11 | nodejs | 12.22.12~dfsg-1~deb11u3 | DSA-5326-1 |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| RHEL 9 | nodejs +3 | 1:16.17.1-1.el9_0 | RHSA-2022:6963 |
| RHEL 9 | npm | 1:8.15.0-1.16.17.1.1.el9_0 | RHSA-2022:6963 |
| RHEL 8 | nodejs +3 | 1:16.17.1-1.module+el8.6.0+16848+a483195a | RHSA-2022:7821, RHSA-2022:6964 |
| RHEL 8 | nodejs-nodemon | 2.0.19-1.module+el8.7.0+16061+0a247725 | RHSA-2022:7821, RHSA-2022:6964 |
| RHEL 8 | nodejs-packaging | 25-1.module+el8.5.0+10992+fac5fe06 | RHSA-2022:7821, RHSA-2022:6964 |
| RHEL 8 | nodejs-packaging-bundler | 2021.06-4.module+el8.7.0+15582+19c314fa | RHSA-2022:7821 |
| RHEL 8 | npm | 1:8.15.0-1.16.17.1.1.module+el8.6.0+16848+a483195a | RHSA-2022:7821, RHSA-2022:6964 |
AlmaLinux
Errata ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux 9 | nodejs +3 | 1:16.17.1-1.el9_0 | ALSA-2022:6963 |
| AlmaLinux 9 | npm | 1:8.15.0-1.16.17.1.1.el9_0 | ALSA-2022:6963 |
| AlmaLinux 8 | nodejs +3 | 1:16.17.1-1.module_el8.6.0+3328+2e4711d7 | ALSA-2022:7821, ALSA-2022:6964 |
| AlmaLinux 8 | nodejs-nodemon | 2.0.19-1.module_el8.7.0+3343+ea2b7901 | ALSA-2022:7821, ALSA-2022:6964 |
| AlmaLinux 8 | nodejs-packaging | 25-1.module_el8.5.0+2605+45d748af | ALSA-2022:7821, ALSA-2022:6964 |
| AlmaLinux 8 | nodejs-packaging-bundler | 2021.06-4.module_el8.7.0+3343+ea2b7901 | ALSA-2022:7821 |
| AlmaLinux 8 | npm | 1:8.15.0-1.16.17.1.1.module_el8.6.0+3328+2e4711d7 | ALSA-2022:7821, ALSA-2022:6964 |
Rocky Linux
Errata ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Rocky Linux 9 | nodejs | 1:16.17.1-1.el9_0 | RLSA-2022:6963 |
| Rocky Linux 8 | nodejs | 1:16.17.1-1.module+el8.6.0+1046+80feca58 | RLSA-2022:7821, RLSA-2022:6964 |
| Rocky Linux 8 | nodejs-nodemon | 2.0.19-1.module+el8.7.0+1072+5b168780 | RLSA-2022:7821, RLSA-2022:6964 |
| Rocky Linux 8 | nodejs-packaging | 25-1.module+el8.5.0+702+221f14e6 | RLSA-2022:7821, RLSA-2022:6964 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SLES 15 SP4 | nodejs16 | 16.17.1-150400.3.9.1 | SUSE-SU-2022:3656-1 |
| SLES 15 SP4 | nodejs18 | 18.13.0-150400.9.3.1 | SUSE-SU-2023:0419-1 |
| SLES 15 SP3 | nodejs16 | 16.17.1-150300.7.12.1 | SUSE-SU-2022:3615-1 |
| SLES 12 | nodejs16 | 16.17.1-8.12.1 | SUSE-SU-2022:3524-1 |
| SLES 12 | nodejs18 | 18.13.0-8.3.1 | SUSE-SU-2023:0408-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | nodejs16 | 16.17.1-1.1 | openSUSE-SU-2024:12370-1 |
| openSUSE Tumbleweed | nodejs18 | 18.10.0-1.1 | openSUSE-SU-2024:12376-1 |
| openSUSE Leap 15.5 | nodejs18 | 18.13.0-150400.9.3.1 | SUSE-SU-2023:0419-1 |
| openSUSE Leap 15.4 | nodejs16 | 16.17.1-150400.3.9.1 | SUSE-SU-2022:3656-1 |
| openSUSE Leap 15.4 | nodejs18 | 18.13.0-150400.9.3.1 | SUSE-SU-2023:0419-1 |
| openSUSE Leap 15.3 | nodejs16 | 16.17.1-150300.7.12.1 | SUSE-SU-2022:3615-1 |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | nodejs | 16.17.1-r0 | — |
| Alpine v3.24 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.23 | nodejs | 16.17.1-r0 | — |
| Alpine v3.23 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.22 | nodejs | 16.17.1-r0 | — |
| Alpine v3.22 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.21 | nodejs | 16.17.1-r0 | — |
| Alpine v3.21 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.20 | nodejs | 16.17.1-r0 | — |
| Alpine v3.20 | nodejs-current | 18.9.1-r0 | — |
Show 5 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.19 | nodejs | 16.17.1-r0 | — |
| Alpine v3.19 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.18 | nodejs | 16.17.1-r0 | — |
| Alpine v3.18 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.17 | nodejs | 16.17.1-r0 | — |
| Alpine v3.17 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.16 | nodejs | 16.17.1-r0 | — |
| Alpine v3.16 | nodejs-current | 18.9.1-r0 | — |
| Alpine v3.15 | nodejs | 16.17.1-r0 | — |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2023 | nodejs +4 | 1:18.12.1-1.amzn2023.0.2 | ALAS2023-2023-084 |
| Amazon Linux 2023 | npm | 1:8.19.2-1.18.12.1.1.amzn2023.0.2 | ALAS2023-2023-084 |
| Amazon Linux 2023 | v8-devel | 2:10.2.154.15-1.18.12.1.1.amzn2023.0.2 | ALAS2023-2023-084 |
Oracle Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Oracle Linux 9 | graalvm22-ce-11 +41 | 22.3.0-1.el9 | ELSA-2022-9955, ELSA-2022-9954, ELSA-2022-9953 |
| Oracle Linux 9 | nodejs +3 | 1:16.17.1-1.el9_0 | ELSA-2022-6963 |
| Oracle Linux 9 | npm | 1:8.15.0-1.16.17.1.1.el9_0 | ELSA-2022-6963 |
| Oracle Linux 8 | graalvm22-ce-11 +41 | 22.3.0-1.el8 | ELSA-2022-9951, ELSA-2022-9950, ELSA-2022-9949 |
| Oracle Linux 8 | nodejs +3 | 1:16.17.1-1.module+el8.6.0+20846+72f1269d | ELSA-2022-7821, ELSA-2022-6964 |
| Oracle Linux 8 | nodejs-nodemon | 2.0.19-1.module+el8.7.0+20766+0a247725 | ELSA-2022-7821, ELSA-2022-6964 |
| Oracle Linux 8 | nodejs-packaging | 25-1.module+el8.5.0+20388+4b61e68d | ELSA-2022-7821, ELSA-2022-6964 |
| Oracle Linux 8 | nodejs-packaging-bundler | 2021.06-4.module+el8.7.0+20766+0a247725 | ELSA-2022-7821 |
| Oracle Linux 8 | npm | 1:8.15.0-1.16.17.1.1.module+el8.6.0+20846+72f1269d | ELSA-2022-7821, ELSA-2022-6964 |
| Oracle Linux 7 | graalvm22-ce-11 +41 | 22.3.0-1.el7 | ELSA-2022-9947, ELSA-2022-9946, ELSA-2022-9945 |
Advisories 38
- ALSA-2022:6963 Important: nodejs security update AlmaLinux Security Advisories · Oct 29, 2026
- ALSA-2022:7821 Important: nodejs:18 security update AlmaLinux Security Advisories · Oct 29, 2026
- ALSA-2022:6964 Important: nodejs:16 security update AlmaLinux Security Advisories · Oct 29, 2026
- RHSA-2022:7821 Red Hat Security Advisory: nodejs:18 security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- RHSA-2022:6964 Red Hat Security Advisory: nodejs:16 security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- RHSA-2022:6963 Red Hat Security Advisory: nodejs security update Red Hat Security Advisories (RHSA) · Jun 29, 2026
- DSA-5326-1 nodejs - security update Debian Security (DSA / DLA) · Mar 9, 2026
- RLSA-2022:6963 Important: nodejs security update Rocky Linux Security Advisories · Feb 5, 2026
- RLSA-2022:6964 Important: nodejs:16 security update Rocky Linux Security Advisories · Feb 5, 2026
- RLSA-2022:7821 Important: nodejs:18 security update Rocky Linux Security Advisories · Feb 4, 2026
- SUSE-SU-2022:3524-1 Security update for nodejs16 SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2022:3656-1 Security update for nodejs16 SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2023:0419-1 Security update for nodejs18 SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:12370-1 corepack16-16.17.1-1.1 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2023:0408-1 Security update for nodejs18 SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:12376-1 corepack18-18.10.0-1.1 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- SUSE-SU-2022:3615-1 Security update for nodejs16 SUSE / openSUSE Security Updates · Feb 4, 2026
- FSA-202302 Festo: Several vulnerabilities in FactoryViews CERT@VDE · Feb 2, 2026
- WID-SEC-2022-1533 Node.js: Mehrere Schwachstellen BSI CERT-Bund (WID) · May 9, 2024
- WID-SEC-2023-0561 Xerox FreeFlow Print Server: Mehrere Schwachstellen BSI CERT-Bund (WID) · May 18, 2023
- ALAS2023-2023-084 Important: nodejs security update (Amazon Linux 2023) Amazon Linux Security Center (ALAS) · Feb 22, 2023
- ICSA-23-017-03 Siemens SINEC INS CISA ICS & IT advisories · Jan 10, 2023
- SSA-332410 SSA-332410: Multiple Vulnerabilities in SINEC INS before V1.0 SP2 Update 1 Siemens ProductCERT · Jan 10, 2023
- ELSA-2022-7821 Important: nodejs:18 security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Nov 15, 2022
- ELSA-2022-9949 Important: GraalVM Security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9948 Important: GraalVM Security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9953 Important: GraalVM Security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9955 Important: GraalVM Security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9951 Important: GraalVM Security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9954 Important: GraalVM Security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9946 Important: GraalVM Security update (Oracle Linux 7) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9952 Important: GraalVM Security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9947 Important: GraalVM Security update (Oracle Linux 7) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9944 Important: GraalVM Security update (Oracle Linux 7) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9945 Important: GraalVM Security update (Oracle Linux 7) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-9950 Important: GraalVM Security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Oct 25, 2022
- ELSA-2022-6964 Important: nodejs:16 security update (Oracle Linux 8) Oracle Linux Security Advisories (ELSA) · Oct 18, 2022
- ELSA-2022-6963 Important: nodejs security update (Oracle Linux 9) Oracle Linux Security Advisories (ELSA) · Oct 17, 2022