{"id":"CVE-2026-62847","state":"PUBLISHED","title":"Metalama: Local code execution via DLL planting in world-writable temporary directories (Linux/macOS)","description":"Metalama is a Roslyn-based open-source patterns and architecture toolkit for C#. Prior to 2025.1.18, 2026.0.25 and 2026.1.19, Metalama.Framework and Metalama.Tool load and execute compile-time assemblies, auxiliary executable tools and embedded helper assemblies from predictable temporary directories. On `Linux` and `macOS`, the default `Path.GetTempPath()` location is world-writable, and existing artifacts are trusted based on sentinel or `.completed` marker files rather than integrity verification. A local unprivileged user on a shared machine or CI/build agent can pre-create the deterministic directory structure and plant a malicious DLL with the matching sentinel. When a higher-privileged developer or build account subsequently builds, Metalama skips regeneration and executes the planted artifact in the compiler, IDE or MSBuild process as the building user. This permits cross-user privilege escalation, reading source and secrets, supply-chain tampering with build output, or disrupting builds. Default Windows per-user temporary directories are protected by ACLs and are not affected. Deployer-selected insecure cache locations are outside the vulnerability's scope. This issue is fixed in versions 2025.1.18, 2026.0.25 and 2026.1.19.","publishedAt":"2026-10-30T20:23:50.882Z","updatedAt":"2026-10-30T22:13:12.107Z","severity":{"score":8.2,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H","source":"GitHub_M"},"assigner":"GitHub_M","products":["metalama Metalama"],"affected":[{"vendor":"metalama","product":"Metalama","versions":[{"version":"< 2025.1.18","status":"affected"},{"version":">= 2025.2.0-preview, <= 2025.2.5-rc","status":"affected"},{"version":">= 2026.0.0-preview, < 2026.0.25","status":"affected"},{"version":">= 2026.1.0-preview, < 2026.1.19","status":"affected"}]}],"references":["https://github.com/metalama/Metalama/security/advisories/GHSA-m6wq-39m7-9xpp","https://github.com/metalama/Metalama/pull/1650","https://github.com/metalama/Metalama/commit/09911349a916e82194b1cfaa6d0a38acad928fc9","https://github.com/metalama/Metalama/commit/92c4feecfce86d18fcb007ab6d3a1b4383326a2e","https://github.com/metalama/Metalama/releases/tag/release/2025.1.18","https://github.com/metalama/Metalama/releases/tag/release/2026.0.25","https://github.com/metalama/Metalama/releases/tag/release/2026.1.19"],"weaknesses":["CWE-377","CWE-427"],"ingestedAt":"2026-10-30T22:16:06.501Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/62xxx/CVE-2026-62847.json","commit":"226652b7321cd45ef01add6f464a8114b52515e5","baselineCommit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-62847","state":"PUBLISHED","datePublished":"2026-10-30T20:23:50.882Z","dateUpdated":"2026-10-30T22:13:12.107Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-07-14T21:10:50.031Z"},"containers":{"cna":{"title":"Metalama: Local code execution via DLL planting in world-writable temporary directories (Linux/macOS)","descriptions":[{"lang":"en","value":"Metalama is a Roslyn-based open-source patterns and architecture toolkit for C#. Prior to 2025.1.18, 2026.0.25 and 2026.1.19, Metalama.Framework and Metalama.Tool load and execute compile-time assemblies, auxiliary executable tools and embedded helper assemblies from predictable temporary directories. On `Linux` and `macOS`, the default `Path.GetTempPath()` location is world-writable, and existing artifacts are trusted based on sentinel or `.completed` marker files rather than integrity verification. A local unprivileged user on a shared machine or CI/build agent can pre-create the deterministic directory structure and plant a malicious DLL with the matching sentinel. When a higher-privileged developer or build account subsequently builds, Metalama skips regeneration and executes the planted artifact in the compiler, IDE or MSBuild process as the building user. This permits cross-user privilege escalation, reading source and secrets, supply-chain tampering with build output, or disrupting builds. Default Windows per-user temporary directories are protected by ACLs and are not affected. Deployer-selected insecure cache locations are outside the vulnerability's scope. This issue is fixed in versions 2025.1.18, 2026.0.25 and 2026.1.19."}],"affected":[{"vendor":"metalama","product":"Metalama","versions":[{"version":"< 2025.1.18","status":"affected"},{"version":">= 2025.2.0-preview, <= 2025.2.5-rc","status":"affected"},{"version":">= 2026.0.0-preview, < 2026.0.25","status":"affected"},{"version":">= 2026.1.0-preview, < 2026.1.19","status":"affected"}]}],"references":[{"url":"https://github.com/metalama/Metalama/security/advisories/GHSA-m6wq-39m7-9xpp","name":"https://github.com/metalama/Metalama/security/advisories/GHSA-m6wq-39m7-9xpp","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/metalama/Metalama/pull/1650","name":"https://github.com/metalama/Metalama/pull/1650","tags":["x_refsource_MISC"]},{"url":"https://github.com/metalama/Metalama/commit/09911349a916e82194b1cfaa6d0a38acad928fc9","name":"https://github.com/metalama/Metalama/commit/09911349a916e82194b1cfaa6d0a38acad928fc9","tags":["x_refsource_MISC"]},{"url":"https://github.com/metalama/Metalama/commit/92c4feecfce86d18fcb007ab6d3a1b4383326a2e","name":"https://github.com/metalama/Metalama/commit/92c4feecfce86d18fcb007ab6d3a1b4383326a2e","tags":["x_refsource_MISC"]},{"url":"https://github.com/metalama/Metalama/releases/tag/release/2025.1.18","name":"https://github.com/metalama/Metalama/releases/tag/release/2025.1.18","tags":["x_refsource_MISC"]},{"url":"https://github.com/metalama/Metalama/releases/tag/release/2026.0.25","name":"https://github.com/metalama/Metalama/releases/tag/release/2026.0.25","tags":["x_refsource_MISC"]},{"url":"https://github.com/metalama/Metalama/releases/tag/release/2026.1.19","name":"https://github.com/metalama/Metalama/releases/tag/release/2026.1.19","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"LOCAL","availabilityImpact":"HIGH","baseScore":8.2,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"LOW","scope":"CHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-377","lang":"en","description":"CWE-377: Insecure Temporary File","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-427","lang":"en","description":"CWE-427: Uncontrolled Search Path Element","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-10-30T20:23:50.882Z"},"source":{"advisory":"GHSA-m6wq-39m7-9xpp","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-10-30T21:21:14.933972Z","id":"CVE-2026-62847","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-30T22:13:12.107Z"}}]}}}