GPU VulnDB

Database/Container, Kubernetes & orchestration

Contour: HTTPProxy cookie rewrite policy injects Lua that runs inside the shared Envoy proxy

CVSS 8.1CVE-2026-41246Container, Kubernetes & orchestrationcurated

Impact

Contour builds its cookie rewriting feature by interpolating user values into Lua source with Go text/template and no sufficient sanitisation, so a crafted pathRewrite.value in an HTTPProxy results in arbitrary code execution inside Envoy. The injected code only runs on the attacker's own route, but Envoy is shared infrastructure: from there it can read Envoy's xDS client credentials off the filesystem and deny service to the other tenants sharing that proxy. On a multi-tenant cluster fronting GPU inference endpoints, one namespace with HTTPProxy write access becomes a foothold against every other tenant's ingress path and against the control-plane trust that xDS credential represents. Fixed in v1.33.4, v1.32.5 and v1.31.6; versions from v1.19.0 are affected.

Who can reach it

A user or workload with RBAC permission to create or modify HTTPProxy resources in any namespace Contour watches. Authenticated cluster access is required; no node-level access is.

What to do

Upgrade Contour to v1.33.4, v1.32.5 or v1.31.6 and roll the Contour and Envoy pods - a daemon restart within the ingress data plane, not a node drain. Treat the xDS client credentials as potentially exposed if untrusted parties held HTTPProxy write access, and rotate them. Where upgrading must wait, restrict HTTPProxy create/update RBAC and use admission policy to reject cookieRewritePolicies.pathRewrite.value.

References

Related entries

All Container, Kubernetes & orchestration entries

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.