OCPBUGS-102145: Replace golang.org/x/net with sustaining fork v0.35.0-sec.4 - #320
katekeiroz-dev wants to merge 1 commit into
Conversation
…-sec.4 CVE-2026-33814: The HTTP/2 client transport can enter an infinite CONTINUATION-frame write loop when a server returns SETTINGS_MAX_FRAME_SIZE=0. Upstream golang.org/x/net v0.53.0 requires Go 1.25.0, which is incompatible with release-4.12 (go 1.18). The OpenShift sustaining fork v0.35.0-sec.4 backports the security fix while remaining Go 1.18+ compatible. Related: OCPBUGS-102145 Co-authored-by: Cursor <cursoragent@cursor.com>
|
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: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
|
@katekeiroz-dev: This pull request references Jira Issue OCPBUGS-102145, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. DetailsIn response to this:
Instructions 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 openshift-eng/jira-lifecycle-plugin repository. |
|
Pipeline controller notification For optional jobs, comment This repository is configured in: LGTM mode |
|
/ok-to-test |
|
[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 |
|
/retest-required |
|
@katekeiroz-dev: The following tests failed, say
Full PR test history. Your PR dashboard. 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. I understand the commands that are listed here. |
Summary
This PR addresses CVE-2026-33814 (GO-2026-4918) by replacing
golang.org/x/netwith the OpenShift sustaining fork that backports the HTTP/2SETTINGS_MAX_FRAME_SIZEDoS fix. A direct bump to upstreamv0.53.0is not used because that module requires Go 1.25.0, which would change thegodirective onrelease-4.12.Changes
replace golang.org/x/net => github.com/openshift-sustaining/net v0.35.0-sec.4togo.modgo mod tidyandgo mod vendorgo 1.18unchangedCommands Used
Why Replace Directive?
Upstream
golang.org/x/net v0.53.0requires Go 1.25.0, butrelease-4.12must stay on Go 1.18. The sustaining forkv0.35.0-sec.4backports the HTTP/2 SETTINGS validation fix onto a Go 1.18-compatible module line.This matches the approach already used for the same CVE on MAPO 4.15 (
openshift/machine-api-provider-openstack#182).CVE Details
CVE-2026-33814: Go HTTP/2 denial of service via malformed
SETTINGS_MAX_FRAME_SIZEframegolang.org/x/netbefore v0.53.0SETTINGS_MAX_FRAME_SIZEwith value 0v0.18.0The stdlib
net/httpvector of this CVE is handled separately via ART builder-image rebuilds (openshift-golang-builder-container).Test Plan
godirective unchanged (go 1.18)s.Valid()inhttp2.processSettingsNoWrite(rejects invalidMAX_FRAME_SIZE)go build .succeeds with Go 1.18.10Related
Made with Cursor