Skip to content

chore: bump Go to 1.26.6 (5 stdlib CVEs) - #28

Merged
kshahbw merged 1 commit into
mainfrom
chore/bump-go-1.26.6
Aug 14, 2026
Merged

chore: bump Go to 1.26.6 (5 stdlib CVEs)#28
kshahbw merged 1 commit into
mainfrom
chore/bump-go-1.26.6

Conversation

@kshahbw

@kshahbw kshahbw commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

BLUF

govulncheck reports five Go standard-library vulnerabilities against 1.26.5, all fixed in 1.26.6. One-line change to go.mod. Verified locally: 5 affected → 0.

Why now

These CVEs landed after main last ran CI on 2026-08-11, so main is red on the security job independently of any open PR — it just hasn't re-run. PR #27 was the first thing to run CI since and surfaced it.

What's affected

Advisory Package Fix
GO-2026-6088 encoding/xml — recursion depth guard during decode go1.26.6
GO-2026-5972 encoding/asn1 — maximum recursion depth go1.26.6
GO-2026-5026 net/http — ASCII-only Punycode labels in x/net/idna go1.26.6

Plus two crypto/tls traces against the same toolchain.

These are called paths, not merely present in the binary — govulncheck traced them through internal/api/xml.go, internal/api/client.go, internal/sip/service.go, internal/cmdutil/numbertype.go, and internal/version/check.go.

Verification

Run locally under GOTOOLCHAIN=go1.26.6:

go build ./...    ok
go test ./...     ok
go vet ./...      ok
govulncheck ./... Your code is affected by 0 vulnerabilities.

Baseline on 1.26.5 for comparison: affected by 5 vulnerabilities.

CI picks the toolchain up automatically — every job uses go-version-file: go.mod.

Notes

Follows the precedent of #19 (chore: bump Go to 1.26.5, GO-2026-5856).

Two related gaps this PR does not address:

  1. CI has no scheduled run. ci.yml triggers only on push-to-main and PRs, so a new CVE stays invisible until someone opens a PR. That's why this surfaced three days late and on an unrelated PR.
  2. ci.yml:58 installs govulncheck@latest, so the scanner can change between runs — the security job can start failing with no repo change.

A follow-up PR adds a scheduled workflow that opens a bump PR automatically when a newer Go patch is released.

govulncheck reports five standard-library vulnerabilities against 1.26.5,
all fixed in 1.26.6:

  GO-2026-6088  encoding/xml    recursion depth guard during decode
  GO-2026-5972  encoding/asn1   maximum recursion depth
  GO-2026-5026  net/http        ASCII-only Punycode labels in x/net/idna
  (plus two crypto/tls traces reported against the same toolchain)

Reached through internal/api/xml.go, internal/api/client.go,
internal/sip/service.go, internal/cmdutil/numbertype.go, and
internal/version/check.go — so they are called paths, not merely present.

Verified locally on 1.26.6: build, full test suite, and vet all pass, and
govulncheck goes from 5 affected vulnerabilities to 0.

These CVEs landed after main last ran CI on 2026-08-11, so main is red on
the security job independently of any open PR.
@kshahbw
kshahbw requested review from a team as code owners August 14, 2026 14:33
@bwappsec

bwappsec commented Aug 14, 2026

Copy link
Copy Markdown

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues
Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@kshahbw
kshahbw merged commit ae5b960 into main Aug 14, 2026
8 checks passed
@kshahbw
kshahbw deleted the chore/bump-go-1.26.6 branch August 14, 2026 14:48
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.

4 participants