GitHub Advisoryadvisory · crates.io

GHSA-vf95-55w6-qmrf youki container escape and denial of service due to arbitrary write gadgets and procfs write redirects

HIGH Published 2025-11-05 Modified 2025-11-15 Official page ↗
Aliases
CVE-2025-62596
Ecosystem
crates.io
Packages
youki
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:H
Weaknesses
CWE-363, CWE-61
Reviewed
2025-11-05

Affected packages

• crates.io youki: < 0.5.7 → fixed in 0.5.7

Description

Impact ### youki’s apparmor handling performs insufficiently strict write-target validation, which—combined with path substitution during pathname resolution—can allow writes to unintended procfs locations. Weak write-target check youki only verifies that the destination lies somewhere under procfs. As a result, a write intended for `/proc/self/attr/apparmor/exec` can succeed even if the path has been redirected to `/proc/sys/kernel/hostname`(which is also in procfs). Path substitution While resolving a path component-by-component, a shared-mount race can substitute intermediate components and redirect the final target. This is a different project, but the core logic is similar to the CVE in runc. Issues were identified in runc, and verification was also conducted in youki to confirm the problems. https://github.com/opencontainers/runc/security/advisories/GHSA-cgrx-mc8f-2prm Credits ### Thanks to Li Fubang (@lifubang from acmcoder.com, CIIC) and Tõnis Tiigi (@tonistiigi from Docker) for both independently discovering runc's original vulnerability, as well as Aleksa Sarai (@cyphar from SUSE) for the original research into this class of security issues and solutions.

Related

Alias · CVE (1)

  • CVE-2025-62596 Youki is a container runtime written in Rust. vulnerability

Weakness · CWE (2)

  • CWE-363 Race Condition Enabling Link Following weakness
  • CWE-61 UNIX Symbolic Link (Symlink) Following weakness

References