Skip to content

fix(deps): remediate critical/high dependency vulnerabilities#10

Merged
PatrykMilewski merged 1 commit into
masterfrom
fix/dependency-vulnerabilities
Jun 16, 2026
Merged

fix(deps): remediate critical/high dependency vulnerabilities#10
PatrykMilewski merged 1 commit into
masterfrom
fix/dependency-vulnerabilities

Conversation

@PatrykMilewski

Copy link
Copy Markdown
Contributor

Summary

Remediates the open critical + high Dependabot alerts in go.mod by bumping the affected modules to patched versions, plus most in-range moderates. All vulnerable modules other than docker/docker are reachable only through the bufbuild/buf codegen tool (the tool directive) — they are never linked into the threshold-signing library or its consumers.

govulncheck (the CI security gate, which does reachability analysis) reports zero reachable vulnerabilities after this change.

Remediated

Module Sev From To Advisory
google.golang.org/grpc critical 1.73.0 1.81.1 GHSA-p77j-4mvh-x3m3
github.com/docker/cli high 28.3.3 29.2.0 GHSA-p436-gjf2-799p
github.com/quic-go/quic-go high (+2 mod) 0.54.0 0.59.1 GHSA-47m2-4cr7-mhcw, GHSA-g754-hx8w-x2g6, GHSA-vvgj-x9jq-8cj9
go.opentelemetry.io/otel high 1.37.0 1.43.0 GHSA-mh2q-q3fh-2475
golang.org/x/crypto moderate (x2) 0.40.0 0.48.0 GHSA-f6x5-jh6r-wrfv, GHSA-j5w8-q4qc-rx2x
filippo.io/edwards25519 low 1.1.0 1.1.1 GHSA-fw7p-63qq-7hpr

Also pinned toolchain go1.25.11 to clear two reachable Go standard-library advisories that govulncheck flagged (GO-2026-5037 crypto/x509, GO-2026-4601 net/url).

Not fixed — github.com/docker/docker highs (3)

GHSA-x744-4wpc-v9h2, GHSA-rg2x-37c3-w2rh, GHSA-x86f-5xw2-fm2r cannot be cleared by a version bump:

  • The Docker engine moved to the github.com/docker/docker/v29 / github.com/moby/moby/v2 module paths at v29. The legacy github.com/docker/docker path that bufbuild/buf imports tops out at v28.5.2 (bumped to that max here) and has no patched release for these advisories.
  • Clearing them requires buf upstream to migrate its import to moby/moby/v2; no released buf version (latest 1.70.0) has done so.
  • Exposure is build-time-only: docker/docker is pulled in solely via the buf codegen tool, is not imported by the TSS library, and govulncheck confirms it is not reachable from any shipped code path.

Tracked as a follow-up to bump once buf adopts the v29/moby-v2 module path.

Breaking changes

  • go directive bumped 1.241.25.0. This is forced by the patched dependencies (grpc 1.81, otel 1.43, quic-go 0.59, x/crypto 0.48 all require Go 1.25). Consumers must build with Go 1.25+.

Verification

  • go build ./... — clean
  • go vet ./... — no new findings (pre-existing safe_prime / resharing lock-copy warnings unchanged)
  • go mod verify — all modules verified
  • govulncheck ./...No vulnerabilities found (0 reachable)
  • go test ./common/... ./crypto/... — all pass, including every ZKP proof suite (affg, dec, enc, fac, logstar, mod, mul, prm, sch), Paillier, VSS, commitments. The full tss/... keygen/signing suites were not run end-to-end (each takes many minutes); the crypto-primitive suites passing is the representative signal that signing math is unchanged.

Generated by Claude Code Agent

Bump vulnerable Go modules to patched versions:

- google.golang.org/grpc 1.73.0 -> 1.81.1 (CRITICAL GHSA-p77j-4mvh-x3m3)
- github.com/docker/cli 28.3.3 -> 29.2.0 (HIGH GHSA-p436-gjf2-799p)
- github.com/quic-go/quic-go 0.54.0 -> 0.59.1 (HIGH GHSA-47m2-4cr7-mhcw + moderates)
- go.opentelemetry.io/otel 1.37.0 -> 1.43.0 (HIGH GHSA-mh2q-q3fh-2475)
- golang.org/x/crypto 0.40.0 -> 0.48.0 (moderate GHSA-f6x5/GHSA-j5w8)
- filippo.io/edwards25519 1.1.0 -> 1.1.1 (low GHSA-fw7p-63qq-7hpr)
- github.com/docker/docker 28.3.3 -> 28.5.2 (max on legacy module path)

Pin toolchain go1.25.11 to clear two reachable stdlib advisories
(GO-2026-5037 crypto/x509, GO-2026-4601 net/url) flagged by govulncheck.

All vulnerable modules except docker/docker are reachable only through
the bufbuild/buf codegen tool (tool directive), not the signing library.
govulncheck reports zero reachable vulnerabilities after this change.
Crypto and common test suites (incl. all ZKP proofs) pass unchanged.

Generated by Claude Code Agent
@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@PatrykMilewski, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 1 hour, 4 minutes, and 4 seconds. Learn how PR review limits work.

Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file).

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9594b643-6213-4efb-a2e1-1dc3291b82b4

📥 Commits

Reviewing files that changed from the base of the PR and between 3b9cfae and 9995a22.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (1)
  • go.mod
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/dependency-vulnerabilities

Comment @coderabbitai help to get the list of available commands and usage tips.

@JacobPlaster JacobPlaster left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM — no P0/P1 findings.

  • Claude

@PatrykMilewski
PatrykMilewski merged commit 576cc80 into master Jun 16, 2026
6 checks passed
@PatrykMilewski
PatrykMilewski deleted the fix/dependency-vulnerabilities branch June 16, 2026 08:02
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.

2 participants