Database/Container, Kubernetes & orchestration
Consul Connect: unescaped service names generate over-broad Envoy RBAC rules, bypassing intentions
Impact
Consul did not escape certain characters in service names, namespaces and partitions when translating Connect intentions into Envoy RBAC rules, so the generated rules match more destinations than the operator declared. A service that should have no path to a peer can reach it through the mesh sidecar with the intention still showing as enforced. On a fleet where the mesh is what separates tenant inference services, training jobs and internal control-plane APIs, this turns a deny intention into a silent allow, and the misconfiguration is invisible from the intention list alone. An attacker needs an identity in the mesh already, but any workload able to register a service with a crafted name can widen its own reach.
Who can reach it
Any authenticated workload or operator that can register a service, namespace or partition name in the mesh, plus a service already holding a mesh identity to make the request. No access to the Consul servers themselves is required.
What to do
Upgrade to Consul 2.0.4, or Consul Enterprise 1.21.18, 1.22.12 or 2.0.4. Consul servers and clients are restarted in place and connected Envoy sidecars pick up regenerated RBAC rules from the new xDS config; no workload reschedule or node drain is needed. Until then, audit service, namespace and partition names for unusual characters and review intentions covering sensitive destinations.
References
Related entries
- runc: Volume-mount race gives incorrect access control and privilege escalation to hostCVE-2019-19921 · runcHigh
- Podman: File permissions not checked for non-root users in a privileged containerCVE-2021-20188 · PodmanHigh
- runc: Regression of CVE-2019-19921: incorrect access control leading to privilege escalation via volume mountsCVE-2023-27561 · runcHigh
- Slurm: Filesystem race conditions allow gaining ownership of, overwriting, or deleting filesCVE-2023-41914 · SlurmHigh
- Traefik: Service middleware annotation escapes crossProviderNamespaces restrictionsCVE-2026-85594 · Traefik Kubernetes Ingress provider (traefik.ingress.kubernetes.io/service.middlewares annotation)High
- Cilium: A user who can create CiliumNetworkPolicy in one namespace affects traffic cluster-wideCVE-2023-41333 · CiliumMedium
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.