Skip to main content

Calico CVE-2026-6540

| EUVDEUVD-2026-51153 HIGH
Path Traversal (CWE-22)
2026-07-30 Tigera GHSA-gm75-wg2c-p77x
7.9
CVSS 4.0 · Vendor: Tigera
Share

Severity by source

Vendor (Tigera) PRIMARY
7.9 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:L/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
vuln.today AI
10.0 CRITICAL

Network-reachable with no RBAC (AV:N/PR:N); the enforcer authorizes but a different downstream component is impacted, so S:C with high confidentiality/integrity and low availability on the restricted endpoint.

3.1 AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:L

Primary rating from Vendor (Tigera).

CVSS VectorVendor: Tigera

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

3
Source Code Evidence Fetched
Jul 30, 2026 - 15:21 vuln.today
Analysis Generated
Jul 30, 2026 - 15:21 vuln.today
CVE Published
Jul 30, 2026 - 14:45 cve.org
HIGH 7.9

DescriptionCVE.org

Calico's Application Layer Policy (disabled by default), which enforces HTTP rules through Dikastes, fails to perform URL path normalization. As a result, HTTP requests using path-traversal segments, encoded slashes, or repeated slashes are not correctly evaluated by Prefix path rules. Dikastes authorizes the request under the permitted prefix while the downstream workload or a fronting proxy normalizes the path and serves the restricted endpoint. An attacker with network access and no special RBAC can potentially reach HTTP endpoints the policy was intended to restrict.

AnalysisAI

Authorization bypass in Tigera Calico, Calico Enterprise, and Calico Cloud allows network-adjacent attackers with no special RBAC to reach HTTP endpoints that Application Layer Policy was configured to restrict. Because Dikastes matched raw request paths without RFC 3986/7230 normalization, requests using path-traversal segments, percent-encoded or backslash separators, repeated slashes, or matrix parameters were authorized under a permitted Prefix rule while the downstream workload or fronting proxy normalized them to the restricted endpoint. A vendor fix exists (PRs 12531/12532/12533, advisory TTA-2026-005); no public exploit identified at time of analysis, and the affected Application Layer Policy feature is disabled by default.

Technical ContextAI

The flaw lives in Calico's Application Layer Policy (ALP), an optional Layer-7 enforcement plane implemented by the Dikastes sidecar/authorization service, which evaluates HTTP method and path rules for workload-to-workload traffic in a Kubernetes mesh. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory / path traversal): matchHTTPPaths in app-policy/checker/match.go compared the request-target using strings.HasPrefix against raw bytes after stripping only the query and fragment. It never percent-decoded, never collapsed repeated slashes, never resolved '.'/'..' segments, and never handled backslashes or per-segment matrix parameters. The fix introduces normalizeHTTPPath, which decodes once, rejects surviving %2e/%2f/%5c double-encoding and NUL bytes, folds backslashes, strips matrix params (JSR-339/Servlet-style ';...'), and applies path.Clean, plus segmentPrefixMatch to anchor prefix matches to segment boundaries - aligning the authorization view with how Tomcat, Jetty, Spring, nginx, and IIS actually dispatch paths.

RemediationAI

Patch available per vendor advisory TTA-2026-005 (https://www.tigera.io/security-bulletins/tta-2026-005/); the upstream fix is available via projectcalico/calico PRs 12531, 12532, and 12533, so upgrade Calico, Calico Enterprise, or Calico Cloud to the fixed release named in that bulletin (exact patched version not present in the provided data - confirm from the advisory before scheduling). If you cannot upgrade immediately, the strongest compensating control is to disable Application Layer Policy / Dikastes HTTP path enforcement if it is not essential, since it is off by default anyway; where ALP is required, avoid relying on Prefix path rules for security-critical segmentation and instead enforce restricted endpoints at the workload or fronting proxy with its own normalized path checks, and configure that proxy to reject ambiguous paths (encoded slashes, backslashes, '..', repeated slashes, matrix parameters) - accepting the trade-off that stricter proxy normalization may break clients that legitimately send encoded paths.

Share

CVE-2026-6540 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy