p PatchFirst

CVE-2023-25809

CVE-2023-25809 · rootless: `/sys/fs/cgroup` is writable when cgroupns isn't unshared in runc

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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`.

CVSS 5.0 · Medium · EPSS 0.3% · Fix available

Published
Updated

Stack: system · containers

Affected products and versions

  • runc

    Versions
    • < 1.1.5: Affected

    No fix published

  • runc Debian:12

    Affected ranges
    • ECOSYSTEM: < 1.1.5+ds1-1

    Update to 1.1.5+ds1-1

  • runc Debian:13

    Affected ranges
    • ECOSYSTEM: < 1.1.5+ds1-1

    Update to 1.1.5+ds1-1

  • runc Debian:14

    Affected ranges
    • ECOSYSTEM: < 1.1.5+ds1-1

    Update to 1.1.5+ds1-1

  • runc Ubuntu:Pro:16.04:LTS

    Versions
    • 0.0.8+dfsg-2
    • 0.1.1-0ubuntu5~16.04
    • 1.0.0~rc1-0ubuntu1~16.04
    • 1.0.0~rc1-0ubuntu2~16.04.1
    • 1.0.0~rc1-0ubuntu2~16.04.1.1
    • 1.0.0~rc2-0ubuntu2~16.04.1
    • 1.0.0~rc2+docker1.12.6-0ubuntu1~16.04.1
    • 1.0.0~rc2+docker1.13.1-0ubuntu1~16.04.1
    • 1.0.0~rc2+docker1.13.1-0ubuntu1~16.04.2
    • 1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.3
    • 1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.4
    • 1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.4+esm1
    • 1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.4+esm2
    Affected ranges
    • ECOSYSTEM: < 1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.4+esm4

    Update to 1.0.0~rc7+git20190403.029124da-0ubuntu1~16.04.4+esm4

  • runc Ubuntu:18.04:LTS

    Versions
    • 1.0.0~rc2+docker1.13.1-0ubuntu1
    • 1.0.0~rc4+dfsg1-2
    • 1.0.0~rc4+dfsg1-6
    • 1.0.0~rc4+dfsg1-6ubuntu0.18.04.1
    • 1.0.0~rc7+git20190403.029124da-0ubuntu1~18.04.1
    • 1.0.0~rc7+git20190403.029124da-0ubuntu1~18.04.2
    • 1.0.0~rc10-0ubuntu1~18.04.1
    • 1.0.0~rc10-0ubuntu1~18.04.2
    • 1.0.0~rc93-0ubuntu1~18.04.1
    • 1.0.0~rc93-0ubuntu1~18.04.2
    • 1.0.0~rc95-0ubuntu1~18.04.1
    • 1.0.0~rc95-0ubuntu1~18.04.2
    • 1.0.1-0ubuntu2~18.04.1
    • 1.1.0-0ubuntu1~18.04.1
    • 1.1.4-0ubuntu1~18.04.1
    Affected ranges
    • ECOSYSTEM: < 1.1.4-0ubuntu1~18.04.2

    Update to 1.1.4-0ubuntu1~18.04.2

  • runc Ubuntu:20.04:LTS

    Versions
    • 1.0.0~rc8+git20190923.3e425f80-0ubuntu1
    • 1.0.0~rc10-0ubuntu1
    • 1.0.0~rc93-0ubuntu1~20.04.1
    • 1.0.0~rc93-0ubuntu1~20.04.2
    • 1.0.0~rc95-0ubuntu1~20.04.1
    • 1.0.0~rc95-0ubuntu1~20.04.2
    • 1.0.1-0ubuntu2~20.04.1
    • 1.1.0-0ubuntu1~20.04.1
    • 1.1.0-0ubuntu1~20.04.2
    • 1.1.4-0ubuntu1~20.04.1
    • 1.1.4-0ubuntu1~20.04.2
    Affected ranges
    • ECOSYSTEM: < 1.1.4-0ubuntu1~20.04.3

    Update to 1.1.4-0ubuntu1~20.04.3

  • runc Ubuntu:22.04:LTS

    Versions
    • 1.0.1-0ubuntu2
    • 1.0.1-0ubuntu3
    • 1.0.3-0ubuntu1
    • 1.1.0-0ubuntu1
    • 1.1.0-0ubuntu1.1
    • 1.1.4-0ubuntu1~22.04.1
    • 1.1.4-0ubuntu1~22.04.2
    Affected ranges
    • ECOSYSTEM: < 1.1.4-0ubuntu1~22.04.3

    Update to 1.1.4-0ubuntu1~22.04.3

Original sources

Check your server →