Skip to content

Accept bundled undici CVE temporarily and install npm 12 in development images - #264

Merged
csandanov merged 2 commits into
masterfrom
fix/npm12-undici-scan
Oct 26, 2026
Merged

csandanov merged 2 commits into
masterfrom
fix/npm12-undici-scan

Conversation

@csandanov

Copy link
Copy Markdown
Member

Problem

Since 2026-10-25 the nightly master rebuild has failed for every development image. The regular images still build, but nothing is pushed because the whole run fails. Example: run 40258225811.

Cause

The security scan found a new high-severity issue in a networking library that npm ships inside its own package. Only development images include npm. A fixed version of the library exists, but no npm release includes it yet, on either the npm 11 or the npm 12 line. Separately, the images were kept on npm 11 because npm 12 used to ship more outdated libraries. That is no longer true: the current npm 11 and npm 12 releases ship the same versions.

Solution

Accept this one issue temporarily, only for the copy of the library that comes with npm, and review it by the existing date or once npm ships the fix. Remove two older temporary acceptances that no longer match anything. Move development images to npm 12, pinned to that major version so a future npm major is not picked up by a rebuild without review. Every other scan rule stays as it is, and the full scan report stays unfiltered.

Details

Validation

  • Grype 0.120.0 against the bundled trees of npm 11.21.1 and 12.2.1, laid out at /usr/lib/node_modules/npm in an image: identical findings (undici High + Medium, ip-address Medium).
  • The same gate settings as CI (--only-fixed, high cutoff, GRYPE_SHOW_SUPPRESSED) with the new exceptions file: passes, and the undici High is shown as suppressed.
  • The development-image npm steps from the Dockerfile on Alpine 3.24.3: npm 12.2.1 installs (Node satisfies ^22.22.2 || ^24.15.0 || >=26.0.0), corepack enables yarn 4.18.1.
  • Full image builds and scans run in this PR's CI.

npm 11.21.1 and 12.2.1 both bundle undici 6.29.0 through node-gyp, which
is affected by CVE-2026-109869 (fixed in undici 6.29.1). No npm release
ships the fix yet, so development image scans fail on master.

Scope a temporary exception to that exact package path and version,
tracked in #250 with the existing review date. Drop the undici 6.28.0
and brace-expansion 5.0.9 entries, which no longer match the bundled
versions.
npm 12.2.1 bundles the same dependency versions as npm 11.21.1, so the
reason for staying on npm 11 no longer applies. Pin the major instead of
npm@latest so a future npm major is not picked up by a rebuild without
review.
@csandanov
csandanov merged commit 259ff4e into master Oct 26, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant