containerd 2.2.4 → 2.2.10
6 releases · 1 breaking change · 13 security fixes · 13 advisories fixed
13security1breaking2deprecated30feature7fix
Vulnerabilities fixed by this upgrade
- medium GHSA-8647-2jxj-p2rc containerd: daemon crash when pulling an image with a crafted Content-Length header
- medium CVE-2026-95839 containerd: daemon crash when processing an image manifest with a malformed digest
- medium GHSA-hc94-p972-ch66 containerd: host disk exhaustion when pulling an image with an unbounded layer stream
- medium GHSA-5p7c-hggf-c748 containerd CRI plugin: mount and snapshot leak when container checkpoint restore fails
- medium CVE-2026-53493 Image-pull DoS via crafted OCI index graph amplification
- medium CVE-2026-95838 Unpack DoS via repeated opaque whiteouts
- medium CVE-2026-53495 containerd CRI plugin: Unbounded I/O draining in ExecSync causes node-level denial of service
- critical CVE-2026-95837 containerd CRI plugin: Checkpoint restore bypasses destination security context
- medium CVE-2026-47262 containerd image-triggered runtime DoS via unbounded group parsing
- 5.6 CVE-2026-50195 CRI checkpoint import allows local image tag poisoning
- high CVE-2026-53489 Arbitrary host file read via symlink following in CRI checkpoint restore
- critical CVE-2026-53488 containerd CRI — image-config LABEL flows to host-root command execution from an image pull
- critical CVE-2026-53492 CDI annotation smuggling during CRI checkpoint restore
Breaking changes
- breaking 1c0d72890 Makefile: remove go mod download from integration in 2.2.10
Security changes
- security CVE-2026-95839 in 2.2.10
- security GHSA-5p7c-hggf-c748 in 2.2.10
- security GHSA-8647-2jxj-p2rc in 2.2.10
- security GHSA-hc94-p972-ch66 in 2.2.10
- security CVE-2026-53493 in 2.2.9
- security CVE-2026-53495 in 2.2.8
- security GHSA-rp3h-jf77-q9p4 in 2.2.8
- security Fixes CVE-2026-95837: containerd CRI plugin: Checkpoint restore bypasses destination security context in 2.2.7
- security CVE-2026-50195 in 2.2.5
- security CVE-2026-53488 in 2.2.5
- security CVE-2026-53492 in 2.2.5
- security CVE-2026-53489 in 2.2.5
- security CVE-2026-47262 in 2.2.5
Deprecations
- deprecated cri: deprecate restore in CreateContainer () in 2.2.7
- deprecated c59d041d8 cri: deprecate restore in CreateContainer in 2.2.7
Every release in between
securityCVE-2026-95839
securityGHSA-5p7c-hggf-c748
securityGHSA-8647-2jxj-p2rc
securityGHSA-hc94-p972-ch66
featureApply hardening to not follow symlinks for container log files ()
featureAvoid hang and data corruption during multipart image fetch ()
featureApply hardening to reject image references with ".." path components ()
featureApply hardening to allowlist socket domains in the default seccomp profile ()
featureApply hardening to filter ID-mapping labels from image annotations during unpack ()
otherPrepare release notes for v2.2.10 ()
other27d59fe59 Prepare release notes for v2.2.10
otherUpdate to go1.26.9 ()
othercb4648a80 Update to go1.26.9, remove go1.25.12
other6fe70e5cc Merge commit from fork
other70c8ae49e remotes/docker: bound parallel fetch readers
otheraff52a508 Merge commit from fork
other2455fec2f images: skip malformed digests when computing referrer labels
other32fc74497 Merge commit from fork
other5f8c507a2 content, remotes: bound reads to expected size
other14da554b2 Merge commit from fork
otherc3b7534ed cri: unmount checkpoint view on every CRImportCheckpoint return path
otherSkip critest OOMKilled testcase for systemd cgroup ()
othera47da7e9b script/critest.sh: always skip OOMKilled on systemd cgroup
other32c566557 *: skip critest OOMKilled testcase for systemd cgroup
othermultipart fetch stability fixes ()
other5dde40350 multipart fetch stability fixes
fixintegration/client: fix TestContainerExecLargeOutputWithTTY ()
fix7dff2d997 integration/client: fix TestContainerExecLargeOutputWithTTY
othercri: should not follow log file ()
othera5e41909a cri: should not follow log file
otherreference: reject .. path components that rewrite the host ()
other4f71fd9b0 reference: reject .. path components that rewrite the host
othercore/unpack: don't honor id-mapping labels from image annotations ()
other4b3494a8d core/unpack: tighten comments around id-mapping label filtering
other076598878 core/unpack: don't honor id-mapping labels from image annotations
featureseccomp: Use an allow-list for socket domains ()
feature5ba51c0f2 seccomp: Use an allow-list for socket domains
otherConditional actions ()
otherfa5e5452e [CI] Prevents triggering of an inactive issue/PR check for forked repository.
breaking1c0d72890 Makefile: remove go mod download from integration
+2 more items in the release notessecurityCVE-2026-53493
featureFix bug where container creation failed when SELinux relabeling was unsupported by the filesystem ()
featureEnable mount manager for image mounts in CRI ()
featureEnsure all layers are fetched when multiple manifests in an index share a config descriptor ()
featureMask /proc/interrupts and CPU thermal throttle sysfs paths in Linux containers by default ()
other60acf78bc5 Prepare release notes for v2.2.9
other253f9cc140 Merge commit from fork
other053c0cc412 Bound Walk references
otherefd11fc9c2 Bound Dispatch concurrency and references
othercri: tolerate wrapped ENOTSUP during relabel ()
other39d0dd4b43 cri: tolerate wrapped ENOTSUP during relabel
otherpkg/oci: mask thermal interrupt info ()
otherbaffef9669 pkg/oci: mask thermal interrupt info
othercore/unpack: fetch layers of every config-sharing manifest ()
other9e1ae6a9e9 core/unpack: fetch layers of every config-sharing manifest
othercri: Backport image mount fixes 2.2 ()
other2cdf8d80cc cri: only unmount image volumes when mounting fails
other2e1dcc5da0 cri: enable mount manager for image mounts
securityCVE-2026-53495
securityGHSA-rp3h-jf77-q9p4
featureApply hardening to strip sensitive authentication headers when fetching descriptor URLs ()
featureSet SystemTemp environment variable on Windows so temp directory overrides work for SYSTEM services ()
featureFix user and group lookup failures in container rootfs containing symlinked /etc/passwd or /etc/group ()
featureFix EROFS snapshot creation failure caused by concurrent snapshot removal ()
other4864b1814 Prepare release notes for v2.2.8
other3458b7fd3 Merge commit from fork
other22ccf4314 cri: cancel ExecSync IO drain on context cancellation
other2bf01ce17 Merge commit from fork
other45166eb82 archive: skip redundant opaque whiteout walks
otherSet SystemTemp env var to config temp on Windows ()
other2c722ad04 Set SystemTemp env var to config temp on Windows
otherpkg/oci: resolve rootfs symlinks for user lookup ()
other196664bc0 pkg/oci: resolve rootfs symlinks for user lookup
otherdocker fetcher: strip sensitive headers on descriptor URLs ()
other6da9d9528 core/remotes/docker: normalize descriptor URL origins
other4f7851699 core/remotes/docker: strip sensitive headers on desc.urls fetch
othersnapshots/erofs: protect snapshot staging from cleanup ()
otherf7075a224 snapshots/erofs: protect snapshot staging from cleanup
securityFixes CVE-2026-95837: containerd CRI plugin: Checkpoint restore bypasses destination security context
featureDisable checkpoint restore in CreateContainer by default, requiring the enable_experimental_restore_via_create configuration option to enable ()
featureDeprecate checkpoint restore in CreateContainer ()
featureSupport non-UTF-8 binary environment variable values in CRI ()
featureDisable checkpoint restore codepaths when CRIU is not installed and add enable_criu configuration option ()
featureEnable OCI runtime feature introspection for non-runc runtimes in CRI ()
featureEnable log scrubbing by default on Windows ()
featureFix mount manager activation error when activation already exists ()
other43f299db6 Prepare release notes for v2.2.7
othercri: disable restore in CreateContainer by default ()
other5c3a47036 cri: disable restore in CreateContainer by default
otherUse ScrubLogs by default on Windows ()
feature4c93ae6d5 ctr: add --scrub-logs flag for Windows
othera124c7e35 cri/config: use ScrubLogs by default on Windows
deprecatedcri: deprecate restore in CreateContainer ()
deprecatedc59d041d8 cri: deprecate restore in CreateContainer
otherHandle []byte envvar value for CRI ()
other6cdc2ddce Handle []byte envvar value
othera60898833 update to v0.34.x kubernetes dependencies
fixFix mount manager activation error when already exists ()
fix54ecff6ca core/mount: Fix mount manager activation error when already exists
otherDisable checkpoint restore codepath when CRIU is not installed ()
otherfd966ba29 github/workflows: install criu in node-e2e
feature7d41b25c9 cri: add enable_criu configuration option
other48116fa59 cri: validate CRIU availability and version early
fixfix(cri): introspect OCI runtime features for non-runc runtimes ()
other6a3d14e8a fix(cri): introspect OCI runtime features for non-runc runtimes
otherci: bound Go fuzzing by execution count ()
other424b714f0 ci: bound Go fuzzing by execution count
othergo.opentelemetry.io/otel v1.38.0 -> v1.41.0
othergo.opentelemetry.io/otel/metric v1.38.0 -> v1.41.0
othergo.opentelemetry.io/otel/trace v1.38.0 -> v1.41.0
othergoogle.golang.org/protobuf v1.36.10 -> f2248ac996af
otherk8s.io/api v0.34.1 -> v0.34.10
otherk8s.io/apimachinery v0.34.1 -> v0.34.10
otherk8s.io/client-go v0.34.1 -> v0.34.10
otherk8s.io/cri-api v0.34.1 -> v0.34.10
featureFix nil pointer dereference in NRI GetIPs during pod sandbox teardown or container exit ()
featureReject CreateContainer calls when the target sandbox is not running ()
featureEnsure sandbox shutdown on RunPodSandbox hook failures to avoid mount leaks ()
featureLimit fallback to /blobs endpoint during ref resolution to prevent content store pollution ()
otherPrepare release notes for v2.2.6 ()
other701734d2f Prepare release notes for v2.2.6
otherCI: migrate Vagrant to Lima ()
other672ea355f CI: migrate Vagrant to Lima
otherUpdate go to 1.26.5/1.25.12 ()
otherd7eba3f42 Update go to 1.26.5/1.25.12
otherci: pin fog-json to resolve gem conflict ()
other8f123e4f7 ci: pin fog-json to resolve gem conflict
fixFix nil pointer dereference in NRI GetIPs ()
otherd3e1a2be9 Fix nil pointer dereference in NRI GetIPs
othercri: reject CreateContainer when sandbox is not running ()
other872a9502e cri: reject CreateContainer when sandbox is not running
featureAdd defer in event of mid-function failures in RunPodSandbox to avoid mount leaks ()
featureba7605ee7 Add deferred call to ShutdownSandbox to avoid leaks
fixfix: avoid content storage pollution by limiting the fallback on ref resolution ()
other36c4275ee fix:avoid content storage pollution by limiting the fallback on ref resolution
securityCVE-2026-50195
securityCVE-2026-53488
securityCVE-2026-53492
securityCVE-2026-53489
securityCVE-2026-47262
otherPrepare release notes for v2.2.5 ()
other269031099 Prepare release notes for v2.2.5
otherad59aa564 Merge commit from fork
other0b4d23690 Merge commit from fork
otherbe8460656 cri: filter CDI annotations on checkpoint restore
other347240f72 Merge commit from fork
othercff578841 cri: do not re-tag restored checkpoints
other668cf2c2f Merge commit from fork
other357652293 cri: make checkpoint restore robust to unexpected archive content
otherd43da05af Merge commit from fork
other30708e8d1 Bound user-database file reads in openUserFile
other028647ea2 Merge commit from fork
otherb6072a49f Do not propagate reserved labels from image configs
othervendor: golang.org/x/crypto v0.53.0 ()
othercfea2c141 [release/2.2] vendor: golang.org/x/crypto v0.53.0
otherupdate runc binary to v1.3.6 ()
otherfc96ea6b3 update runc binary to v1.3.6
otherupdate go to 1.26.4/1.25.11 ()
other5a125fd66 update go to 1.26.4/1.25.11
otherConfigure udevd children-max for root-test ()
other2b7dfbd7f Configure udevd children-max for root-test
otherClean up disk space in node e2e workflow ()
other1500e586f Clean up disk space in node e2e workflow
othercontrib/checkpoint: increase timeouts to 30s ()
other9991e944e contrib/checkpoint: increase timeouts to 30s
otherrelease: don't mark 2.2 releases as latest ()
other55a1f85d5 release: don't mark 2.2 releases as latest
othergolang.org/x/crypto v0.45.0 -> v0.53.0
othergolang.org/x/mod v0.29.0 -> v0.36.0
othergolang.org/x/net v0.47.0 -> v0.55.0
othergolang.org/x/sync v0.18.0 -> v0.21.0
othergolang.org/x/sys v0.38.0 -> v0.46.0
othergolang.org/x/term v0.37.0 -> v0.44.0
othergolang.org/x/text v0.31.0 -> v0.38.0