Skip to content

Patch undici CVEs in bundled Action runtime (v1.0.2)#35

Merged
faraa2m merged 1 commit into
mainfrom
security/undici-cve-v1.0.2
May 12, 2026
Merged

Patch undici CVEs in bundled Action runtime (v1.0.2)#35
faraa2m merged 1 commit into
mainfrom
security/undici-cve-v1.0.2

Conversation

@faraa2m
Copy link
Copy Markdown
Owner

@faraa2m faraa2m commented May 12, 2026

Summary

Patches 5 CVEs in packages/action/dist/index.cjs by upgrading bundled undici from 5.29.06.25.0 via a root-level overrides field.

Resolved advisories:

Severity GHSA Description
HIGH 7.5 GHSA-vrm6-8vpv-qv8q WebSocket memory exhaustion
HIGH 7.5 GHSA-v9p9-hfj2-hcw8 WebSocket unhandled exception
MODERATE GHSA-g9mf-h72j-4rw9 Fetch decompression chain
MODERATE GHSA-2mjp-6q6p-2qxm HTTP request/response smuggling
MODERATE GHSA-4992-7rv2-5pvq CRLF injection

undici is transitive via @actions/github@6.0.1@actions/http-client@2.2.3. The 5.x line has no fix release, so the only path is the 6.x upgrade via overrides.

Test plan

  • bun test → 229/229 workspace tests pass post-upgrade (zero regressions from the undici 5→6 surface change)
  • npm audit --workspace=packages/action clean for undici
  • dist/index.cjs rebuilt + smoke-tested (node -e "require('./packages/action/dist/index.cjs')" parses + loads + initializes undici 6.x)
  • Action package.json version bumped 0.0.21.0.2 (internal version now aligns with Marketplace tag)

Release sequence after merge

  1. Merge this PR to main
  2. Tag the merge commit: git tag v1.0.2 <merge-sha>
  3. Force-move the major tag: git tag -f v1 <merge-sha> (Marketplace consumers on @v1 automatically pick up the patch)
  4. git push origin v1.0.2 then git push origin v1 --force
  5. Cut a GitHub Release for v1.0.2 with the CVE callout above

🤖 Generated with Claude Code

…(v1.0.2)

Upgrade undici from 5.29.0 to 6.25.0 via root-level npm overrides. Resolves:
- GHSA-vrm6-8vpv-qv8q (HIGH CVSS 7.5: WebSocket memory exhaustion)
- GHSA-v9p9-hfj2-hcw8 (HIGH CVSS 7.5: WebSocket unhandled exception)
- GHSA-g9mf-h72j-4rw9 (MODERATE CVSS 5.9: Fetch decompression chain)
- GHSA-2mjp-6q6p-2qxm (MODERATE CVSS 6.5: HTTP request/response smuggling)
- GHSA-4992-7rv2-5pvq (MODERATE CVSS 4.6: CRLF injection via upgrade option)

undici was a transitive dep via @actions/github@6.0.1 -> @actions/http-client@2.2.3.
Pinned at the root via package.json "overrides" since the 5.x line has no fixed
release (5.29.0 is the published "latest 5.x" but remains vulnerable). All advisory
fixed-version ranges intersect at undici >= 6.24.0.

Also bumped packages/action/package.json version 0.0.2 -> 1.0.2 to align the
internal package version with the public Marketplace tag for v1.0.2.

Rebuilt dist/index.cjs from src with the patched undici resolution.
Action Marketplace consumers should bump to @v1.0.2 or stay on @v1 (after the
major tag is force-moved post-merge).

npm audit (action workspace): 0 undici findings post-patch.
Tracked workspace tests: 229/229 pass (action: 11/11, core/cli/vscode unchanged).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented May 12, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
tokenometer Ready Ready Preview, Comment May 12, 2026 3:48am

@faraa2m faraa2m merged commit 437a14f into main May 12, 2026
8 checks passed
@faraa2m faraa2m deleted the security/undici-cve-v1.0.2 branch May 12, 2026 03:52
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