Описание
runc is a CLI tool for spawning and running containers according to the OCI specification. In affected versions 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) or 2. 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. Users are advised to upgrade to version 1.1.5. Users unable to upgrade may unshare the cgroup namespace ((docker|podman|nerdctl) run --cgroupns=private)
. This is the default behavior of Docker/Podman/nerdctl on cgroup v2 hosts. or add /sys/fs/cgroup
to maskedPaths
.
A flaw was found in runc, where it is vulnerable to a denial of service caused by improper access control in the /sys/fs/cgroup endpoint. This flaw allows a local authenticated attacker to cause a denial of service.
Отчет
Within regulated environments, a combination of the following controls acts as a significant barrier to successfully exploiting a CWE-276: Incorrect Default Permissions vulnerability and therefore downgrades the severity of this particular CVE from Moderate to Low. Access enforcement ensures that only authorized users can access system resources, reducing the risk of exploited default permissions. Remote access controls further limit exposure by blocking unauthorized external access, preventing attackers from leveraging misconfigured permissions. Baseline and configuration setting controls enforce secure defaults, reducing the likelihood of weak permissions at deployment. Access restrictions for change ensure only authorized personnel can modify system configurations, preventing accidental or malicious security weaknesses. Together, these controls mitigate the risk of unauthorized access, privilege escalation, and exploitation of insecure default permissions.
Меры по смягчению последствий
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
Затронутые пакеты
Платформа | Пакет | Состояние | Рекомендация | Релиз |
---|---|---|---|---|
Red Hat Enterprise Linux 7 | runc | Will not fix | ||
Red Hat Enterprise Linux 8 | container-tools:3.0/runc | Will not fix | ||
Red Hat OpenShift Container Platform 3.11 | atomic-openshift | Out of support scope | ||
Red Hat OpenShift Container Platform 3.11 | runc | Out of support scope | ||
Red Hat OpenShift Container Platform 4 | microshift | Not affected | ||
Red Hat OpenShift Container Platform 4 | openshift | Affected | ||
Red Hat OpenShift Container Platform 4 | openshift4/ose-pod | Not affected | ||
Red Hat OpenShift Container Platform 4 | openshift4/ose-tests | Affected | ||
Red Hat OpenShift Container Platform 4 | runc | Affected | ||
Red Hat Enterprise Linux 8 | container-tools | Fixed | RHSA-2023:6938 | 14.11.2023 |
Показывать по
Дополнительная информация
Статус:
6.3 Medium
CVSS3
Связанные уязвимости
runc is a CLI tool for spawning and running containers according to the OCI specification. In affected versions 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) or 2. 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. Users are advised to upgrade to version 1.1.5. Users unable to upgrade may unshare the cgroup namespace (`(docker|podman|nerdctl) run --cgroupns=private)`. This is the default behavior of Docker/Podman/nerdctl on cgroup v2 hosts. or add `/sys/fs/cgroup` to...
runc is a CLI tool for spawning and running containers according to the OCI specification. In affected versions 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) or 2. 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. Users are advised to upgrade to version 1.1.5. Users unable to upgrade may unshare the cgroup namespace (`(docker|podman|nerdctl) run --cgroupns=private)`. This is the default behavior of Docker/Podman/nerdctl on cgroup v2 hosts. or add `/sys/fs/cgroup` to `m
runc is a CLI tool for spawning and running containers according to th ...
rootless: `/sys/fs/cgroup` is writable when cgroupns isn't unshared in runc
6.3 Medium
CVSS3