Description
An issue was discovered in Nix before 2.34.7 and Lix before 2.95.2. Unbounded recursion in the NAR (Nix Archive) parser could lead to a stack-to-heap overflow when the parser is run on a coroutine stack. The stack is allocated without a guard page, which means that a stack overflow could overwrite memory on the heap and could allow arbitrary code execution as the Nix daemon (run as root in multi-user installations) if ASLR hardening is bypassed. This can be exploited by all users able to connect to the daemon (e.g., in Nix, this is configurable via the allowed-users setting, defaulting to all users). The fixed versions are 2.34.7, 2.33.6, 2.32.8, 2.31.5, 2.30.5, 2.29.4, and 2.28.7 for Nix (introduced in 2.24.4); and 2.95.2, 2.94.2, and 2.93.4 for Lix (introduced in 2.93.0).
Metrics
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:NWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| NixOS | Nix | >= 2.24.4, < 2.28.7; >= 2.29.0, < 2.29.4; >= 2.30.0, < 2.30.5; >= 2.31.0, < 2.31.5; >= 2.32.0, < 2.32.8; >= 2.33.0, < 2.33.6; >= 2.34.0, < 2.34.7 |
| Lix Project | Lix | >= 2.93.0, < 2.93.4; >= 2.94.0, < 2.94.2; >= 2.95.0, < 2.95.2 |
References
- https://discourse.nixos.org/t/security-advisory-local-privilege-escalation-in-lix-and-nix/77407
- https://github.com/NixOS/nix/security/advisories/GHSA-vh5x-56v6-4368
- https://lix.systems/blog/2026-05-05-lix-unsigned-integer-overflow/
- https://www.openwall.com/lists/oss-security/2026/05/04/32
- https://www.openwall.com/lists/oss-security/2026/05/04/33
Timeline
- Published
- May 5, 2026
- Last modified
- Oct 26, 2026
- NVD status
- Deferred