chore(deps): update module google.golang.org/grpc to v1.83.1 [security] - #533
Conversation
ℹ Artifact update noticeFile name: deployment/operator/go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
File name: tools/utils/go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
✅ Approve — automated reviewThe dependency updates are consistent across both affected Go modules and their checksum files. No actionable regression is evident in the diff. No findings. |
Review: PR #533 — update
|
This PR contains the following updates:
v1.82.1->v1.83.1gRPC-Go: Heap Memory Exhaustion (OOM) via HTTP/2 DATA Frame Fragmentation
CVE-2026-84304 / GHSA-vp52-pcj8-j9qc
More information
Details
Impact
An unauthenticated remote attacker can initiate a gRPC stream and purposefully fragment their payload into millions of tiny (e.g., 1-byte) HTTP/2 DATA frames. Even if the total payload volume falls within the configured connection and stream flow-control windows, each independent fragment incurs memory overhead due to internal tracking structures and queue allocation.
Repeated fragmentation massively inflates the heap space consumed by the stream. An attacker multiplexing multiple concurrent streams can exhaust the memory bounds of the runtime, forcing a runtime panic or OutOfMemory condition and leading to a remote Denial of Service (DoS).
Patches
The change to fix this issue is merged in
masterand a patch release, 1.83.1, has been published that contains this fix.Workarounds
This vulnerability is mitigated by implementing receive buffer compaction. Consecutive small data buffers are automatically coalesced into larger buffers from a shared pool once the overhead is perceived to be excessive relative to actual payload data, drastically minimizing per-frame memory overheads.
This behavior is enabled by default. A temporary escape hatch is provided via the environment variable
GRPC_GO_EXPERIMENTAL_ENABLE_RECEIVE_BUFFER_COMPACTION=falseto disable the feature if unforeseen issues arise, but it will be removed in a future release.Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Release Notes
grpc/grpc-go (google.golang.org/grpc)
v1.83.1: Release 1.83.1Compare Source
Security
PrincipalorPermissionrules with:schemeorgrpc-prefixed header matchers were not rejected, which could cause DENY rules to fail open. (#9258)hostheader matcher was not being replaced with:authorityin nestedPrincipalorPermissionrules. (#9258)X-Role, matched no header, which could cause DENY rules to fail open. (#9332):schemeorgrpc-prefixed header matcher was accepted when its name was not lowercase. (#9332)Hostheader matcher was not replaced with:authority. (#9332)Performance
v1.83.0: Release 1.83.0Compare Source
Security
GRPC_GO_EXPERIMENTAL_CONTROL_BUFFER_THROTTLE_LIMIT.MetadataandRequestedServerNamepermissions matcher fields. If present in a DENY rule, previously these would be ignored and fail-open.NotRule/NotIdpermissions.source_ipprincipal identifier by treating it as equivalent todirect_remote_ip.exact_match,prefix_match, orsuffix_matchstrings. (#9223)New Features
force-xdstarget URI query parameter. (#9133)OnPolicyUpdatecallback toFileWatcherOptionsto notify when an authz policy is loaded or updated. (#9142)GRPC_EXPERIMENTAL_XDS_GCP_AUTHENTICATION_FILTER=true. (#9119)GRPC_EXPERIMENTAL_XDS_HTTP_CONNECT=true. (#9151)contains_matchin route header matchers. (#9223)Bug Fixes
GOOS=plan9), broken since v1.81.0. (#9255)v1.82.2: Release 1.82.2Compare Source
Security
:authorityandHostheaders with HTTP 400 and statusInternal. (https://github.com/grpc/grpc-go/pull/9365)Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Renovate Bot.