Skip to content
Fencer Vulns
medium 5.9

CVE-2026-9679 json

undici vulnerable to HTTP header injection via Set-Cookie percent-decoding

published 2026-06-17 4 mo ago modified 2026-09-10 1 mo ago also GHSA-p88m-4jfj-68fv , EUVD-2026-37764

cvss
5.9
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.3%
EPSS 0.3% chance of exploitation in 30 days, percentile 17%
public exploits
0
none known

Summary

Impact: undici's cookie parser in parseSetCookie percent-decodes cookie values via qsUnescape, turning encoded sequences like %0D%0A, %00, %3B, and %3D into their literal byte equivalents. RFC 6265 §5.4 does not specify any decoding and browsers do not decode either.

Applications that parse a Set-Cookie header and then forward the parsed value into a response header (proxies, middleware, SSR frameworks) become vulnerable to HTTP response header injection: an attacker-controlled upstream can inject arbitrary Set-Cookie, Location, or Cache-Control headers into the application's downstream response, enabling session fixation, open redirect, or cache poisoning.

Affected applications are those that use undici's cookie parsing (parseSetCookie, parseCookie, getSetCookies) and forward the parsed cookie value into a response header.

This was introduced in undici 7.0.0 via PR #3789.

Patches: Upgrade to undici v6.26.0, v7.28.0 or v8.5.0.

Workarounds: If upgrade is not immediately possible, do not forward values returned by parseSetCookie/parseCookie/getSetCookies directly into response headers; sanitize the value first to strip or reject CR, LF, NUL, ;, and = bytes.

Patch / fix

  • npm undici 6.27.0, 7.28.0, 8.5.0
  • undici undici 6.26.0, 7.28.0, 8.5.0
  • node-undici Debian 14 8.5.0+dfsg+~cs3.2.0-1

debian advisories DEBIAN-CVE-2026-9679

  • nodejs24 hummingbird 1 24.18.0-0.3.hum1
  • nodejs24-bin hummingbird 1 24.18.0-0.3.hum1
  • nodejs24-npm hummingbird 1 11.16.0-1.24.18.0.0.3.hum1
  • nodejs24-libs hummingbird 1 24.18.0-0.3.hum1
  • nodejs24-npm-bin hummingbird 1 24.18.0-0.3.hum1
  • nodejs24-full-i18n hummingbird 1 24.18.0-0.3.hum1
  • nodejs26 hummingbird 1 26.5.0-1.3.hum1
  • nodejs26-bin hummingbird 1 26.5.0-1.3.hum1

red hat advisories RHSA-2026:38236RHSA-2026:38009

  • nodejs18 SLES for SAP 15 SP5, SLES for SAP 15 SP4, SLES 15 SP5-LTSS +5 more 18.20.8-150400.9.39.1
  • nodejs20 SLES for SAP 15 SP5, SLES 15 SP5-LTSS, SLE High Performance Computing 15 SP5-LTSS +1 more 20.20.2-150500.11.30.1
  • nodejs24 SLES for SAP applications 16.0, SLES 16.0 24.18.0-160000.1.1
  • nodejs22 SLE Module for Web and Scripting 15 SP7 22.23.0-150700.3.12.1
  • nodejs24 SLE Module for Web and Scripting 15 SP7 24.17.0-150700.15.11.1
  • nodejs22 SLES for SAP applications 16.0, SLES 16.0 22.23.0-160000.1.1
  • nodejs18 SLES LTSS Extended Security 12 SP5, SLES 12 SP5-LTSS 18.20.8-8.44.1
  • nodejs20 SLES for SAP 15 SP6, SLES 15 SP6-LTSS 20.20.2-150600.3.21.1

suse advisories SUSE-SU-2026:4261-1SUSE-SU-2026:4248-1SUSE-SU-2026:3930-1SUSE-SU-2026:3929-1SUSE-SU-2026:22565-1SUSE-SU-2026:2695-1

  • nodejs24 openSUSE Leap 16.0 24.18.0-160000.1.1
  • nodejs22 openSUSE Leap 16.0 22.23.0-160000.1.1
  • nodejs24 openSUSE Tumbleweed 24.17.0-1.1

opensuse advisories openSUSE-SU-2026:21236-1openSUSE-SU-2026:21058-1openSUSE-SU-2026:11121-1

  • nodejs Azure Linux 3.0 24.18.1-1

