Skip to main content
Press slash or control plus K to focus the search. Use the arrow keys to navigate results and press enter to open a threat.
Reconnecting to live updates…

CVE-2026-33186: CWE-285: Improper Authorization in grpc grpc-go

0
Critical
VulnerabilityCVE-2026-33186cvecve-2026-33186cwe-285
Published: Fri Mar 20 2026 (03/20/2026, 22:23:32 UTC)
Source: CVE Database V5
Vendor/Project: grpc
Product: grpc-go

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.

AI-Powered Analysis

Machine-generated threat intelligence

AILast updated: 03/27/2026, 22:44:54 UTC

Technical Analysis

CVE-2026-33186 is a critical security vulnerability in grpc-go, the Go implementation of gRPC, affecting versions prior to 1.79.3. The root cause is improper input validation of the HTTP/2 :path pseudo-header, specifically the acceptance of paths missing the mandatory leading slash. While the grpc-go server routes such requests correctly to the intended handler, authorization interceptors—including the official grpc/authz RBAC implementation—evaluate the raw, non-canonical path string. This discrepancy causes deny rules defined with canonical paths (starting with '/') to fail to match these requests. If the security policy includes a fallback allow rule, this leads to an authorization bypass, allowing unauthorized requests to succeed. The vulnerability is exploitable by an attacker capable of sending raw HTTP/2 frames with malformed :path headers directly to the grpc-go server, without requiring authentication or user interaction. The fix introduced in grpc-go 1.79.3 rejects any request with a :path header that does not begin with a leading slash, returning a codes.Unimplemented error before authorization interceptors or handlers process the request. This prevents the bypass scenario. Until upgrading, mitigations include deploying a validating interceptor that enforces canonical path formats, normalizing requests at the infrastructure level (e.g., proxies or gateways), or hardening authorization policies to avoid fallback allow rules that could be exploited. This vulnerability is tracked under CWE-285 (Improper Authorization) and carries a CVSS v3.1 score of 9.1, indicating critical severity due to its network attack vector, low complexity, no privileges or user interaction required, and high impact on confidentiality and integrity.

Potential Impact

The vulnerability allows attackers to bypass authorization controls on grpc-go servers that rely on path-based authorization interceptors, potentially granting unauthorized access to sensitive services or methods. This can lead to unauthorized data disclosure, modification, or execution of privileged operations, severely compromising confidentiality and integrity. Since gRPC is widely used for inter-service communication in microservices architectures and cloud-native applications, exploitation could affect a broad range of organizations globally, including enterprises, cloud providers, and service vendors. The lack of required authentication or user interaction lowers the barrier for exploitation, increasing risk. Although no known exploits are currently reported in the wild, the critical CVSS score and the nature of the flaw suggest that attackers with network access to vulnerable grpc-go servers could leverage this vulnerability to escalate privileges or access restricted functionality. The availability impact is minimal as the vulnerability does not disrupt service but focuses on unauthorized access.

Mitigation Recommendations

The most effective mitigation is to upgrade grpc-go to version 1.79.3 or later, which rejects malformed :path headers before authorization checks. For environments where immediate upgrading is not feasible, implement a validating interceptor that enforces the presence of a leading slash in the :path header, rejecting or sanitizing malformed requests early in the request lifecycle. Additionally, normalize incoming HTTP/2 requests at the infrastructure level using proxies, API gateways, or ingress controllers to ensure all :path headers conform to canonical format before reaching the grpc-go server. Review and harden authorization policies to avoid fallback allow rules that could inadvertently permit unauthorized access if deny rules fail to match. Employ network segmentation and strict access controls to limit exposure of grpc-go servers to untrusted networks, reducing the attack surface. Monitor network traffic for anomalous HTTP/2 frames with malformed headers and implement logging to detect potential exploitation attempts. Finally, conduct thorough testing of custom authorization interceptors to ensure they correctly handle non-canonical paths.

Pro Console: star threats, build custom feeds, automate alerts via Slack, email & webhooks.Upgrade to Pro

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2026-03-17T22:16:36.720Z
Cvss Version
3.1
State
PUBLISHED

Threat ID: 69bdcad201d25e334c8cba93

Added to database: 3/20/2026, 10:31:46 PM

Last enriched: 3/27/2026, 10:44:54 PM

Last updated: 5/4/2026, 10:07:50 PM

Views: 234

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats

Breach by OffSeqOFFSEQFRIENDS — 25% OFF

Check if your credentials are on the dark web

Instant breach scanning across billions of leaked records. Free tier available.

Scan now
OffSeq TrainingCredly Certified

Lead Pen Test Professional

Technical5-day eLearningPECB Accredited
View courses