CVE-2024-27297 (GCVE-0-2024-27297)
Vulnerability from cvelistv5 – Published: 2024-03-11 21:24 – Updated: 2025-06-27 12:16
VLAI?
Summary
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.
Severity ?
6.3 (Medium)
CWE
- CWE-367 - Time-of-check Time-of-use (TOCTOU) Race Condition
Assigner
References
| URL | Tags | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||
Impacted products
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2024-27297",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2024-03-12T18:38:57.385291Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2024-06-04T17:46:24.214Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
},
{
"providerMetadata": {
"dateUpdated": "2025-06-27T12:16:28.799Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"url": "https://guix.gnu.org/en/blog/2025/privilege-escalation-vulnerabilities-2025/"
},
{
"name": "https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37",
"tags": [
"x_refsource_CONFIRM",
"x_transferred"
],
"url": "https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37"
},
{
"name": "https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000",
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000"
},
{
"name": "https://hackmd.io/03UGerewRcy3db44JQoWvw",
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://hackmd.io/03UGerewRcy3db44JQoWvw"
}
],
"title": "CVE Program Container",
"x_generator": {
"engine": "ADPogram 0.0.1"
}
}
],
"cna": {
"affected": [
{
"product": "nix",
"vendor": "NixOS",
"versions": [
{
"status": "affected",
"version": "\u003e= 2.3.0, \u003c 2.3.18"
},
{
"status": "affected",
"version": "\u003e= 2.4.0, \u003c 2.18.2"
},
{
"status": "affected",
"version": "\u003e= 2.19.0, \u003c 2.19.4"
},
{
"status": "affected",
"version": "\u003e= 2.20.0, \u003c 2.20.5"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "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."
}
],
"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"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-367",
"description": "CWE-367: Time-of-check Time-of-use (TOCTOU) Race Condition",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2024-03-11T21:25:51.065Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37"
},
{
"name": "https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000"
},
{
"name": "https://hackmd.io/03UGerewRcy3db44JQoWvw",
"tags": [
"x_refsource_MISC"
],
"url": "https://hackmd.io/03UGerewRcy3db44JQoWvw"
}
],
"source": {
"advisory": "GHSA-2ffj-w4mj-pg37",
"discovery": "UNKNOWN"
},
"title": "Nix Corruption of fixed-output derivations"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2024-27297",
"datePublished": "2024-03-11T21:24:43.919Z",
"dateReserved": "2024-02-22T18:08:38.874Z",
"dateUpdated": "2025-06-27T12:16:28.799Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.1",
"vulnerability-lookup:meta": {
"fkie_nvd": {
"descriptions": "[{\"lang\": \"en\", \"value\": \"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.\"}, {\"lang\": \"es\", \"value\": \"Nix es un administrador de paquetes para Linux y otros sistemas Unix. Una derivaci\\u00f3n de salida fija en Linux puede enviar descriptores de archivos en el almac\\u00e9n Nix a otro programa que se ejecuta en el host (u otra derivaci\\u00f3n de salida fija) a trav\\u00e9s de sockets de dominio Unix en el espacio de nombres abstracto. Esto permite modificar la salida de la derivaci\\u00f3n, despu\\u00e9s de que Nix haya registrado la ruta como \\\"v\\u00e1lida\\\" e inmutable en la base de datos de Nix. En particular, esto permite modificar la salida de derivaciones de salida fija respecto de su contenido esperado. Este problema se solucion\\u00f3 en las versiones 2.3.18 2.18.2 2.19.4 y 2.20.5. Se recomienda a los usuarios que actualicen. No se conocen workarounds para esta vulnerabilidad.\"}]",
"id": "CVE-2024-27297",
"lastModified": "2024-11-21T09:04:16.323",
"metrics": "{\"cvssMetricV31\": [{\"source\": \"security-advisories@github.com\", \"type\": \"Secondary\", \"cvssData\": {\"version\": \"3.1\", \"vectorString\": \"CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L\", \"baseScore\": 6.3, \"baseSeverity\": \"MEDIUM\", \"attackVector\": \"ADJACENT_NETWORK\", \"attackComplexity\": \"LOW\", \"privilegesRequired\": \"LOW\", \"userInteraction\": \"NONE\", \"scope\": \"UNCHANGED\", \"confidentialityImpact\": \"NONE\", \"integrityImpact\": \"HIGH\", \"availabilityImpact\": \"LOW\"}, \"exploitabilityScore\": 2.1, \"impactScore\": 4.2}]}",
"published": "2024-03-11T22:15:55.277",
"references": "[{\"url\": \"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\", \"source\": \"security-advisories@github.com\"}, {\"url\": \"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\", \"source\": \"security-advisories@github.com\"}, {\"url\": \"https://hackmd.io/03UGerewRcy3db44JQoWvw\", \"source\": \"security-advisories@github.com\"}, {\"url\": \"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}, {\"url\": \"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}, {\"url\": \"https://hackmd.io/03UGerewRcy3db44JQoWvw\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}]",
"sourceIdentifier": "security-advisories@github.com",
"vulnStatus": "Awaiting Analysis",
"weaknesses": "[{\"source\": \"security-advisories@github.com\", \"type\": \"Secondary\", \"description\": [{\"lang\": \"en\", \"value\": \"CWE-367\"}]}]"
},
"nvd": "{\"cve\":{\"id\":\"CVE-2024-27297\",\"sourceIdentifier\":\"security-advisories@github.com\",\"published\":\"2024-03-11T22:15:55.277\",\"lastModified\":\"2025-06-27T13:15:23.240\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"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.\"},{\"lang\":\"es\",\"value\":\"Nix es un administrador de paquetes para Linux y otros sistemas Unix. Una derivaci\u00f3n de salida fija en Linux puede enviar descriptores de archivos en el almac\u00e9n Nix a otro programa que se ejecuta en el host (u otra derivaci\u00f3n de salida fija) a trav\u00e9s de sockets de dominio Unix en el espacio de nombres abstracto. Esto permite modificar la salida de la derivaci\u00f3n, despu\u00e9s de que Nix haya registrado la ruta como \\\"v\u00e1lida\\\" e inmutable en la base de datos de Nix. En particular, esto permite modificar la salida de derivaciones de salida fija respecto de su contenido esperado. Este problema se solucion\u00f3 en las versiones 2.3.18 2.18.2 2.19.4 y 2.20.5. Se recomienda a los usuarios que actualicen. No se conocen workarounds para esta vulnerabilidad.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L\",\"baseScore\":6.3,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"ADJACENT_NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"LOW\"},\"exploitabilityScore\":2.1,\"impactScore\":4.2},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N\",\"baseScore\":5.9,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"HIGH\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"NONE\"},\"exploitabilityScore\":2.2,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-367\"}]},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-367\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:nixos:nix:*:*:*:*:*:*:*:*\",\"versionEndExcluding\":\"2.3.18\",\"matchCriteriaId\":\"47601C02-77F2-4F60-9077-298221CA12F5\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:nixos:nix:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"2.4\",\"versionEndExcluding\":\"2.18.2\",\"matchCriteriaId\":\"0BD193CF-30E0-4583-AA03-101B1488A973\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:nixos:nix:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"2.19.0\",\"versionEndExcluding\":\"2.19.4\",\"matchCriteriaId\":\"69B51F29-3651-4418-B41A-847576A31C5A\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:nixos:nix:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"2.20.0\",\"versionEndExcluding\":\"2.20.5\",\"matchCriteriaId\":\"2C2A184D-2C19-4A49-BF6A-44EC5C89C156\"}]}]}],\"references\":[{\"url\":\"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Patch\"]},{\"url\":\"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Vendor Advisory\"]},{\"url\":\"https://hackmd.io/03UGerewRcy3db44JQoWvw\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Exploit\"]},{\"url\":\"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Vendor Advisory\"]},{\"url\":\"https://guix.gnu.org/en/blog/2025/privilege-escalation-vulnerabilities-2025/\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\"},{\"url\":\"https://hackmd.io/03UGerewRcy3db44JQoWvw\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Exploit\"]}]}}",
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://guix.gnu.org/en/blog/2025/privilege-escalation-vulnerabilities-2025/\"}, {\"url\": \"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\", \"name\": \"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\", \"tags\": [\"x_refsource_CONFIRM\", \"x_transferred\"]}, {\"url\": \"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\", \"name\": \"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}, {\"url\": \"https://hackmd.io/03UGerewRcy3db44JQoWvw\", \"name\": \"https://hackmd.io/03UGerewRcy3db44JQoWvw\", \"tags\": [\"x_refsource_MISC\", \"x_transferred\"]}], \"x_generator\": {\"engine\": \"ADPogram 0.0.1\"}, \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2025-06-27T12:16:28.799Z\"}}, {\"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-27297\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-03-12T18:38:57.385291Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-05-23T19:01:17.186Z\"}, \"title\": \"CISA ADP Vulnrichment\"}], \"cna\": {\"title\": \"Nix Corruption of fixed-output derivations\", \"source\": {\"advisory\": \"GHSA-2ffj-w4mj-pg37\", \"discovery\": \"UNKNOWN\"}, \"metrics\": [{\"cvssV3_1\": {\"scope\": \"UNCHANGED\", \"version\": \"3.1\", \"baseScore\": 6.3, \"attackVector\": \"ADJACENT_NETWORK\", \"baseSeverity\": \"MEDIUM\", \"vectorString\": \"CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L\", \"integrityImpact\": \"HIGH\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"availabilityImpact\": \"LOW\", \"privilegesRequired\": \"LOW\", \"confidentialityImpact\": \"NONE\"}}], \"affected\": [{\"vendor\": \"NixOS\", \"product\": \"nix\", \"versions\": [{\"status\": \"affected\", \"version\": \"\u003e= 2.3.0, \u003c 2.3.18\"}, {\"status\": \"affected\", \"version\": \"\u003e= 2.4.0, \u003c 2.18.2\"}, {\"status\": \"affected\", \"version\": \"\u003e= 2.19.0, \u003c 2.19.4\"}, {\"status\": \"affected\", \"version\": \"\u003e= 2.20.0, \u003c 2.20.5\"}]}], \"references\": [{\"url\": \"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\", \"name\": \"https://github.com/NixOS/nix/security/advisories/GHSA-2ffj-w4mj-pg37\", \"tags\": [\"x_refsource_CONFIRM\"]}, {\"url\": \"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\", \"name\": \"https://github.com/NixOS/nix/commit/f8170ce9f119e5e6724eb81ff1b5a2d4c0024000\", \"tags\": [\"x_refsource_MISC\"]}, {\"url\": \"https://hackmd.io/03UGerewRcy3db44JQoWvw\", \"name\": \"https://hackmd.io/03UGerewRcy3db44JQoWvw\", \"tags\": [\"x_refsource_MISC\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"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.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-367\", \"description\": \"CWE-367: Time-of-check Time-of-use (TOCTOU) Race Condition\"}]}], \"providerMetadata\": {\"orgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"shortName\": \"GitHub_M\", \"dateUpdated\": \"2024-03-11T21:25:51.065Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2024-27297\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2025-06-27T12:16:28.799Z\", \"dateReserved\": \"2024-02-22T18:08:38.874Z\", \"assignerOrgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"datePublished\": \"2024-03-11T21:24:43.919Z\", \"assignerShortName\": \"GitHub_M\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.1"
}
}
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…