azure linux advisories AZL-91188

Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2026-9679 updated cvss 5.9

undici: undici vulnerable to HTTP header injection via Set-Cookie percent-decoding

  • Red Hat Cryostat 4 undici, grafana-infinity-datasource-npm, cryostat-openshift-console-plugin-npm Red Hat OpenShift Pipelines openshift-pipelines/pipelines-console-plugin-rhel8, openshift-pipelines/pipelines-console-plugin-rhel9, openshift-pipelines/pipelines-console-plugin-pf5-rhel9 Red Hat AMQ Broker 7 undici Red Hat Build of Podman Desktop rh-podman-desktop.git Red Hat Developer Hub 1 rhdh/rhdh-hub-rhel9 Red Hat Enterprise Linux 8 npm, nodejs, nodejs-libs, nodejs-nodemon, nodejs-full-i18n, nodejs-packaging, +1 more
    +2 more products
    Red Hat Enterprise Linux 9 npm, nodejs, nodejs-libs, nodejs-full-i18n Red Hat Enterprise Linux 10 nodejs22, nodejs24
    affected: workaround, no fix available “Fix deferred”
  • Red Hat Hardened Images nodejs25
    affected: workaround, no fix planned “Will not fix”
  • Red Hat OpenShift AI (RHOAI) rhoai/odh-dashboard-rhel9, rhoai/odh-mod-arch-maas-rhel9, rhoai/odh-mod-arch-automl-rhel9, rhoai/odh-mod-arch-gen-ai-rhel9, rhoai/odh-mod-arch-mlflow-rhel9, rhoai/odh-mod-arch-autorag-rhel9, +3 more Red Hat OpenShift Container Platform 4 openshift4/ose-console-rhel9, openshift4/ose-monitoring-plugin-rhel9, openshift4/ose-agent-installer-ui-rhel9 Red Hat OpenShift Container Platform 5 openshift5/ose-console-rhel9, openshift5/ose-agent-installer-ui-rhel9 Red Hat OpenShift Dev Spaces devspaces/code-rhel9, devspaces/openvsx-rhel9, devspaces/dashboard-rhel9, devspaces/pluginregistry-rhel9 Red Hat Self-service automation portal 2 ansible-automation-platform/automation-portal, ansible-automation-platform/bootc-automation-portal-rhel9
    affected: workaround, no fix available “Fix deferred”
  • Red Hat Hardened Images nodejs26 26.5.0-1.3.hum1, nodejs24 24.18.0-0.3.hum1, nodejs26-bin 26.5.0-1.3.hum1, nodejs24-bin 24.18.0-0.3.hum1, nodejs26-libs 26.5.0-1.3.hum1, nodejs24-libs 24.18.0-0.3.hum1, +6 more
    fixed: vendor fix RHSA-2026:38236
  • Red Hat Openshift Data Foundation 4.18 odf4/cephcsi-rhel9 1786705347, odf4/odf-cli-rhel9 1786705938, odf4/mcg-core-rhel9 1786705558, odf4/odf-console-rhel9 1786706577, odf4/mcg-rhel9-operator 1786705646, odf4/ocs-rhel9-operator 1786705802, +13 more
    fixed: vendor fix RHSA-2026:56431
  • Red Hat Hardened Images rust Red Hat Openshift Data Foundation 4.18 odf4/mcg-operator-bundle 1786708633, odf4/ocs-operator-bundle 1786708778, odf4/odf-operator-bundle 1786709119, odf4/cephcsi-operator-bundle 1786708508, odf4/odr-hub-operator-bundle 1786709184, odf4/rook-ceph-operator-bundle 1786709254, +7 more
    not 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
none
Automatable
no
Technical impact
partial
Assessed
4 mo ago

Exploit prediction

0.26% chance of exploitation in the next 30 days, higher than 17% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CNA 3.1 5.9 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
GitHub 3.1 5.9 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N

Affected packages

ecosystem package affected fixed in
npm undici
<6.27.0
>=7.0.0, <7.28.0
>=8.0.0, <8.5.0
6.27.0
7.28.0
8.5.0

Affected products

  • undici undici

Classification

Weakness
  • CWE-93 Improper Neutralization of CRLF Sequences

References

Sources

Fencer Vulns 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.