CVE-2026-84303: gRPC-Go xDS RBAC HTTP filter bypass via case-sensitive header matching

CVE-2026-84303 · Severity: medium · CVSS 4 · Published 2026-09-01

gRPC-Go is a widely-used remote procedure call framework that includes authorization policy enforcement through the xDS RBAC HTTP filter. The vulnerability allows attackers to bypass security policies by using mixed-case header names that fail to match case-sensitive policy definitions, causing restrictive rules to fail open and allow prohibited traffic. Additionally, safety guards against reserved gRPC headers can be evaded through case variations.

Technologies: google.golang.org/grpc (Go). Vendors: Go.

Quick answers

Is CVE-2026-84303 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-84303 being exploited in the wild.
How severe is CVE-2026-84303?
Medium severity, with a CVSS score of 4, published 1 September 2026.
Which products and versions are affected?
google.golang.org/grpc (Go) <= 1.83.0, SEMVER:introduced=0,fixed=1.83.1.
Is there a fix for CVE-2026-84303?
Yes. google.golang.org/grpc (Go): upgrade to 1.83.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-84303 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-84303?
Check whether you run google.golang.org/grpc (Go) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • google.golang.org/grpc (Go): upgrade to 1.83.1 or later
    go get google.golang.org/grpc@v1.83.1

Technical details

The vulnerability stems from improper case-sensitivity handling in two areas of the xDS RBAC HTTP filter: (1) policy matching logic that unconditionally lowercases incoming metadata keys but fails to normalize policy-defined header matchers, leading to non-matches when policies reference headers like "X-Role" but requests arrive with "x-role"; and (2) validation logic that case-sensitively checks for gRPC-reserved header prefixes (gRFC A41), allowing attackers to bypass restrictions using variants like "Grpc-Status". The attack requires network access and no authentication; an attacker can exploit this by crafting requests with mixed-case headers that evade security policies. The impact is limited to authorization bypass (no direct data exposure or availability impact). The fix is available in grpc-go version 1.83.1 and later.

Affected products

  • Google gRPC-Go <= 1.83.0

Identifiers

  • CVE-2026-84303
  • GHSA-qc2q-p7wx-3px3
  • GO-2026-6441

Timeline

  • 2026-08-19: disclosed
  • 2026-09-01: patched: Fixed in version 1.83.1
  • 2026-09-08: advisory: GitHub advisory GHSA-qc2q-p7wx-3px3 published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.