Description (CNA)
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.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| grpc / grpc-go | affected < 1.83.1 |
CWE
CWE-178, CWE-863
References
- https://github.com/grpc/grpc-go/security/advisories/GHSA-qc2q-p7wx-3px3
- https://github.com/grpc/grpc-go/pull/9332
- https://github.com/grpc/grpc-go/pull/9335
- https://github.com/grpc/grpc-go/commit/db9482836c298f234c896cf82ab68cafc78237f8
- https://github.com/grpc/grpc-go/commit/ebba6f3f1b206e2b4dc4d1d5a96d18430302c2fe
- https://github.com/grpc/grpc-go/releases/tag/v1.83.1
ADP enrichment
No English description supplied.
No references supplied.