Envoy Gateway: OCI layer extraction allocates make([]byte, h.Size) from untrusted tar header
13Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 6.5epss 0.7%
exploitation probability
0.7%top 48% of all CVEs
observed exploitation
nono source reports it
Envoy Gateway is an open source project for managing Envoy Proxy as a standalone or Kubernetes-based application gateway. Prior to 1.7.4 and 1.8.1, internal/wasm/imagefetcher.go follows tenant-controlled EnvoyExtensionPolicy spec.wasm[].code.image.url values to Docker or OCI Wasm layers, and extractWasmPluginBinary uses the untrusted tar-header h.Size value to allocate memory before validating the entry name or declared size. A small PAX or GNU tar header can therefore claim a multi-terabyte entry even though the surrounding LimitReader restricts only the bytes read from the stream, and no registry allowlist prevents a permitted tenant from selecting an attacker-controlled registry that the controller can reach. The allocation is attempted for every tar entry and can cause an unrecoverable Go runtime out-of-memory failure; because the custom resource persists, reconciliation repeatedly crash-loops the shared controller and causes a single-request, non-volumetric, cluster-wide control-plane denial of service. This issue is fixed in versions 1.7.4 and 1.8.1.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Affected products
envoyproxy · gatewayReferences
https://github.com/envoyproxy/gateway/commit/5a78db82b7cf4fc5bebbeda2c50952892038a464https://github.com/envoyproxy/gateway/commit/96e2b750868a459ace4b8b68e6a6e4fb0152b9b7https://github.com/envoyproxy/gateway/commit/b4737180c7e597490c6363075c565fa8cf24eeadhttps://github.com/envoyproxy/gateway/pull/9171https://github.com/envoyproxy/gateway/pull/9172https://github.com/envoyproxy/gateway/pull/9173https://github.com/envoyproxy/gateway/releases/tag/v1.7.4https://github.com/envoyproxy/gateway/releases/tag/v1.8.1https://github.com/envoyproxy/gateway/security/advisories/GHSA-h7pq-86h8-rp5x