Skip to content

fix: upgrade Go to 1.26.7 and x/sys for CVEs [branch-4.0] - #2134

Merged
shibd merged 3 commits into
branch-4.0from
fix/cves-go-4.0
Aug 20, 2026
Merged

fix: upgrade Go to 1.26.7 and x/sys for CVEs [branch-4.0]#2134
shibd merged 3 commits into
branch-4.0from
fix/cves-go-4.0

Conversation

@merlimat

Copy link
Copy Markdown
Contributor

Backport of #2133 to branch-4.0 — the line that produced the bin/pulsarctl
Trivy scanned in sn-platform:4.0.12.3. Companion to
streamnative/sn-pulsar-plugins#2719 and streamnative/streamnative-bom#588.

Change Clears
Go 1.26.4 → 1.26.7 (all pins incl. release.yml + go directive) 8 stdlib CVEs
golang.org/x/sys 0.39.0 → 0.44.0 CVE-2026-39824

This branch is on the 1.26 line (unlike master's 1.25), so it moves to 1.26.7;
the stdlib fix landed in 1.26.6. Notably this branch carries release.yml
with its own quoted go-version: '1.26.4' pin — that's the workflow that
builds the released binary, and it's included here.

go.mod diff is exactly two lines. Builds clean; go vet shows only the same
pre-existing standalone_test.go finding as master.

Same fix in flight: #2133 (master), branch-4.2 PR.

Backport of the fix on master to branch-4.0. Addresses the findings Trivy
reports against bin/pulsarctl in the sn-platform 4.0.12.3 image.

Eight of the nine are Go stdlib (CVE-2026-33818, CVE-2026-39821,
CVE-2026-46600, CVE-2026-56853, CVE-2026-56858, CVE-2026-56859,
CVE-2026-56860, CVE-2026-56862) and come from the toolchain the binary is
built with, so every go-version pin moves from 1.26.4 to 1.26.7 along with
the go directive, including release.yml which builds the released binary.
The fix landed in 1.26.6; staying on the 1.26 line this branch already uses
avoids a language version jump.

The ninth is CVE-2026-39824, an integer overflow in NewNTUnicodeString,
fixed by x/sys 0.39.0 -> 0.44.0.

Builds clean. go vet reports the same pre-existing finding in
pkg/test/pulsar/standalone_test.go as master, unrelated to these upgrades.
@github-actions

Copy link
Copy Markdown

@merlimat:Thanks for your contribution. For this PR, do we need to update docs?
(The PR template contains info about doc, which helps others know more about the changes. Can you provide doc-related info in this and future PR descriptions? Thanks)

@github-actions github-actions Bot added the doc-info-missing This pr needs to mark a document option in description label Aug 20, 2026
style-check on this branch has been latently broken since #2095 moved the go
directive to the 1.26 line: the pinned golangci-lint v2.7.2 is built with Go
1.25 and refuses to load a config targeting a newer language version
("the Go language version (go1.25) used to build golangci-lint is lower than
the targeted Go version"). No PR had exercised the workflow on this branch
since then, so the Go 1.26.7 bump surfaced it rather than caused it.

v2.13.0 is the current release, built with Go 1.26. master and branch-4.2
stay on v2.7.2, which works there because their go directives are on the
1.25 line.
scan-vulnerabilities on this branch still used actions/setup-go@v1, which
dies silently under the Node 24 runtime GitHub now forces on runners. master
and branch-4.2 already use @v5 in the same workflow; this brings branch-4.0
in line. Like the golangci-lint pin, this was latent breakage surfaced by
the first PR to exercise this branch's CI since June, not caused by the Go
upgrade itself.

release.yml stays on @v4, which works; only the broken @v1 is touched.
@shibd
shibd merged commit 19260ad into branch-4.0 Aug 20, 2026
10 checks passed
@shibd
shibd deleted the fix/cves-go-4.0 branch August 20, 2026 03:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

doc-info-missing This pr needs to mark a document option in description

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants