fix(deps): update module google.golang.org/grpc to v1.79.3 [security]#25
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
fix(deps): update module google.golang.org/grpc to v1.79.3 [security]#25renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
Contributor
Author
βΉοΈ Artifact update noticeFile name: go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.69.2βv1.79.3GitHub Vulnerability Alerts
CVE-2026-33186
Impact
What kind of vulnerability is it? Who is impacted?
It is an Authorization Bypass resulting from Improper Input Validation of the HTTP/2
:pathpseudo-header.The gRPC-Go server was too lenient in its routing logic, accepting requests where the
:pathomitted the mandatory leading slash (e.g.,Service/Methodinstead of/Service/Method). While the server successfully routed these requests to the correct handler, authorization interceptors (including the officialgrpc/authzpackage) evaluated the raw, non-canonical path string. Consequently, "deny" rules defined using canonical paths (starting with/) failed to match the incoming request, allowing it to bypass the policy if a fallback "allow" rule was present.Who is impacted?
This affects gRPC-Go servers that meet both of the following criteria:
google.golang.org/grpc/authzor custom interceptors relying oninfo.FullMethodorgrpc.Method(ctx).The vulnerability is exploitable by an attacker who can send raw HTTP/2 frames with malformed
:pathheaders directly to the gRPC server.Patches
Has the problem been patched? What versions should users upgrade to?
Yes, the issue has been patched. The fix ensures that any request with a
:paththat does not start with a leading slash is immediately rejected with acodes.Unimplementederror, preventing it from reaching authorization interceptors or handlers with a non-canonical path string.Users should upgrade to the following versions (or newer):
It is recommended that all users employing path-based authorization (especially
grpc/authz) upgrade as soon as the patch is available in a tagged release.Workarounds
Is there a way for users to fix or remediate the vulnerability without upgrading?
While upgrading is the most secure and recommended path, users can mitigate the vulnerability using one of the following methods:
1. Use a Validating Interceptor (Recommended Mitigation)
Add an "outermost" interceptor to your server that validates the path before any other authorization logic runs:
2. Infrastructure-Level Normalization
If your gRPC server is behind a reverse proxy or load balancer (such as Envoy, NGINX, or an L7 Cloud Load Balancer), ensure it is configured to enforce strict HTTP/2 compliance for pseudo-headers and reject or normalize requests where the
:pathheader does not start with a leading slash.3. Policy Hardening
Switch to a "default deny" posture in your authorization policies (explicitly listing all allowed paths and denying everything else) to reduce the risk of bypasses via malformed inputs.
Release Notes
grpc/grpc-go (google.golang.org/grpc)
v1.79.3: Release 1.79.3Compare Source
Security
grpc/authz. Any request with a non-canonical path is now immediately rejected with anUnimplementederror. (#β8981)v1.79.2: Release 1.79.2Compare Source
Bug Fixes
v1.79.1: Release 1.79.1Compare Source
Bug Fixes
-devsuffix from the User-Agent header. (#β8902)v1.79.0: Release 1.79.0Compare Source
API Changes
SetDefaultBufferPoolto change the default buffer pool. (#β8806)MetricsRecorderto require embedding the newUnimplementedMetricsRecorder(a no-op struct) in all implementations for forward compatibility. (#β8780)Behavior Changes
Addressesand only handleEndpointsin resolver updates. (#β8841)New Features
AsyncMetricReporterandRegisterAsyncReporterAPIs. (#β8780)GRPC_EXPERIMENTAL_PF_WEIGHTED_SHUFFLING. (#β8864):authorityrewriting, as specified in gRFC A81. (#β8779)random_subsettingLB policy, as specified in gRFC A68. (#β8650)Bug Fixes
CONNECTINGstate. (#β8813)WithDecompressororRPCDecompressor). (#β8765)Performance Improvements
bufferobjects. (#β8784)v1.78.0: Release 1.78.0Compare Source
Behavior Changes
New Features
Bug Fixes
Unknownon malformed grpc-status. (#β8735)experimental.AcceptCompressorsso callers can restrict thegrpc-accept-encodingheader advertised for a call. (#β8718)StringMatcherwhere regexes would match incorrectly when ignore_case is set to true. (#β8723)OnFinishcall option not being invoked for RPCs where stream creation failed. (#β8710)Performance Improvements
v1.77.0: Release 1.77.0Compare Source
API Changes
Readerinterface with a struct for better performance and maintainability. (#β8669)Behavior Changes
pick_firstLB policy via the environment variableGRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRST=false. The newpick_firsthas been the default sincev1.71.0. (#β8672)Bug Fixes
resource-not-founderrors, causing the gRPC client channel to move toTransientFailure. (#β8605)GRPC_EXPERIMENTAL_ENABLE_DEFAULT_PORT_FOR_PROXY_TARGET=falsedisables this change; please file a bug if any problems are encountered as we will remove this option soon. (#β8613)pick_firstbut don't set endpoints. (#β8610)Performance Improvements
New Features
grpc.lb.backend_servicein per-call metrics (#β8637)GRPC_EXPERIMENTAL_XDS_BOOTSTRAP_CALL_CREDS=trueto enable this feature. (#β8536)v1.76.0: Release 1.76.0Compare Source
Dependencies
Bug Fixes
INTERNALwhen a server sends zero response messages for a unary or client-streaming RPC. (#β8523)INTERNALinstead ofUNKNOWNupon receiving http headers with status 1xx andEND_STREAMflag set. (#β8518)IDLEstate on backend address change. (#β8615)New Features
credentials/jwtpackage providing file-based JWT PerRPCCredentials (A97). (#β8431)Performance Improvements
v1.75.1: Release 1.75.1Compare Source
Bug Fixes
v1.75.0: Release 1.75.0Compare Source
Behavior Changes
DelayedPickCompleteevent, a type alias ofPickerUpdated. (#β8465)PickerUpdatedsymbol.grpc.WithAuthorityas the highest-priority option for setting authority, above the setting in the credentials themselves. (#β8488)WithAuthorityis available, the credentials should not be used to override the authority.New Features
GRPC_ENABLE_TXT_SERVICE_CONFIG) to provide a way to disable TXT lookups in the DNS resolver (by setting it tofalse). By default, TXT lookups are enabled, as they were previously. (#β8377)Bug Fixes
callandendpointin curly braces to comply with UCUM and gRPC OpenTelemetry guidelines. (#β8481)grpc.NewClient(":<port-number-or-name>")). (#β8488)v1.74.3: Release 1.74.3Compare Source
Bug Fixes
v1.74.2: Release 1.74.2Compare Source
New Features
DialOptionsandServerOptions(WithStaticStreamWindowSize,WithStaticConnWindowSize,StaticStreamWindowSize,StaticConnWindowSize) that force fixed window sizes for all HTTP/2 connections. By default, gRPC uses dynamic sizing of these windows based upon a BDP estimation algorithm. The existing options (WithInitialWindowSize, etc) also disable BDP estimation, but this behavior will be changed in a following release. (#β8283)API Changes
ExitIdlemethod toBalancerinterface. Earlier, implementing this method was optional. (#β8367)Behavior Changes
GRPC_EXPERIMENTAL_ENABLE_LEAST_REQUESTenvironment variable that allows disabling the least request balancer with xDS. Least request was made available by default with xDS in v1.72.0. (#β8248)Bug Fixes
Attempt to set a bootstrap configuration...when creating multiple directpath channels. (#β8419)Performance Improvements
mem.Readerobjects. (#β8360)Documentation
v1.74.1: Release 1.74.1Compare Source
Version 1.74.1 retracts release v1.74.0 and itself. Release 1.74.0 was accidentally tagged on the wrong commit and should not be used. Version 1.73.0 should be used until 1.74.2 is released.
v1.74.0: Release 1.74.0Compare Source
Release 1.74.0 was accidentally tagged on the wrong commit and should not be used. Version 1.73.0 should be used until 1.74.1 is released.
v1.73.1: Release 1.73.1Compare Source
Bug Fixes
v1.73.0: Release 1.73.0Compare Source
New Features
GRPC_EXPERIMENTAL_ENABLE_LEAST_REQUEST=falsein your environment. (#β8253)CallAuthorityCall Option that can be used to overwrite the http:authorityheader on per-RPC basis. (#β8068)Listmethod to gRPC Health service. (#β8155)GRPC_EXPERIMENTAL_XDS_MTLS_SPIFFE=true. (#β8167, #β8180, #β8229, #β8343)Bug Fixes
grpc-timeoutheader is created. (#β8312)grpc-timeoutheader values are now rejected. This is consistent with the gRPC protocol spec. (#β8290)Performance Improvements
Documentation
v1.72.3: Release 1.72.3Compare Source
Bug Fixes
v1.72.2: Release 1.72.2Compare Source
Bug Fixes
NO_PROXYenvironment variable when connecting to locally-resolved addresses (case 2 from gRFC A1). (#β8329)v1.72.1: Release 1.72.1Compare Source
Bug Fixes
v1.72.0: Release 1.72.0Compare Source
Dependencies
API Changes
AddressMapV2with generics to ultimately replaceAddressMap. DeprecateAddressMapfor deletion (#β8187)New Features
grpc.xds_client.server_failurecounter metric on xDS client to record connectivity errors (#β8203)maxAgeto exceed 5 minutes ifstaleAgeis set in the LB policy configuration (#β8137)GRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRSTtofalse(case insensitive).Bug Fixes
Behavior Changes
Documentation
v1.71.3: Release 1.71.3Compare Source
Bug Fixes
NO_PROXYenvironment variable when connecting to locally-resolved addresses (case 2 from gRFC A1). (#β8329)v1.71.2: Release 1.71.2Compare Source
Bug Fixes
v1.71.1: Release 1.71.1Compare Source
Bug Fixes
TextMapPropagatorandTracerProviderfromTraceOptionsinstead of OpenTelemetry globals (#β8166)NewAddressAPI (#β8149)v1.71.0: Release 1.71.0Compare Source
API Changes
MetricsRecordermethod onBalancer.ClientConninstead of the removedBalancer.BuildOptions.MetricsRecorderfield to obtain a metrics recorder. (#β8027)balancer.ClientConnimplementations must now embed a delegate implementation. This allows grpc-go to add new methods to the interface and remain backward compatible. (#β8026)New Features
GRPC_EXPERIMENTAL_XDS_DUALSTACK_ENDPOINTS=false. (#β8134)DisableAutoReconnectoption will not attempt to callExitIdleautomatically on their children when the children report idle. (#β8052)Bug Fixes
grpc.NewClientso the target is resolved by the proxy as expected. (#β7881)WithLocalDNSResolution()dial option to explicitly force target resolution on the client instead. (#β7881)UNAVAILABLEwhen the EDS resource is missing or contains no endpoints (#β8070)maxReceiveMessageSizeisMaxInt(#β7918)Documentation
grpc.NewClientandClientConn.CanonicalTargetby providing examples. (#β8078)v1.70.0: Release 1.70.0Compare Source
Behavior Changes
New Features
GRPC_EXPERIMENTAL_XDS_FALLBACKtofalse. (#β7949)Bug Fixes
Performance
Documentation
v1.69.4: Release 1.69.4Compare Source
Bug Fixes
Documentation
Configuration
π Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
π¦ Automerge: Disabled by config. Please merge this manually once you are satisfied.
β» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
π Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.