[release-4.19] Replace golang.org/x/crypto with sustaining fork for CVE-2026-39829 - #1534
[release-4.19] Replace golang.org/x/crypto with sustaining fork for CVE-2026-39829#1534atewari-rh wants to merge 1 commit into
Conversation
…VE-2026-39829 Signed-off-by: atewari <atewari@redhat.com>
|
Pipeline controller notification For optional jobs, comment This repository is configured in: LGTM mode |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository: openshift/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Hi @atewari-rh. Thanks for your PR. I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with Regular contributors should join the org to skip this step. Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
What
Replaces
golang.org/x/cryptowith the sustaining team's patched fork(
github.com/openshift-sustaining/crypto@v0.41.0-sec.3) to fixCVE-2026-39829 — a DoS in
golang.org/x/crypto/sshfrom unbounded RSA/DSA key parameters.Why a fork
Upstream fix is in
v0.52.0, but that requires a newer Go toolchain thanrelease-4.19carries (
go 1.23.0). The fork backports the fix without a Go bump:```
go mod edit -replace golang.org/x/crypto=github.com/openshift-sustaining/crypto@v0.41.0-sec.3
go mod tidy && go mod vendor
```
Changes
go.mod: added the replace directive + transitive bumps pulled in by the fork'sgo.modvendor/golang.org/x/crypto/**,vendor/modules.txt: regenerated viago mod vendorTesting
make build/go build -mod=vendor ./...— cleanvendor/golang.org/x/crypto/ssh/keys.gocontains the patched 8192-bit RSA modulus checkmake test: 17/18 test functions pass.TestDefaultAzureProviderSpecfails on arm64hosts only — pre-existing, unrelated bug (test doesn't account for
arch == ARM64logicin
machine_webhook.go). Confirmed viagit stashthis fails identically without thischange too; not release-blocking since CI runs on amd64.
Related: OCPBUGS-89943