Skip to content

chore(deps): update module github.com/containerd/containerd/v2 to v2.3.2 [security]#1682

Merged
paralta merged 1 commit into
mainfrom
renovate/go-github.com-containerd-containerd-v2-vulnerability
Jun 22, 2026
Merged

chore(deps): update module github.com/containerd/containerd/v2 to v2.3.2 [security]#1682
paralta merged 1 commit into
mainfrom
renovate/go-github.com-containerd-containerd-v2-vulnerability

Conversation

@agntcy-automation

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
github.com/containerd/containerd/v2 v2.3.1v2.3.2 age confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


containerd CRI checkpoint restore CDI annotation smuggling

CVE-2026-53492 / GHSA-33vj-92qq-66hc

More information

Details

Impact

containerd's CRI implementation improperly trusts Container Device Interface (CDI) annotations found within untrusted checkpoint image metadata during container restoration. When restoring a container from a checkpoint, containerd preserves CDI-related annotations from the checkpoint archive rather than relying solely on the pod's create-time specification. This allows a user with pod creation permissions to bypass standard Kubernetes resource allocation and device plugin enforcement, injecting arbitrary CDI edits (such as device nodes and host mounts) into the restored container. Successful exploitation requires that the node has CDI enabled and contains a matching host CDI specification for the requested device; environments where CDI is disabled or lacking sensitive device specifications are not affected.

Patches

This bug has been fixed in the following containerd versions:

  • 2.3.2
  • 2.2.5
  • 2.1.9

Users should update to these versions to resolve the issue. Recreating existing containers restored from untrusted checkpoints may be necessary to remove smuggled configuration.

Workarounds

Users can mitigate this issue by restricting the restoration of containers from untrusted checkpoint images. If Container Device Interface (CDI) capabilities are not utilized on the node, removing or temporarily relocating host CDI specifications from the default directories (/etc/cdi and /var/run/cdi) will eliminate the reachability of this vulnerability.

Credits

The containerd project would like to thank Robert Prast (@​robertprast) for responsibly disclosing this issue in accordance with the containerd security policy.

For more information

If you have any questions or comments about this advisory:

To report a security issue in containerd:

Severity

  • CVSS Score: 8.4 / 10 (High)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:H/SI:H/SA:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


containerd: CRI checkpoint import allows local image tag poisoning

CVE-2026-50195 / GHSA-cvxm-645q-p574

More information

Details

Impact

containerd's CRI checkpoint import process contains a vulnerability where it fails to validate the image references specified within a checkpoint image's configuration. An attacker with permissions to create pods can use a crafted checkpoint image to force containerd to pull a malicious image and assign it an arbitrary local tag, thereby poisoning the node's local image cache. Subsequently, if other pods on the same node attempt to use the poisoned tag with an IfNotPresent (or Never) pull policy, they will unknowingly execute the attacker's malicious image instead of the legitimate one. This can lead to a compromise of the affected pods, allowing the attacker to execute arbitrary code under the victim pod's identity.

Patches

This bug has been fixed in the following containerd versions:

  • 2.3.2
  • 2.2.5
  • 2.1.9

Users should update to these versions to resolve the issue.

Workarounds

Users should only allow trusted images to be pulled.

Credits

The containerd project would like to thank Henry Beberman (@​hbeberman) of Microsoft, the GKE Security Team using Gemini, Anthropic Research, in collaboration with Claude, and Robert Prast (@​robertprast) who independently discovered and responsibly disclosed this issue in accordance with the containerd security policy.

For more information

If you have any questions or comments about this advisory:

To report a security issue in containerd:

Severity

  • CVSS Score: 5.6 / 10 (Medium)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:H/SI:H/SA:L

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


containerd image-triggered runtime DoS via unbounded group parsing

CVE-2026-47262 / GHSA-jpcc-p29g-p8mq

More information

Details

Impact

A vulnerability in containerd allows a maliciously crafted image to cause a Denial of Service (DoS) condition. When creating a container from this image, memory exhaustion occurs, leading to an Out Of Memory (OOM) kill of the containerd process. This renders the container runtime API unavailable and can disrupt clients such as the Docker Engine or Kubernetes control-plane components.

Patches

This bug has been fixed in the following containerd versions:

  • 2.3.2
  • 2.2.5
  • 2.1.9
  • 2.0.10
  • 1.7.33

Users should update to these versions to resolve the issue.

Workarounds

Ensure that only trusted images are used and that only trusted users have permissions to import images or schedule pods.

Credits

