[CVE] bump oras-go to v2.6.2 and grpc to v1.82.1 (release-v1.40) - #5145
[CVE] bump oras-go to v2.6.2 and grpc to v1.82.1 (release-v1.40)#5145pasanw wants to merge 1 commit into
Conversation
7db4e22 to
26d76ac
Compare
Indirect dependency bumps only; no operator code changes, no k8s change. - oras.land/oras-go/v2 v2.6.0 -> v2.6.2: clears CVE-2026-50151 and CVE-2026-50163 (oras hardlink path traversal, high 7.1). Both are recorded as fixed = 2.6.2 by OSV and the GitHub Advisory DB, and by the master / release-v1.43 fixes (tigera#5100 / tigera#5101). (An earlier version of this PR stopped at v2.6.1 and wrongly stated v2.6.2 was not the fix.) - google.golang.org/grpc -> v1.82.1: clears GHSA-hrxh-6v49-42gf / GO-2026-6061. Both requires carry advisory-naming comments so a future go mod tidy cannot silently revert the pins. NOT fixed here, deliberately: the containerd advisories CVE-2026-50195 (crit 9.9), CVE-2026-53492 (crit 9.6) and CVE-2026-53489 (high). containerd 1.7.33 has no fixed version; the only remediation is dropping the (purely transitive, via Helm) dependency by bumping Helm to v3.21.3 -- but every containerd-free Helm is already on k8s v0.36, and this branch is kept on k8s v0.35 to stay aligned with the calico-private core (also on k8s 1.35), avoiding an operator/core minor-version divergence. These three are VEXed on this line; master and release-v1.43, already on k8s 1.36, take the Helm route (tigera#5100 / tigera#5101). Supersedes the autoclosed Renovate security PRs tigera#5092 (grpc) and tigera#5011 (oras v2.6.1). Renovate keys vulnerability alerts off the default branch, so release-branch security PRs autoclose when master is fixed -- this branch's exposure would otherwise be invisible to automation post-merge. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
26d76ac to
276e575
Compare
electricjesus
left a comment
There was a problem hiding this comment.
looks solid. I checked the version claims and the containerd call, and they all hold up. two follow-up notes:
release-v1.42 is already on k8s.io/client-go v0.36.3, but still on helm.sh/helm/v3 v3.20.2. So the k8s reason for holding containerd back doesn't apply there. It could take 3.21.3 today, same as master and v1.43. Might be worth naming it in the FYI next to them..
other one is the VEX next-step. The scan lists these under their GO-* and GHSA-* ids too, and the allowlist matches on the id. So all three forms need to go in, or the rows stay:
CVE-2026-50195/GO-2026-5338/GHSA-cvxm-645q-p574CVE-2026-53492/GO-2026-5064/GHSA-33vj-92qq-66hcCVE-2026-53489/GO-2026-5622/GHSA-rgh6-rfwx-v388
| k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect | ||
| k8s.io/kubectl v0.35.7 // indirect | ||
| oras.land/oras-go/v2 v2.6.0 // indirect | ||
| oras.land/oras-go/v2 v2.6.2 // indirect; pinned: CVE-2026-50151, CVE-2026-50163 |
There was a problem hiding this comment.
checked this one myself since you called out the correction. OSV backs you up. 2.6.0 matches five advisories, 2.6.1 still matches CVE-2026-50163, and 2.6.2 comes back clean. So 2.6.2 is right, and that No fix available column is just stale.
Worth knowing the same bump clears three more that 2.6.1 had already fixed: CVE-2026-50162, CVE-2026-48978, GO-2026-5884. All moderate or low, so they sit under the bar. Just more than the two you credited.
✅ 3 High CVEs removed (oras ×2, grpc ×1) · 3 remain (containerd — VEX, deferred to hold k8s 1.35)
Indirect Go-dependency bumps only — no operator code changes and no Kubernetes-version change. This branch (release-v1.40, Calico Enterprise v3.22.7) is deliberately kept on k8s 1.35 to stay aligned with the calico-private core; see FYI.
Core version changes
None. Helm (
v3.20.2) and thek8s.io/*client (v0.35.7) are deliberately unchanged. Bumping Helm to drop the transitive containerd dependency would drag k8s to 1.36 and diverge this branch's Kubernetes minor from the calico-private core (k8s 1.35). See the containerd row and FYI.Package version changes
oras.land/oras-go/v2// indirect; pinned: …comment so a futurego mod tidycannot silently revert it.google.golang.org/grpcCVEs resolved
fixed_versioncolumn readNo fix available, but the advisory text itself, OSV, and the GitHub Advisory DB all recordfixed = 2.6.2. An earlier iteration of this PR trusted the stale column and stopped at 2.6.1 — corrected here.CVEs not resolved
masterandrelease-v1.43— already on k8s 1.36 — take the Helm route in #5100 / #5101.) The raw scan shows more than three crit/high rows for containerd because twistcli and grype each list every finding and grype rates two of them critical where twistcli rates them medium/high; de-aliased, there are exactly these 3 distinct CVEs.FYI
enterpriselabel removed — a go.mod bump ships to every install (OSS and Enterprise), and the sibling security PRs are unlabelled.Release Note
For PR reviewers
Suggested labels:
kind/bug,release-note-required,docs-not-required(noenterprise).