CVE-2023-23936 json
CRLF Injection in Nodejs ‘undici’ via host
published 3y ago modified 2mo ago also BIT-node-2023-23936 , BIT-node-min-2023-23936 , EUVD-2023-0633 , GHSA-5r9g-qh6m-jxff
- cvss
- 6.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.1%
- EPSS 1.1% chance of exploitation in 30 days, percentile 66%
- public exploits
- 0
- none known
Summary
Undici is an HTTP/1.1 client for Node.js. Starting with version 2.0.0 and prior to version 5.19.1, the undici library does not protect `host` HTTP header from CRLF injection vulnerabilities. This issue is patched in Undici v5.19.1. As a workaround, sanitize the `headers.host` string before passing to undici.
Patch / fix
- npm undici 5.19.1
- bitnami node 16.19.1, 18.14.1, 19.6.1
- bitnami node-min 16.19.1, 18.14.1, 19.6.1
- nodejs node.js 16.19.1, 18.14.1, 19.6.1
- nodejs undici 5.19.1
- node-undici Debian 12 5.15.0+dfsg1+~cs20.10.9.3-1+deb12u1
- node-undici Debian 14, Debian 13 5.19.1+dfsg1+~cs20.10.9.5-1
debian advisories DEBIAN-CVE-2023-23936
- npm RHEL 9 1:9.5.0-1.18.14.2.2.module+el9.2.0.z+18497+a402347c
- nodejs RHEL 9 1:18.14.2-2.module+el9.2.0.z+18497+a402347c
- nodejs-nodemon RHEL 9 2.0.20-2.module+el9.2.0.z+18497+a402347c
- nodejs-full-i18n RHEL 9 1:18.14.2-2.module+el9.2.0.z+18497+a402347c
- nodejs-packaging RHEL 9 2021.06-4.module+el9.1.0+15718+e52ec601
- nodejs-packaging-bundler RHEL 9 2021.06-4.module+el9.1.0+15718+e52ec601
- npm RHEL 8 1:9.5.0-1.18.14.2.2.module+el8.7.0+18445+9493b6ea
- nodejs RHEL 8 1:18.14.2-2.module+el8.7.0+18445+9493b6ea
red hat advisories RHSA-2023:2654RHSA-2023:1583RHSA-2023:1582RHSA-2023:5533RHSA-2023:2655
- nodejs18 SLE Module for Web and Scripting 15 SP4, openSUSE Leap 15.4 18.14.2-150400.9.6.2
- nodejs18 SLE Module for Web and Scripting 12 18.14.2-8.6.2
- nodejs16 SLES for SAP 15 SP3, SLES 15 SP3-LTSS, SLE High Performance Computing 15 SP3-LTSS +3 more 16.19.1-150300.7.18.1
- nodejs16 SLE Module for Web and Scripting 12 16.19.1-8.24.1
- nodejs16 SLE Module for Web and Scripting 15 SP4, openSUSE Leap 15.4 16.19.1-150400.3.15.1
suse advisories SUSE-SU-2023:0738-1SUSE-SU-2023:0715-1SUSE-SU-2023:0673-1SUSE-SU-2023:0609-1SUSE-SU-2023:0608-1
- npm AlmaLinux 9 1:9.5.0-1.18.14.2.2.module_el9.2.0+29+de583a0b
- nodejs AlmaLinux 9 1:18.14.2-2.module_el9.2.0+29+de583a0b
- nodejs-nodemon AlmaLinux 9 2.0.20-2.module_el9.2.0+29+de583a0b
- nodejs-full-i18n AlmaLinux 9 1:18.14.2-2.module_el9.2.0+29+de583a0b
- nodejs-packaging AlmaLinux 9 2021.06-4.module_el9.1.0+13+d9a595ea
- nodejs-packaging-bundler AlmaLinux 9 2021.06-4.module_el9.1.0+13+d9a595ea
- nodejs AlmaLinux 9 1:16.19.1-1.el9_2
- npm AlmaLinux 9 1:8.19.3-1.16.19.1.1.el9_2
almalinux advisories ALSA-2023:2654ALSA-2023:2655ALSA-2023:1582ALSA-2023:1583
- nodejs-packaging Rocky Linux 9 2021.06-4.module+el9.7.0+40025+0e0cf6b2
- nodejs-packaging Rocky Linux 9 2021.06-4.module+el9.7.0+40017+f0db1785
- nodejs-packaging Rocky Linux 9 2021.06-4.module+el9.7.0+40018+a011993d
- nodejs-packaging Rocky Linux 9 2021.06-4.module+el9.7.0+40022+9ecc286c
- nodejs Rocky Linux 9 1:16.19.1-1.el9_2
- nodejs-nodemon Rocky Linux 9 2.0.20-3.el9_2
- nodejs Rocky Linux 8 1:16.19.1-1.module+el8.7.0+1178+d52dba78
- nodejs-nodemon Rocky Linux 8 2.0.20-3.module+el8.7.0+1178+d52dba78
rocky linux advisories RLSA-2023:2654RLSA-2023:2655RLSA-2023:1582RLSA-2023:1583
- nodejs Alpine 3.16, Alpine 3.15 16.19.1-r0
- nodejs Alpine 3.24, Alpine 3.23, Alpine 3.22 +5 more 18.14.1-r0
alpine advisories ALPINE-CVE-2023-23936
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
Is CVE-2023-23936 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2023-23936 updated cvss 6.5
Node.js: Fetch API did not protect against CRLF injection in host headers
-
Red Hat 3scale API Management Platform 2 3scale-amp2/system-rhel7affected: no fix planned “Will not fix”
-
Red Hat Enterprise Linux AppStream (v. 8) nodejs 16.19.1-1.module+el8.7.0+18373+704f5cef, nodejs 18.14.2-2.module+el8.7.0+18445+9493b6ea, nodejs-packaging 25-1.module+el8.5.0+10992+fac5fe06, npm 9.5.0-1.18.14.2.2.module+el8.7.0+18445+9493b6ea, npm 8.19.3-1.16.19.1.1.module+el8.7.0+18373+704f5cef, nodejs-nodemon 2.0.20-2.module+el8.7.0+18445+9493b6ea, +5 morefixed: vendor fix RHSA-2023:1582
-
Red Hat Enterprise Linux AppStream (v. 9) nodejs 16.19.1-1.el9_2, nodejs-libs 16.19.1-1.el9_2, npm 8.19.3-1.16.19.1.1.el9_2, nodejs-full-i18n 16.19.1-1.el9_2, nodejs 18.14.2-2.module+el9.2.0.z+18497+a402347c, npm 9.5.0-1.18.14.2.2.module+el9.2.0.z+18497+a402347c, +4 morefixed: vendor fix RHSA-2023:2655
-
Red Hat Enterprise Linux AppStream EUS (v.9.0) nodejs 16.20.2-1.el9_0, nodejs-libs 16.20.2-1.el9_0, npm 8.19.4-1.16.20.2.1.el9_0, nodejs-full-i18n 16.20.2-1.el9_0fixed: vendor fix RHSA-2023:5533
-
Red Hat Enterprise Linux 8 npm, nodejs, nodejs-libs, nodejs-nodemon, nodejs-full-i18n, nodejs-packaging, +1 more Red Hat Enterprise Linux AppStream (v. 9) nodejs-nodemon 2.0.20-3.el9_2not affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- last yr.
Exploit prediction
1.13% chance of exploitation in the next 30 days, higher than 66% of all scored CVEs (FIRST EPSS, 2026-11-14).
Exploits and checks
- hackerone.com https://hackerone.com/reports/1820955 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N |
| GitHub | 3.1 | 4.6 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N |
| NVD | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N |
| OSV | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | undici | >=2.0.0, <5.19.1 |
5.19.1 |
| bitnami | node | >=16.0.0, <16.19.1 >=18.0.0, <18.14.1 >=19.0.0, <19.6.1 |
16.19.1 18.14.1 19.6.1 |
| bitnami | node-min | >=16.0.0, <16.19.1 >=18.0.0, <18.14.1 >=19.0.0, <19.6.1 |
16.19.1 18.14.1 19.6.1 |
Affected products
- nodejs undici
Classification
- Weakness
- Technology feeds
References
-
github.com
/nodejs/undici/commit/a2eff05401358f6595138df963837c24348f2034
web, patch
-
hackerone.com
/reports/1820955
web, exploit, third-party-advisory, advisory
-
github.com
/nodejs/undici/security/advisories/GHSA-5r9g-qh6m-jxff
web, vendor-advisory, advisory
-
github.com
/nodejs/undici/releases/tag/v5.19.1
web, release-notes, article
-
nvd.nist.gov
/vuln/detail/CVE-2023-23936
advisory, web
-
github.com
/nodejs/undici
package
Sources
- CVE List CVE-2023-23936
- GitHub Advisory GHSA-5r9g-qh6m-jxff
- NVD CVE-2023-23936
- OSV BIT-node-2023-23936
- OSV BIT-node-min-2023-23936
- Maintainer advisory GHSA-5r9g-qh6m-jxff
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of nodejs/undici published their own advisory on GitHub. Reviewed sources take precedence over it.