Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

CVE-2026-26205

opa-envoy-plugin has an Authorization Bypass via Double-Slash Path Misinterpretation in input.parsed_path
Back to all
CVE

CVE-2026-26205

opa-envoy-plugin has an Authorization Bypass via Double-Slash Path Misinterpretation in input.parsed_path

A security vulnerability has been discovered in how the input.parsed_path field is constructed. HTTP request paths are treated as full URIs when parsed; interpreting leading path segments prefixed with double slashes (//) as authority components, and therefore dropping them from the parsed path. This creates a path interpretation mismatch between authorization policies and backend servers, enabling attackers to bypass access controls by crafting requests where the authorization filter evaluates a different path than the one ultimately served.

Attack example

HTTP request:

GET //admin/users HTTP/1.1
Host: example.com

Policy sees:

The leading //admin path segment is interpreted as an authority component, and dropped from input.parsed_path field:

{
  "parsed_path": ["users"]
}

Backend receives:

//admin/users path, normalized to /admin/users.

Affected Request Pattern Examples

| Request path | input.parsed_path | input.attributes.request.http.path | Discrepancy |

| - | - | - | - |

| / | [""] | / | ✅ None |

| //foo  | [""] | //foo| ❌ Mismatch |

| /admin | ["admin"] | /admin | ✅ None |

| /admin/users | ["admin", "users"] |  /admin/users | ✅ None |

| //admin/users  | ["users"] | //admin/users | ❌ Mismatch |

Impact

Users are impacted if all the following conditions apply:

  1. Protected resources are path-hierarchical (e.g., /admin/users vs /users)
  2. Authorization policies use input.parsed_path for path-based decisions
  3. Backend servers apply lenient path normalization

Patches

Go: v1.13.2-envoy-2

Docker: 1.13.2-envoy-21.13.2-envoy-2-static

Workarounds

Users who cannot immediately upgrade opa-envoy-plugin are recommended to apply one, or more, of the workarrounds described below.

1. Enable the merge_slashes Envoy configuration option

As per Envoy best practices, enabling the merge_slashes configuration option in Envoy will remove redundant slashes from the request path before filtering is applied, effectively mitigating the input.parsed_path issue described in this advisory.

2. Use input.attributes.request.http.path instead of input.parsed_path in policies

The input.attributes.request.http.path field contains the unprocessed, raw request path. Users are recommended to update any policy using input.parsed_path to instead use the input.attributes.request.http.path field.

Example ####
package example
## Use instead of input.parsed_path
parsed_path := split(                                        # tokenize into array
	trim_left(                                               # drop leading slashes
		urlquery.decode(input.attributes.request.http.path), # url-decode the path
		"/",
	),
	"/",
)

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
7.1
-
4.0
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H/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
C
H
U
0
-
C
H
U
7.3
-
3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L

Related Resources

No items found.

References

https://github.com/open-policy-agent/opa-envoy-plugin/security/advisories/GHSA-9f29-v6mm-pw6w, https://nvd.nist.gov/vuln/detail/CVE-2026-26205, https://github.com/open-policy-agent/opa-envoy-plugin/commit/58c44d4ec408d5852d1d0287599e7d5c5e2bc5c3, https://github.com/open-policy-agent/opa-envoy-plugin, https://github.com/open-policy-agent/opa-envoy-plugin/releases/tag/v1.13.2-envoy-2

Severity

7.3

CVSS Score
0
10

Basic Information

Ecosystem
Base CVSS
7.3
EPSS Probability
0.00134%
EPSS Percentile
0.3278%
Introduced Version
0,v0.28.0-envoy,v0.0.0-20210316131135-b60ae7e0bf31,v0.14.2,v0.0.0-20190926202756-8b77222bc84c
Fix Available
1.13.2-envoy-2,v1.13.2-envoy-2,v0.0.0-20260218093844-58c44d4ec408

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading