Skip to content

chore(deps): bump golang.org/x/crypto to 0.35.0 (4 CRIT + 4 HIGH CVE fixes)#19

Merged
KooshaPari merged 2 commits intomainfrom
chore/golang-crypto-0.31.0-critical
Apr 24, 2026
Merged

chore(deps): bump golang.org/x/crypto to 0.35.0 (4 CRIT + 4 HIGH CVE fixes)#19
KooshaPari merged 2 commits intomainfrom
chore/golang-crypto-0.31.0-critical

Conversation

@KooshaPari
Copy link
Copy Markdown
Owner

@KooshaPari KooshaPari commented Apr 24, 2026

Summary

Bumps golang.org/x/crypto from v0.31.0 to v0.35.0 across all 4 Go modules in the repo.

v0.35.0 is the first patched version covering both:

The prior 0.31.0 bump only addressed the critical alerts; this supersedes it to also close the 4 high-severity alerts in a single bump.

Manifests touched

  • backend/byteport/go.mod
  • backend/nvms/go.mod
  • backend/nvms/Demonstrator/go.mod
  • backend/nvms/Provisioner/go.mod

Verification

  • go build ./... exits 0 in each module (pre-existing fermyon SDK export-comment warning is unrelated, not fatal).

Test plan

Closes Dependabot alerts: #16 #18 #20 #21 #22 #23 #24 #25


Note

Medium Risk
Primarily dependency and Go toolchain version bumps; risk is limited but could surface build/runtime compatibility issues across the multiple backend modules due to updated x/crypto and related transitive packages.

Overview
Upgrades backend Go dependencies to address security/maintenance updates. backend/byteport now uses golang.org/x/crypto v0.35.0 (direct) and refreshes transitive versions (golang.org/x/sys v0.30.0, golang.org/x/text v0.22.0) with updated go.sum.

Aligns the nvms modules on newer Go versions/toolchain. backend/nvms, nvms/Demonstrator, and nvms/Provisioner bump go to 1.23.0 and toolchain to go1.23.4, and update indirect deps (x/crypto to v0.35.0, x/sys to v0.30.0); Provisioner also drops some no-longer-needed indirect entries from its module files.

Reviewed by Cursor Bugbot for commit 4a25a1c. Bugbot is set up for automated code reviews on this repo. Configure here.

Fixes 4 CRITICAL Dependabot alerts (< 0.31.0) across the 4 backend
Go modules. Transitively upgrades golang.org/x/sys to 0.28.0 and
golang.org/x/text to 0.21.0 via go mod tidy.

Modules updated:
- backend/byteport: v0.29.0 -> v0.31.0 (direct)
- backend/nvms: v0.28.0 -> v0.31.0 (indirect)
- backend/nvms/Demonstrator: v0.28.0 -> v0.31.0 (indirect)
- backend/nvms/Provisioner: v0.28.0 -> v0.31.0 (indirect)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@gemini-code-assist
Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@codeant-ai
Copy link
Copy Markdown

codeant-ai Bot commented Apr 24, 2026

CodeAnt AI is reviewing your PR.


Thanks for using CodeAnt! 🎉

We're free for open-source projects. if you're enjoying it, help us grow by sharing.

Share on X ·
Reddit ·
LinkedIn

@codeant-ai codeant-ai Bot added the size:S This PR changes 10-29 lines, ignoring generated files label Apr 24, 2026
@kilo-code-bot
Copy link
Copy Markdown

kilo-code-bot Bot commented Apr 24, 2026

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Files Reviewed (10 files)
  • backend/byteport/go.mod
  • backend/byteport/go.sum
  • backend/nvms/Demonstrator/go.mod
  • backend/nvms/Demonstrator/go.sum
  • backend/nvms/Provisioner/go.mod
  • backend/nvms/Provisioner/go.sum
  • backend/nvms/go.mod
  • backend/nvms/go.sum

Reviewed by nemotron-3-super-120b-a12b-20230311:free · 2,223,367 tokens

Comment thread backend/nvms/Provisioner/go.mod Outdated
golang.org/x/sys v0.27.0 // indirect
golang.org/x/text v0.19.0 // indirect
gorm.io/gorm v1.25.12 // indirect
golang.org/x/crypto v0.31.0 // indirect
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Suggestion: golang.org/x/crypto v0.31.0 is still in a known vulnerable range (the HIGH advisory mentioned in the PR notes affects versions < 0.35.0). Pinning to this version leaves the module exposed; upgrade to a non-vulnerable release (>= v0.35.0, ideally latest) to fully remediate known crypto CVEs. [security]