The containerd project would like to thank Jakub Ciolek (@​jake-ciolek) at AlphaSense and Kyle Elliott @​ Trail of Bits who independently discovered and responsibly disclosed this issue in accordance with the containerd security policy.

For more information

If you have any questions or comments about this advisory:

To report a security issue in containerd:

Severity

  • CVSS Score: 6.9 / 10 (Medium)
  • Vector String: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Arbitrary host CRI log file read via symlink following in CRI checkpoint restore

CVE-2026-53489 / GHSA-rgh6-rfwx-v388

More information

Details

Impact

A bug was found in containerd where the CRI plugin restores container.log from a checkpoint image without validating a symlinked path. This could result in reading an arbitrary file on the host via kubectl logs.

Patches

This bug has been fixed in the following containerd versions:

  • 2.3.2
  • 2.2.5
  • 2.1.9

Users should update to these versions to resolve the issue.

Workarounds

Ensure that only trusted images and checkpoints are used.

Credits

The containerd project would like to thank @​gouldnicholas and @​davidrxchester, Yuming Zhang and Song Li of Zhejiang University, Sangwon Ryu (@​sangwon090), Henry Beberman (@​hbeberman) of Microsoft, the GKE Security Team using Gemini, Anthropic Research, in collaboration with Claude, Robert Prast (@​robertprast),
Kyle Elliott (@​kyle-elliott-tob) of Trail of Bits, and Zhenchen Wang (@​Plucky923), who independently discovered and responsibly disclosed this issue in accordance with the containerd security policy.

For more information

If you have any questions or comments about this advisory:

To report a security issue in containerd:

Severity

  • CVSS Score: 7.1 / 10 (High)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


containerd CRI — image-config LABEL flows to restart-monitor binary:// logger: host-root command execution from an image pull

CVE-2026-53488 / GHSA-xhf5-7wjv-pqxp

More information

Details

Impact

A bug was found in containerd where the CRI plugin propagates labels from an image config (LABEL instruction in Dockerfile) to a container without validation. This may result in executing an arbitrary command on the host, via a plugin that consumes container labels for some operations.

Patches

This bug has been fixed in the following containerd versions:

  • 2.3.2
  • 2.2.5
  • 2.1.9
  • 2.0.10
  • 1.7.33

Users should update to these versions to resolve the issue.

Workarounds

Ensure that only trusted images are used.

Credits

The containerd project would like to thank Anthropic Research, in collaboration with Claude, the GKE Security Team using Gemini, and Robert Prast (@​robertprast) for independently discovering and responsibly disclosing this issue in accordance with the containerd security policy.

For more information

If you have any questions or comments about this advisory:

To report a security issue in containerd:

Severity

  • CVSS Score: 8.7 / 10 (High)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

References

This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).


Release Notes

containerd/containerd (github.com/containerd/containerd/v2)

v2.3.2: containerd 2.3.2

Compare Source

Welcome to the v2.3.2 release of containerd!

The second patch release for containerd 2.3 contains various fixes
and updates including security patches.

