CVE-2024-38531
Nix is a package manager for Linux and other Unix systems that makes package management reliable and reproducible. A build process has access to and can change the permissions of the build directory. After creating a setuid binary in a globally accessible location, a malicious local user can assume the permissions of a Nix daemon worker and hijack all future builds. This issue was patched in version(s) 2.23.1, 2.22.2, 2.21.3, 2.20.7, 2.19.5 and 2.18.4.
CVSS
- Base score
- 3.6
- Version
- 3.1
- Vector
- CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:L
Exploitation probability (EPSS)
- Probability of exploitation in the next 30 days
- 0.14 %
- Percentile among all scored CVEs
- 3
- Score date
- 10/22/2026
EPSS (Exploit Prediction Scoring System, FIRST) estimates how likely a vulnerability is to be exploited in the wild within 30 days. It complements CVSS (impact) and CISA KEV (confirmed exploitation).
Affected technologies (1)
⚠ AI-inferred from the description — NVD hasn't analyzed this CVE yet, these aren't verified CPEs.
CWEs
- CWE-278
References
Raw JSON (NVD)
Show
{
"id": "CVE-2024-38531",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2024-38531",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2024-07-05T15:26:22.607904Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 3.6,
"attackVector": "LOCAL",
"baseSeverity": "LOW",
"vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:L",
"integrityImpact": "LOW",
"userInteraction": "NONE",
"attackComplexity": "HIGH",
"availabilityImpact": "LOW",
"privilegesRequired": "LOW",
"confidentialityImpact": "NONE"
},
"impactScore": 2.5,
"exploitabilityScore": 1
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "NixOS",
"product": "nix",
"versions": [
{
"status": "affected",
"version": ">= 2.23.0, < 2.23.1"
},
{
"status": "affected",
"version": ">= 2.22.0, < 2.22.2"
},
{
"status": "affected",
"version": ">= 2.21.0, < 2.21.3"
},
{
"status": "affected",
"version": ">= 2.20.0, < 2.20.7"
},
{
"status": "affected",
"version": ">= 2.19.0, < 2.19.5"
},
{
"status": "affected",
"version": ">= 2.18.0, < 2.18.4"
}
]
}
]
}
],
"published": "2024-06-28T14:15:03.293",
"references": [
{
"url": "https://github.com/NixOS/nix/pull/10501",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/NixOS/nix/security/advisories/GHSA-q82p-44mg-mgh5",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/NixOS/nix/pull/10501",
"source": "af854a3a-2127-422b-91ae-364da2661108"
},
{
"url": "https://github.com/NixOS/nix/security/advisories/GHSA-q82p-44mg-mgh5",
"source": "af854a3a-2127-422b-91ae-364da2661108"
}
],
"vulnStatus": "Deferred",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-278"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Nix is a package manager for Linux and other Unix systems that makes package management reliable and reproducible. A build process has access to and can change the permissions of the build directory. After creating a setuid binary in a globally accessible location, a malicious local user can assume the permissions of a Nix daemon worker and hijack all future builds. This issue was patched in version(s) 2.23.1, 2.22.2, 2.21.3, 2.20.7, 2.19.5 and 2.18.4."
},
{
"lang": "es",
"value": "Nix es un administrador de paquetes para Linux y otros sistemas Unix que hace que la administración de paquetes sea confiable y reproducible. Un proceso de compilación tiene acceso y puede cambiar los permisos del directorio de compilación. Después de crear un binario setuid en una ubicación accesible globalmente, un usuario local malicioso puede asumir los permisos de un daemon trabajador de Nix y secuestrar todas las compilaciones futuras. Este problema se solucionó en las versiones 2.23.1, 2.22.2, 2.21.3, 2.20.7, 2.19.5 y 2.18.4."
}
],
"lastModified": "2026-06-17T07:40:28.927",
"sourceIdentifier": "security-advisories@github.com"
}