Arbitrary host CRI log file read via symlink following in CRI checkpoint restore
High severity
GitHub Reviewed
Published
Jun 18, 2026
in
containerd/containerd
•
Updated Jun 19, 2026
Package
Affected versions
>= 2.1.0, < 2.1.9
>= 2.2.0, < 2.2.5
>= 2.3.0, < 2.3.2
Patched versions
2.1.9
2.2.5
2.3.2
Description
Published to the GitHub Advisory Database
Jun 19, 2026
Reviewed
Jun 19, 2026
Last updated
Jun 19, 2026
Impact
A bug was found in containerd where the CRI plugin restores
container.logfrom a checkpoint image without validating a symlinked path. This could result in reading an arbitrary file on the host viakubectl logs.Patches
This bug has been fixed in the following containerd versions:
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:
References