Severity Level: Critical 🚨
- ⚠️ Provisioner Spin HTTP component uses vulnerable x/crypto dependency.
- ⚠️ Handles decrypted user Git access tokens and repository archives.
- ⚠️ Dependabot HIGH advisory for x/crypto remains unresolved here.
Steps of Reproduction ✅
1. Open the Provisioner module manifest at `backend/nvms/Provisioner/go.mod` and observe
line 18: `golang.org/x/crypto v0.31.0 // indirect`, which pins the module to version
0.31.0 (confirmed via Read of this file).

2. From the `backend/nvms/Provisioner` directory, running `go list -m golang.org/x/crypto`
(or inspecting `go.sum`) would resolve `golang.org/x/crypto` to v0.31.0 for this Spin HTTP
component, meaning all its transitive users in this module graph link against that
vulnerable version.

3. Follow the Provisioner's main entrypoint in `backend/nvms/Provisioner/main.go`: the
`init()` function at ~line 152 registers a Spin HTTP handler that reads a request body
into a `models.Project`, then calls `lib.DecryptSecret(project.User.Git.Token)` at line
172 to decrypt a user's Git access token and then downloads and processes a repository
ZIP.

4. Because this Provisioner component handles sensitive user secrets and repository
content while its module graph still includes `golang.org/x/crypto` v0.31.0 (a version
explicitly called out in the PR description as remaining within the HIGH-severity advisory
range `< v0.35.0`), any transitive dependency that relies on affected `x/crypto`
primitives will continue to operate with a known-vulnerable crypto implementation until
the version is raised to `>= v0.35.0`.

Fix in Cursor | Fix in VSCode Claude

(Use Cmd/Ctrl + Click for best experience)

Prompt for AI Agent 🤖
This is a comment left during a code review.

**Path:** backend/nvms/Provisioner/go.mod
**Line:** 18:18
**Comment:**
	*Security: `golang.org/x/crypto v0.31.0` is still in a known vulnerable range (the HIGH advisory mentioned in the PR notes affects versions `< 0.35.0`). Pinning to this version leaves the module exposed; upgrade to a non-vulnerable release (>= `v0.35.0`, ideally latest) to fully remediate known crypto CVEs.

Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
👍 | 👎

@codeant-ai
Copy link
Copy Markdown

codeant-ai Bot commented Apr 24, 2026

CodeAnt AI finished reviewing your PR.

kilo-code-bot[bot]
kilo-code-bot Bot previously approved these changes Apr 24, 2026
Supersedes 0.31.0 bump. 0.35.0 is the first patched version covering
both the critical GHSA-v778-237x-gjrc and the high-severity
GHSA-hcg3-q754-cr77 advisories across all 4 go.mod manifests:

- backend/byteport/go.mod
- backend/nvms/go.mod
- backend/nvms/Demonstrator/go.mod
- backend/nvms/Provisioner/go.mod

Resolves Dependabot alerts:
  CRIT: #16, #20, #22, #24 (GHSA-v778-237x-gjrc)
  HIGH: #18, #21, #23, #25 (GHSA-hcg3-q754-cr77)

Verified via go build ./... in each module.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@KooshaPari KooshaPari changed the title chore(deps): bump golang.org/x/crypto to 0.31.0 (4 CRIT CVE fixes) chore(deps): bump golang.org/x/crypto to 0.35.0 (4 CRIT + 4 HIGH CVE fixes) Apr 24, 2026
@socket-security
Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedgolang/​golang.org/​x/​crypto@​v0.29.0 ⏵ v0.35.073 +198 +73100100100

View full report

Copy link
Copy Markdown

@kilo-code-bot kilo-code-bot Bot left a comment

Choose a reason for hiding this comment

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

Incremental dependency updates reviewed. No issues found. Updates are appropriate and pose no risks.

@KooshaPari KooshaPari merged commit 637165b into main Apr 24, 2026
6 of 10 checks passed
@KooshaPari KooshaPari deleted the chore/golang-crypto-0.31.0-critical branch April 24, 2026 22:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S This PR changes 10-29 lines, ignoring generated files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant