govulncheck: reachable vulnerabilities on main #543
Labels
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: Cordy/Cairn#543
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The weekly vulncheck workflow found vulnerabilities reachable from our code.
Fix recipe (#447):
go get go@patchon a branch (or bump the affected dependency), full suite green, release, bump dogfoods.Filed automatically by the scheduled vulncheck workflow.
Fixed — v0.6.207 (PR #560), live on both dogfoods.
go get go@patchmoved thegodirective 1.26.0 → 1.26.8, clearing all 25 standard-library advisories:html/templateescaping,osFileInfo escaping aRoot(POSIX driverList, audit reader),net/urlIPv6 host-literal parsing, and the twocrypto/x509issues reached through the S3 driver's TLS handshake.The scan then found a second layer. With the stdlib traces gone, govulncheck surfaced
google.golang.org/grpc@v1.83.0in the transport, reachable frompeering.Client.ReceiverSpacesand from the peering gRPC server ingatePeering— 16 traces. The one-shot's guard refused to commit on a non-clean scan, so it failed rather than shipping a half-fix, and the release carries both bumps: grpc → v1.83.1.Worth writing down for the next time this fires: a vulnerability report is a stack, not a list. Fixing the top layer can reveal the one beneath it, so "the reported CVEs are gone" is not the same as "the scanner is clean". The success condition has to be govulncheck's own verdict, asserted, not the disappearance of the specific IDs in the issue body. The #447 recipe should be read that way.
Verification (all on the runner, before the commit):
go build ./...andgo vet ./...clean, fullgo test ./...green,govulncheck ./...→ "Your code is affected by 0 vulnerabilities", asserted as a hard gate.No Cairn source changed —
go.mod,go.sum,CHANGELOG.mdonly. The ko release build picked up 1.26.8 with no workflow change, since release already bootstraps go1.22.5 and letsGOTOOLCHAIN=autofetch whatevergo.modnames. Both pods booted clean onversion=v0.6.207.