Skip to content
OpenAdvisories
Unscored CVE-2021-27851 EUVD-2021-14589GHSA-c5fp-qrw2-8x2w

Local privilege escalation in GNU Guix via guix-daemon and '--keep-failed'

Published Apr 26, 2021 · Updated Sep 17, 2024 · Assigned by certcc

Description

A security vulnerability that can lead to local privilege escalation has been found in ’guix-daemon’. It affects multi-user setups in which ’guix-daemon’ runs locally. The attack consists in having an unprivileged user spawn a build process, for instance with `guix build`, that makes its build directory world-writable. The user then creates a hardlink to a root-owned file such as /etc/shadow in that build directory. If the user passed the --keep-failed option and the build eventually fails, the daemon changes ownership of the whole build tree, including the hardlink, to the user. At that point, the user has write access to the target file. Versions after and including v0.11.0-3298-g2608e40988, and versions prior to v1.2.0-75109-g94f0312546 are vulnerable.

Affected products

VendorProductAffectedFixed
GNU Guix guix-daemon v0.11.0-3298-g2608e40988 – < unspecified, unspecified – < v1.2.0-75109-g94f0312546 unspecified

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 11 guix 1.2.0-4 —
ReleasePackageFixed inAdvisory
Ubuntu Pro 22.04 LTS guix No fix yet —
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed guix 1.3.0-1.8 openSUSE-SU-2024:10836-1

Advisories 1

References