CVE-2021-27851: Local privilege escalation in GNU Guix via guix-daemon and '--keep-failed'
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 Software
Remediation
Patch Available
Event History
Frequently Asked Questions
What is the severity of CVE-2021-27851?
CVE-2021-27851 has a high severity level due to the potential for local privilege escalation in multi-user environments.
How do I fix CVE-2021-27851?
To mitigate CVE-2021-27851, users should upgrade to the latest version of GNU Guix that addresses this vulnerability.
Who is affected by CVE-2021-27851?
CVE-2021-27851 affects users of GNU Guix versions between 0.11.0 and 1.2.0 when running 'guix-daemon' in multi-user setups.
What type of attack does CVE-2021-27851 involve?
CVE-2021-27851 involves an unprivileged user leveraging 'guix build' to spawn a process that could escalate privileges.
Is CVE-2021-27851 currently being exploited?
As of now, there are no public reports confirming active exploitation of CVE-2021-27851, but it is recommended to take preventive measures.