Metalama: Local code execution via DLL planting in temporary directories
Summary
Metalama.Framework and Metalama.Tool on Linux and macOS load and execute compile-time assemblies and helper tools from predictable directories under the world-writable /tmp location. A local unprivileged user on a shared machine or build agent can pre-create the expected directory structure and plant a malicious DLL, which is then executed by the compiler, IDE or MSBuild process of a higher-privileged user. This can lead to privilege escalation across users, access to source code and secrets, tampering with build output, or disrupted builds. Windows default per-user temporary directories are not affected.
Affected
- Metalama.Framework and Metalama.Tool before 2025.1.18
- 2025.2.0-preview to 2025.2.5-rc (listed by some sources, to be verified against the vendor advisory)
- 2026.0.0-preview before 2026.0.25
- 2026.1.0-preview before 2026.1.19
- Linux and macOS only
Fixed in
- 2025.1.18
- 2026.0.25
- 2026.1.19
Workaround
- Unknown. No vendor-documented workaround found; upgrading is the vendor's remedy.
Exploitation
- No evidence of exploitation in the wild found.
- No public proof-of-concept found.
- CISA SSVC: Exploitation none, Automatable no, Technical Impact total.
Our recommendation
- Upgrade Metalama.Framework and Metalama.Tool to 2025.1.18, 2026.0.25 or 2026.1.19 on developer machines and build agents on Linux and macOS.
- Check whether builds run on shared Linux or macOS hosts or CI runners where several accounts build, and restrict this where possible.
- Verify the 2025.2 preview range against the vendor advisory and upgrade preview builds to a supported branch.
- After upgrading, consider removing old Metalama cache directories under the temporary path after confirming the paths with the vendor.
- Check the Metalama Visual Studio extension version as well (see CVE-2026-62848).
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- GitHub Security Advisory GHSA-m6wq-39m7-9xpp github.com
- Metalama release 2025.1.18 github.com
- Metalama release 2026.0.25 github.com
- Metalama release 2026.1.19 github.com
- Fix commit 09911349 github.com
- Pull request #1650 github.com
- OSV GHSA-m6wq-39m7-9xpp osv.dev
- GitLab advisory CVE-2026-62847 (metalama.tool) advisories.gitlab.com
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 14:27.
Original description (NVD)
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.
NVD references (7)
- https://github.com/metalama/Metalama/commit/09911349a916e82194b1cfaa6d0a38acad928fc9
- https://github.com/metalama/Metalama/commit/92c4feecfce86d18fcb007ab6d3a1b4383326a2e
- https://github.com/metalama/Metalama/pull/1650
- 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
- https://github.com/metalama/Metalama/security/advisories/GHSA-m6wq-39m7-9xpp
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
