~ / search / GHSA-m8cg-xc2p-r3fc

GHSA-m8cg-xc2p-r3fc

rootless: `/sys/fs/cgroup` is writable when cgroupns isn't unshared in runc

Source: GitHub Advisory Database (reviewed) Low CVE-2023-25809

Packages

EcosystemPackageAffectedFixed in
Go github.com/opencontainers/runc < 1.1.5 1.1.5

Details

As written in the advisory (Markdown source, shown as plain text).

### Impact It was found that rootless runc makes `/sys/fs/cgroup` writable in following conditons: 1. when runc is executed inside the user namespace, and the `config.json` does not specify the cgroup namespace to be unshared (e.g.., `(docker|podman|nerdctl) run --cgroupns=host`, with Rootless Docker/Podman/nerdctl) 2. or, when runc is executed outside the user namespace, and `/sys` is mounted with `rbind, ro` (e.g., `runc spec --rootless`; this condition is very rare) A container may gain the write access to user-owned cgroup hierarchy `/sys/fs/cgroup/user.slice/...` on the host . Other users's cgroup hierarchies are not affected. ### Patches v1.1.5 (planned) ### Workarounds - Condition 1: Unshare the cgroup namespace (`(docker|podman|nerdctl) run --cgroupns=private)`. This is the default behavior of Docker/Podman/nerdctl on cgroup v2 hosts. - Condition 2 (very rare): add `/sys/fs/cgroup` to `maskedPaths`

References

External links from the advisory. They lead to third-party sites.