Auth bypass in Grpc Grpc-Go
CVE-2026-84303
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.
Published · last modified .
EPSS exploit prediction
EPSS: 0.003 (22.4th percentile), scored .
Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 22nd percentile — 22.4% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.
EPSS over last 30 days · oldest: 0.003 · newest: 0.003 · change: 0.000
Affected products
- Grpc Grpc-Go — versions < 1.83.1
Weakness classification (CWE)
References
- github.com/grpc/grpc-go/security/advisories/GHSA-qc2q-p7wx-3px3
- github.com/grpc/grpc-go/pull/9332
- github.com/grpc/grpc-go/pull/9335
- github.com/grpc/grpc-go/commit/db9482836c298f234c896cf82ab68cafc78237f8
- github.com/grpc/grpc-go/commit/ebba6f3f1b206e2b4dc4d1d5a96d18430302c2fe
- github.com/grpc/grpc-go/releases/tag/v1.83.1