Cri-o: checkpoint restore can be triggered from different namespaces
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 1.29.11, 1.30.8, 1.31.3
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
A vulnerability was found in CRI-O, where it can be requested to take a checkpoint archive of a container and later be asked to restore it. When it does that restoration, it attempts to restore the mounts from the restore archive instead of the pod request. As a result, the validations run on the pod spec, verifying that the pod has access to the mounts it specifies are not applicable to a restored container. This flaw allows a malicious user to trick CRI-O into restoring a pod that doesn't have access to host mounts. The user needs access to the kubelet or cri-o socket to call the restore endpoint and trigger the restore.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- cri-o
fixed in 1.29.11; From 1.30.0 · fixed in 1.30.8; From 1.31.0 · fixed in 1.31.3
- cri-o
Version range not reported
- cri-o
Version range not reported
- openshift/ose-rhel-coreos-9
Version range not reported
- openshift/ose-rhel-coreos-9
Version range not reported
- cri-o
Version range not reported
- openshift/ose-rhel-coreos-9
Version range not reported
- container-tools:rhel8/conmon
Version range not reported
- container-tools:rhel8/podman
Version range not reported
- conmon
Version range not reported
- cri-o
Version range not reported
- conmon
Version range not reported
- github.com/cri-o/cri-oGo
fixed in 1.29.11
- github.com/cri-o/cri-oGo
From 1.30.0 · fixed in 1.30.8
- github.com/cri-o/cri-oGo
From 1.31.0 · fixed in 1.31.3
- github.com/cri-o/cri-oGo
fixed in 1.29.11; From 1.30.0 · fixed in 1.30.8; From 1.31.0 · fixed in 1.31.3