CVE-2026-84303 json
gRPC-Go: xDS RBAC HTTP Filter bypass via mixed-case Header Matching and gRFC A41 validation evasion
published 2026-09-01 2 mo ago modified 2026-09-15 54 d ago also GHSA-qc2q-p7wx-3px3 , GO-2026-6441 , EUVD-2026-69419
- cvss
- 6.3
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 24%
- public exploits
- 0
- none known
Summary
gRPC-Go is the Go language implementation of gRPC. Prior to 1.83.1, the xDS RBAC HTTP filter in internal/xds/httpfilter/rbac/rbac.go does not lowercase header matcher names in normalizeHeaderMatcher even though incoming metadata keys are lowercase. A DENY policy using a mixed-case name such as X-Role or User-Agent therefore does not match and fails open, allowing requests that should be rejected. The same case mismatch permits :Scheme or Grpc-Status to evade gRFC A41 validation and prevents Host from being rewritten to :authority. This issue is fixed in version 1.83.1.
Patch / fix
- go google.golang.org/grpc 1.83.1
- terraform-provider-aws SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 3.11.0-150200.6.29.2
- terraform-provider-tls SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 3.0.0-150200.5.26.2
- terraform-provider-helm SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 2.9.0-150200.6.34.2
- terraform-provider-null SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 3.0.0-150200.6.32.2
- terraform-provider-local SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 2.0.0-150200.6.30.2
- terraform-provider-google SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 3.43.0-150200.6.23.2
- terraform-provider-random SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 3.0.0-150200.6.26.2
- terraform-provider-azurerm SLE Module for Public Cloud 15 SP5, SLE Module for Public Cloud 15 SP4 2.32.0-150200.6.23.2
suse advisories SUSE-SU-2026:4628-1SUSE-SU-2026:24150-1SUSE-SU-2026:4444-1SUSE-SU-2026:4389-1SUSE-SU-2026:4388-1SUSE-SU-2026:4308-1
- rqlite openSUSE Leap 16.0 10.6.6-bp160.1.1
- warewulf4 openSUSE Leap 16.0 4.7.1-bp160.2.1
- warewulf4 openSUSE Tumbleweed 4.7.1-2.1
- kubevirt1.8 openSUSE Tumbleweed 1.8.4-7.1
- gh openSUSE Leap 16.0 2.102.0-bp160.1.1
- alloy openSUSE Tumbleweed 1.20.1-1.1
- amazon-ecs-init openSUSE Leap 16.0 1.107.0-160000.1.1
- grafana openSUSE Tumbleweed 12.4.11-1.1
opensuse advisories openSUSE-SU-2026:22224-1openSUSE-SU-2026:22221-1openSUSE-SU-2026:12375-1openSUSE-SU-2026:12241-1openSUSE-SU-2026:22134-1openSUSE-SU-2026:12114-1
- github.com/grpc/grpc-go@db94828 commit
- github.com/grpc/grpc-go@ebba6f3 commit
- github.com/grpc/grpc-go#9332 pull request
- github.com/grpc/grpc-go#9335 pull request
- github.com/grpc/grpc-go/releases/tag/v1.83.1 release
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-84303 updated cvss 6.5
github.com/grpc/grpc-go: gRPC-Go: RBAC policy bypass and validation evasion via mixed-case header matching
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-mlflow-operator-rhel9, rhoai/odh-mod-arch-gen-ai-rhel9, rhoai/odh-workbenches-operator-rhel9, rhoai/odh-model-registry-operator-rhel9, rhoai/odh-kuberay-operator-controller-rhel9affected: no fix available “Fix deferred”
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 2 mo ago
Exploit prediction
0.31% chance of exploitation in the next 30 days, higher than 24% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 6.3 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N |
| CNA | 4.0 | 6.3 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | google.golang.org/grpc | <1.83.1 |
1.83.1 |
Affected products
- grpc grpc-go
Classification
References
-
github.com
/grpc/grpc-go/pull/9332
web, patch
-
github.com
/grpc/grpc-go/pull/9335
web
-
github.com
/grpc/grpc-go/commit/db9482836c298f234c896cf82ab68cafc78237f8
web
-
github.com
/grpc/grpc-go/commit/ebba6f3f1b206e2b4dc4d1d5a96d18430302c2fe
web
-
github.com
/grpc/grpc-go/security/advisories/GHSA-qc2q-p7wx-3px3
web, advisory
-
github.com
/grpc/grpc-go/releases/tag/v1.83.1
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-84303
advisory
-
github.com
/grpc/grpc-go
package
Sources
- CVE List CVE-2026-84303
- GitHub Advisory GHSA-qc2q-p7wx-3px3
- NVD CVE-2026-84303
- OSV GO-2026-6441
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.