Skip to content
OpenAdvisories
Medium · 5.9 CVE-2026-109841 EUVD-2026-102305GHSA-f72v-6w45-q472

undici vulnerable to Subresource Integrity bypass via non-lowercase algorithm tokens

Published Oct 15, 2026 · Updated Oct 16, 2026 · Assigned by openjs

Description

undici is an HTTP client library for Node.js. In versions 7.15.0 through 7.30.0 and 8.0.0 through 8.12.1, its fetch() implementation verifies Subresource Integrity metadata by matching the algorithm token against a lowercase-only set, even though the SRI specification defines the token by its ASCII-lowercase form, so a valid but non-lowercase token such as an uppercase or mixed-case SHA256 is treated as unknown and skipped. When no recognized algorithm remains, undici treats the integrity list as empty and accepts the response, so a server returning a body that does not match the pinned digest passes the check. An attacker who controls only the response body can therefore deliver attacker-controlled bytes to an application that pinned a valid uppercase or mixed-case SRI token, with no integrity error, affecting response integrity only. The issue is fixed in undici 7.30.1 and 8.12.2, which normalize the algorithm token to ASCII lowercase before validation, and users should upgrade to one of those versions or later. As a workaround, use lowercase algorithm tokens such as sha256, sha384, or sha512 in integrity metadata.

Affected products

VendorProductAffectedFixed
undici undici 7.15.0 – < 7.30.1, 8.0.0 – < 8.12.2 7.30.1

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.

ReleasePackageFixed inAdvisory
Debian 14 node-undici 8.12.2+dfsg+~cs3.2.3-1 —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 node-undici No fix yet —
Ubuntu 26.04 LTS node-undici No fix yet —
Ubuntu 24.04 LTS node-undici No fix yet —
ReleasePackageFixed inAdvisory
Red Hat Hardened Images 1 nodejs24 +6 24.21.0-1.5.hum1 RHSA-2026:84706
Red Hat Hardened Images 1 nodejs24-npm 11.19.0-1.24.21.0.1.5.hum1 RHSA-2026:84706
Red Hat Hardened Images 1 nodejs26 +6 26.11.1-0.4.hum1 RHSA-2026:84657
Red Hat Hardened Images 1 nodejs26-npm 11.20.0-1.26.11.1.0.4.hum1 RHSA-2026:84657
Red Hat Hardened Images 1 v8-13.6-devel 13.6.233.17-1.24.21.0.1.5.hum1 RHSA-2026:84706
Red Hat Hardened Images 1 v8-14.6-devel 14.6.202.34-1.26.11.1.0.4.hum1 RHSA-2026:84657

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2023 nodejs24 +4 1:24.22.1-1.amzn2023.0.1 ALAS2023-2026-3330
Amazon Linux 2023 nodejs24-npm 1:11.19.1-1.24.22.1.1.amzn2023.0.1 ALAS2023-2026-3330
Amazon Linux 2023 v8-13.6-devel 3:13.6.233.17-1.24.22.1.1.amzn2023.0.1 ALAS2023-2026-3330

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling lerna 10.1.1-r3 —
Wolfi rolling node-gyp 13.1.0-r1 —
Wolfi rolling prism 5.16.0-r19 —
Wolfi rolling renovate 44.198.3-r1 —
Wolfi rolling vitess-24 24.0.5-r5 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm undici >= 7.15.0, < 7.30.1 7.30.1 GHSA-f72v-6w45-q472
npm undici >= 8.0.0, < 8.12.2 8.12.2 GHSA-f72v-6w45-q472

Advisories 3

References