title: Nix Corruption of fixed-output derivations
description: Nix is a package manager for Linux and other Unix systems. A fixed-output derivations on Linux can send file descriptors to files in the Nix store to another program running on the host (or another fixed-output derivation) via Unix domain sockets in the abstract namespace. This allows to modify the output of the derivation, after Nix has registered the path as "valid" and immutable in the Nix database. In particular, this allows the output of fixed-output derivations to be modified from their expected content. This issue has been addressed in versions 2.3.18 2.18.2 2.19.4 and 2.20.5. Users are advised to upgrade. There are no known workarounds for this vulnerability.
problem types: CWE-367: Time-of-check Time-of-use (TOCTOU) Race Condition
affected:
{
vendor: NixOS
product: nix
versions:
version: >= 2.3.0, < 2.3.18, status: affected
version: >= 2.4.0, < 2.18.2, status: affected
version: >= 2.19.0, < 2.19.4, status: affected
version: >= 2.20.0, < 2.20.5, status: affected
}
metrics:
cvssV3_1: [
attackComplexity: LOW
attackVector: ADJACENT_NETWORK
availabilityImpact: LOW
baseScore: 6.3
baseSeverity: MEDIUM
confidentialityImpact: NONE
integrityImpact: HIGH
privilegesRequired: LOW
scope: UNCHANGED
userInteraction: NONE
vectorString: CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
version: 3.1
]