VDB
Sign up
MEDIUM

GHSA-m6hq-p25p-ffr2

containerd CRI server: Host memory exhaustion through Attach goroutine leak

Quick fix

GHSA-m6hq-p25p-ffr2 — github.com/containerd/containerd: upgrade to the fixed version with the command below.

go get github.com/containerd/containerd@v1.7.29

Details

### Impact

A bug was found in containerd's CRI Attach implementation where a user can exhaust memory on the host due to goroutine leaks.

Repetitive calls of CRI Attach (e.g., [`kubectl attach`](https://kubernetes.io/docs/reference/kubectl/generated/kubectl_attach/)) could increase the memory usage of containerd.

### Patches

This bug has been fixed in the following containerd versions:

* 2.2.0 * 2.1.5 * 2.0.7 * 1.7.29

Users should update to these versions to resolve the issue.

### Workarounds

Set up an admission controller to control accesses to `pods/attach` resources. e.g., [Validating Admission Policy](https://kubernetes.io/docs/reference/access-authn-authz/validating-admission-policy/).

### Credits

The containerd project would like to thank @Wheat2018 for responsibly disclosing this issue in accordance with the [containerd security policy](https://github.com/containerd/project/blob/main/SECURITY.md).

### References

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-64329

### For more information

If you have any questions or comments about this advisory:

* Open an issue in [containerd](https://github.com/containerd/containerd/issues/new/choose) * Email us at [security@containerd.io](mailto:security@containerd.io)

To report a security issue in containerd:

* [Report a new vulnerability](https://github.com/containerd/containerd/security/advisories/new)

Are you affected?

Enter the version of the package you're using.

Affected packages

Go/github.com/containerd/containerd
Introduced in: 0Fixed in: 1.7.29
Fixgo get github.com/containerd/containerd@v1.7.29
Go/github.com/containerd/containerd/v2
Introduced in: 0Fixed in: 2.0.7
Fixgo get github.com/containerd/containerd/v2@v2.0.7
Go/github.com/containerd/containerd/v2
Introduced in: 2.1.0-beta.0Fixed in: 2.1.5
Fixgo get github.com/containerd/containerd/v2@v2.1.5
Go/github.com/containerd/containerd/v2
Introduced in: 2.2.0-beta.0Fixed in: 2.2.0
Fixgo get github.com/containerd/containerd/v2@v2.2.0

References