GHSA-5w4j-f78p-4wh9
Libcontainer is affected by capabilities elevation similar to GHSA-f3fp-gc8g-vw66
Details
### Impact In libcontainer, while creating a tenant container, the tenant builder accepts a list of capabilities to be added in the spec of tenant container. Code can be seen [here](https://github.com/youki-dev/youki/blob/9e63fa4da1672a78ca45100f3059a732784a5174/crates/libcontainer/src/container/tenant_builder.rs#L408) . The logic here adds the given capabilities to all capabilities of main container if present in spec, otherwise simply set provided capabilities as capabilities of the tenant container.
However, GHSA-f3fp-gc8g-vw66 was opened on runc mentioning that setting inherited caps in any case for tenant container can lead to elevation of capabilities. For this, they added a fix [here](https://github.com/opencontainers/runc/blob/986451c24e17c8d4be3c454f60b1f7be4af3e8b4/exec.go#L234-L242) where they never set new inherited caps on tenant, and set ambient caps only if original container had inherited caps.
Similarly crun never sets inherited caps as can be seen [here](https://github.com/containers/crun/blob/3ec6298abd79e144fbf3fa6db90793ff4c0516f9/src/exec.c#L319).
> [!NOTE] This does not affect youki binary itself, as the exec implementation is partially broken and does not pass on the user-provided caps to tenant containers, this is only applicable if you are using libcontainer directly and using the tenant builder.
### Workarounds - Do not pass any user-provided capabilities to the tenant builder, in which case no capabilities will be set on tenant. - Alternatively you can verify the capabilities of original container and filter the user passed capabilities before setting them on tenant.
### References - https://github.com/opencontainers/runc/security/advisories/GHSA-f3fp-gc8g-vw66 - https://man7.org/linux/man-pages/man7/capabilities.7.html
Are you affected?
Enter the version of the package you're using.
Affected packages
0Fixed in: 0.5.3Upgrade libcontainer to 0.5.3 or newer (ecosystem crates.io).
References
- https://github.com/opencontainers/runc/security/advisories/GHSA-f3fp-gc8g-vw66[WEB]
- https://github.com/youki-dev/youki/security/advisories/GHSA-5w4j-f78p-4wh9[WEB]
- https://nvd.nist.gov/vuln/detail/CVE-2025-27612[ADVISORY]
- https://github.com/youki-dev/youki/commit/747e342d2026fbf3a395db3e2a491ebef00082f1[WEB]
- https://github.com/containers/crun/blob/3ec6298abd79e144fbf3fa6db90793ff4c0516f9/src/exec.c#L319[WEB]
- https://github.com/opencontainers/runc/blob/986451c24e17c8d4be3c454f60b1f7be4af3e8b4/exec.go#L234-L242[WEB]
- https://github.com/youki-dev/youki[PACKAGE]
- https://github.com/youki-dev/youki/blob/9e63fa4da1672a78ca45100f3059a732784a5174/crates/libcontainer/src/container/tenant_builder.rs#L408[WEB]
- https://man7.org/linux/man-pages/man7/capabilities.7.html[WEB]