Security Updates
Highlights
  • Fix a data race when reading shim logs on Windows (#​13522)
Image Distribution
  • Allow the last host to retry on transient network errors (#​13591)
Runtime
  • Fix container startup failures caused by concurrent task RPC timeouts during slow container creation (#​13512)

Please try out the release binaries and report any issues at
https://github.com/containerd/containerd/issues.

Contributors
  • Samuel Karp
  • Chris Henzie
  • Akihiro Suda
  • Derek McGowan
  • Akhil Mohan
  • Austin Vazquez
  • Ben Cressey
  • Brian Goff
  • Maksym Pavlenko
  • Sebastiaan van Stijn
  • Sergey Kanzhelev
Changes
30 commits

  • Prepare release notes for v2.3.2 (#​13627)
    • fb8ca00b0 Prepare release notes for v2.3.2
    • 9c69960ba Merge commit from fork
    • 0f6251520 Merge commit from fork
    • 91d7471e2 cri: filter CDI annotations on checkpoint restore
    • 7c2e086bf Merge commit from fork
    • dae67765f cri: do not re-tag restored checkpoints
    • 94aa1e2c1 Merge commit from fork
    • 09599078f cri: make checkpoint restore robust to unexpected archive content
    • e1fdb8d22 Merge commit from fork
    • ff1d116ef Bound user-database file reads in openUserFile
    • d156e07cb Merge commit from fork
    • f99aad54a Do not propagate reserved labels from image configs
  • vendor: golang.org/x/crypto v0.53.0 (#​13608)
    • 0b9469501 [release/2.3] vendor: golang.org/x/crypto v0.53.0
  • resolver: retry on transient network errors (#​13591)
    • 983bbddc1 resolver: retry on transient network errors
  • update runc binary to v1.4.3 (#​13601)
  • update go to 1.26.4 (#​13580)
    • 8a49dfe85 update go to 1.26.4
    • 5aa6bb2b7 remove 1.26.2 from CI builds as it is not supported any longer due to the dependency
  • Configure udevd children-max for root-test (#​13568)
    • bfb8aebc0 Configure udevd children-max for root-test
  • core/runtime/v2: fix race on Windows deferredPipeConnection.c in Read (#​13522)
    • 62ceafff0 core/runtime/v2: fix race on Windows deferredPipeConnection.c in Read
  • runc-shim: don't hold the service lock across runc create (#​13512)
    • 9b0c0dc58 runc-shim: don't hold the service lock across runc create
  • contrib/checkpoint: increase timeouts to 30s (#​13459)
    • f588bc6fb contrib/checkpoint: increase timeouts to 30s

Dependency Changes
  • golang.org/x/crypto v0.49.0 -> v0.53.0
  • golang.org/x/mod v0.35.0 -> v0.36.0
  • golang.org/x/net v0.52.0 -> v0.55.0
  • golang.org/x/sync v0.20.0 -> v0.21.0
  • golang.org/x/sys v0.43.0 -> v0.46.0
  • golang.org/x/term v0.41.0 -> v0.44.0
  • golang.org/x/text v0.35.0 -> v0.38.0

Previous release can be found at v2.3.1

Which file should I download?
  • containerd-<VERSION>-<OS>-<ARCH>.tar.gz: ✅Recommended. Dynamically linked with glibc 2.35 (Ubuntu 22.04).
  • containerd-static-<VERSION>-<OS>-<ARCH>.tar.gz: Statically linked. Expected to be used on Linux distributions that do not use glibc >= 2.35. Not position-independent.

In addition to containerd, typically you will have to install runc
and CNI plugins from their official sites too.

See also the Getting Started documentation.

@agntcy-automation agntcy-automation Bot added go Pull requests that update go code security labels Jun 20, 2026
@agntcy-automation
agntcy-automation Bot requested a review from a team as a code owner June 20, 2026 00:51
@agntcy-automation agntcy-automation Bot added go Pull requests that update go code security labels Jun 20, 2026
@agntcy-automation

Copy link
Copy Markdown
Contributor Author

ℹ️ Artifact update notice

File name: cli/go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 5 additional dependencies were updated

Details:

Package Change
golang.org/x/crypto v0.52.0 -> v0.53.0
golang.org/x/sync v0.20.0 -> v0.21.0
golang.org/x/sys v0.45.0 -> v0.46.0
golang.org/x/term v0.43.0 -> v0.44.0
golang.org/x/text v0.37.0 -> v0.38.0
File name: samples/ard-over-ads/go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 13 additional dependencies were updated
  • The go directive was updated for compatibility reasons

Details:

Package Change
go 1.26.3 -> 1.26.4
github.com/agntcy/dir-importer v1.4.1-0.20260612122304-f331bd5b73d6 -> v1.4.1
github.com/agntcy/dir-mcp v1.3.1 -> v1.3.2
github.com/agntcy/dir-runtime/discovery v1.3.1 -> v1.3.2
github.com/agntcy/dir-runtime/server v1.3.1 -> v1.3.2
github.com/agntcy/dir-runtime/store v1.3.1 -> v1.3.2
github.com/agntcy/dir-runtime/utils v1.3.1 -> v1.3.2
github.com/agntcy/dir/reconciler v1.4.0 -> v1.5.0
github.com/agntcy/dir/server v1.4.0 -> v1.5.0
golang.org/x/crypto v0.52.0 -> v0.53.0
golang.org/x/sync v0.20.0 -> v0.21.0
golang.org/x/sys v0.45.0 -> v0.46.0
golang.org/x/term v0.43.0 -> v0.44.0
golang.org/x/text v0.37.0 -> v0.38.0

@github-actions github-actions Bot added the size/XS Denotes a PR that changes 0-49 lines label Jun 20, 2026
@codecov

codecov Bot commented Jun 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@paralta
paralta merged commit 1864960 into main Jun 22, 2026
33 checks passed
@paralta
paralta deleted the renovate/go-github.com-containerd-containerd-v2-vulnerability branch June 22, 2026 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

go Pull requests that update go code security size/XS Denotes a PR that changes 0-49 lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant