Skip to content

build(deps): bump x/crypto, x/net, x/oauth2, jwt/v5, logrus and protobuf - #9054

Merged
klesh merged 2 commits into
apache:mainfrom
DoDiODev:pr/wave4i-b
Aug 18, 2026
Merged

build(deps): bump x/crypto, x/net, x/oauth2, jwt/v5, logrus and protobuf#9054
klesh merged 2 commits into
apache:mainfrom
DoDiODev:pr/wave4i-b

Conversation

@DoDiODev

Copy link
Copy Markdown
Contributor

Summary

Bumps six dependencies that carry known advisories. Touches backend/go.mod and
backend/go.sum only — no source change was required.

Module From To CVEs
golang.org/x/crypto v0.41.0 v0.55.0 15 (7 CRITICAL)
golang.org/x/net v0.43.0 v0.58.0 CVE-2026-25680
golang.org/x/oauth2 v0.13.0 v0.36.0 CVE-2025-22868
github.com/golang-jwt/jwt/v5 v5.0.0-rc.1 v5.3.1 CVE-2025-30204
github.com/sirupsen/logrus v1.9.0 v1.10.0 CVE-2025-65637
google.golang.org/protobuf v1.31.0 v1.36.12 CVE-2024-24786

jwt/v5 was pinned to a release candidate from March 2023 in a
security-sensitive position (GitHub App tokens, OIDC sessions).

Reachability

govulncheck ./... in backend/:

reachable findings
before (upstream/main) 30
after this PR 22 (remainder: go-git 8, go-billy 2, circl 2, go-jose/v3 2 + stdlib)

This PR removes the 6 reachable x/crypto findings, 1 in x/net, 1 in x/text
(pulled up by MVS) and the jwt/v5 one. The reachable x/crypto SSH findings
come from core/utils/io.go, where archives are copied via
github.com/viant/afs, which registers an SSH/SCP backend — not from
gitextractor, which clones with the git CLI.

Verification

  • go mod tidy — clean, no further changes
  • go build ./server/... ./core/... ./helpers/... ./impls/... — green
  • unit tests of server/… (incl. server/api/auth JWT session handling),
    helpers/… (incl. oidchelper), core/…, plugins/github,
    plugins/teambition — green
  • govulncheck ./... before/after as above

Notes

MVS also pulls up x/sys, x/term, x/sync, x/mod, x/text and x/tools.

CI

Verified on a fork run of the same workflows before opening this PR:
8/8 green
(lint, unit-test, e2e MySQL, migration-script-lint, config-ui, license header,
grafana dashboards, builder image).

  golang.org/x/crypto  v0.41.0 -> v0.55.0   (15 CVEs, 7 CRITICAL)
  golang.org/x/net     v0.43.0 -> v0.58.0   (CVE-2026-25680)
  golang.org/x/oauth2  v0.13.0 -> v0.36.0   (CVE-2025-22868)

17 known CVEs in total. govulncheck confirms 8 of them are reachable from
this code base: 6 in x/crypto, 1 in x/net and 1 in x/text -- x/text is pulled
up by minimal version selection along with the rest of the golang.org/x set
(x/sys, x/term, x/sync, x/mod, x/tools). After the bump govulncheck reports
none of them.

The reachable x/crypto findings are in the SSH stack and are reached
through core/utils/io.go, where archives are copied with
github.com/viant/afs -- that library registers an SSH/SCP backend, so
ssh.Dial, ssh.ParsePrivateKey and the agent signer end up in the build
graph. They are not reached through gitextractor: cloning is done by the
git CLI, not by a Go SSH client.

x/oauth2 is used directly by server/api/auth and helpers/oidchelper; its
finding is a malformed token that allocates without bound during parsing.

No source change was required -- none of the bumped packages changed an API
surface this code base touches.

Signed-off-by: DoDiODev <DoDiDev@proton.me>
… and protobuf

  github.com/golang-jwt/jwt/v5   v5.0.0-rc.1 -> v5.3.1
  github.com/sirupsen/logrus     v1.9.0      -> v1.10.0
  google.golang.org/protobuf     v1.31.0     -> v1.36.12

jwt/v5 was pinned to a release candidate published in March 2023. Besides
being a pre-release in a security-sensitive position, v5.0.0-rc.1 is
affected by CVE-2025-30204 (HIGH), which govulncheck reports as reachable
from this code base. v5.3.1 is the current stable release.

jwt/v5 is used by the GitHub App token flow (plugins/github/token,
plugins/github/models/connection.go), the Teambition connection and the
OIDC session helper (helpers/oidchelper/session.go). Moving from the RC to
stable needed no source change; the signing, parsing and claims APIs used
here are unchanged.

logrus v1.9.0 (CVE-2025-65637, HIGH) and protobuf v1.31.0 (CVE-2024-24786)
are bumped to current releases in the same pass.

Verified with the unit tests of the affected packages, including
server/api/auth (JWT session handling) and helpers/oidchelper.

Signed-off-by: DoDiODev <DoDiDev@proton.me>
DoDiODev added a commit to DoDiODev/devlake that referenced this pull request Aug 17, 2026
…e#9054

Re-checked before opening the upstream PR: x/net moved on to v0.58.0 and
logrus to v1.10.0 since the wave was prepared on 2026-08-12.
Signed-off-by: DoDiODev <DoDiDev@proton.me>
DoDiODev added a commit to DoDiODev/devlake that referenced this pull request Aug 17, 2026
…e#9054

Re-checked before opening the upstream PR: x/net moved on to v0.58.0 and
logrus to v1.10.0 since the wave was prepared on 2026-08-12.

Signed-off-by: DoDiODev <DoDiDev@proton.me>

@klesh klesh left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM
Thanks for your contribution.

@klesh
klesh merged commit 5cd1671 into apache:main Aug 18, 2026
7 checks passed
@DoDiODev
DoDiODev deleted the pr/wave4i-b branch August 18, 2026 14:05
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