CVEvulnerability
CVE-2026-33186
9.1 CRITICAL
Official page ↗
- Status
- Modified
- Published
- 2026-03-20
- Last modified
- 2026-09-18
- Assigner
- [email protected]
- CVSS 3.1 ([email protected])
- 9.1 CRITICAL — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
- CVSS 3.1 (0b0ca135-0b70-47e7-9f44-1890c2a1c46c)
- 9.1 CRITICAL — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
- Weaknesses
- CWE-285, CWE-551
Description
gRPC-Go is the Go language implementation of gRPC. Versions prior to 1.79.3 have an authorization bypass resulting from improper input validation of the HTTP/2 `:path` pseudo-header. The gRPC-Go server was too lenient in its routing logic, accepting requests where the `:path` omitted the mandatory leading slash (e.g., `Service/Method` instead of `/Service/Method`). While the server successfully routed these requests to the correct handler, authorization interceptors (including the official `grpc/authz` package) 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. This affects gRPC-Go servers that use path-based authorization interceptors, such as the official RBAC implementation in `google.golang.org/grpc/authz` or custom interceptors relying on `info.FullMethod` or `grpc.Method(ctx)`; AND that have a security policy contains specific "deny" rules for canonical paths but allows other requests by default (a fallback "allow" rule). The vulnerability is exploitable by an attacker who can send raw HTTP/2 frames with malformed `:path` headers directly to the gRPC server. The fix in version 1.79.3 ensures that any request with a `:path` that does not start with a leading slash is immediately rejected with a `codes.Unimplemented` error, preventing it from reaching authorization interceptors or handlers with a non-canonical path string. While upgrading is the most secure and recommended path, users can mitigate the vulnerability using one of the following methods: Use a validating interceptor (recommended mitigation); infrastructure-level normalization; and/or policy hardening.
Affected configurations
• grpc grpc (< 1.79.3)
Related
References
- https://github.com/grpc/grpc-go/security/advisories/GHSA-p77j-4mvh-x3m3 Mitigation, Vendor Advisory
- https://access.redhat.com/errata/RHSA-2026:10093 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10094 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10105 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10107 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10125 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10126 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10130 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10131 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10153 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10155 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10158 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10172 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10175 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10698 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10705 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:10706 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:11070 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:11408 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:11803 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:11856 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:11916 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:11996 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:12116 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:12118 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:12119 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:12277 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:12279 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:12283 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:12337 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:13548 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:13791 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:13829 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:14775 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:15092 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17123 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17448 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17459 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17468 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17474 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17475 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17598 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17599 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:17789 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:18068 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:18585 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19099 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19108 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19109 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19135 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19207 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19353 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19375 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19712 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19719 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19720 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19721 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20034 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20035 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20041 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20042 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20088 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20089 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20322 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20436 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20943 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:20946 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21017 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21657 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21658 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21691 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21692 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21696 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21697 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21703 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21704 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21709 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21710 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21769 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:21931 access.redhat.com