CVE-2026-62847
Metalama allows local code execution through DLL planting in shared temporary directories
Published Oct 14, 2026 · updated Oct 14, 2026
## Summary Metalama loaded and executed compile-time assemblies, auxiliary executable tools, and embedded helper assemblies from predictable temporary directories. On Linux and macOS the default cache location was the world-writable system temporary directory ( , i.e. ), and previously-generated artifacts were trusted based on the presence of a sentinel/ marker file rather than on any integrity verification. A local, unprivileged user on a shared machine or CI/build agent can pre-create the deterministic cache directory structure and plant a malicious DLL together with the matching sentinel file. When a higher-privileged user (or build/service account) subsequently runs a build, Metalama finds the sentinel, skips regeneration, and loads and executes the attacker-supplied assembly inside the compiler / IDE / MSBuild process. Affected load-and-execute paths: - the cache of compile-time assemblies that Metalama generates from your aspects; - auxiliary executable tools that Metalama extracts to a local directory and then launches; - embedded .NET helper assemblies that Metalama extracts to a local directory and loads into the build / IDE process. ## Impact Arbitrary code execution in the security context of the building user — i.e. a local privilege escalation across user accounts on shared POSIX systems (multi-user developer machines, CI/build agents). The attacker obtains code execution as the victim without holding the victim's privileges, and can read source/secrets, tamper with build output (supply-chain injection), or disrupt builds. ## Affected configurations - **Linux and macOS, default configuration — affected.** The shipped default uses the world-writable system temp directory. - **Windows, default configuration — not affected.** The default per-user temporary directory is protected by OS ACLs, so cross-user planting is not possible. - The environment variable is a deployer-controlled override and is **out of scope**: pointing it at an insecure (e.g. world-wri
Timeline
Detection, updates, and resolution for this record.
Oct 14, 2026 · GitHub Advisory Database
Detected
## Summary Metalama loaded and executed compile-time assemblies, auxiliary executable tools, and embedded helper assemblies from predictable temporary directories. On Linux and macOS the default cache location was the world-writable system temporary directory ( , i.e. ), and previously-generated artifacts were trusted based on the presence of a sentinel/ marker file rather than on any integrity ve
Oct 14, 2026 · GitHub Advisory Database
Fix available
Metalama.Framework fixed in 2026.1.19; Metalama.Tool fixed in 2026.1.19; Metalama.Framework fixed in 2025.1.18; Metalama.Tool fixed in 2025.1.18
Oct 14, 2026 · GitHub Advisory Database
Fix available
Metalama.Framework fixed in 2026.1.19
Oct 14, 2026 · GitHub Advisory Database
Fix available
Metalama.Tool fixed in 2026.1.19
Oct 14, 2026 · GitHub Advisory Database
Fix available
Metalama.Framework fixed in 2025.1.18
Oct 14, 2026 · GitHub Advisory Database
Fix available
Metalama.Tool fixed in 2025.1.18
Oct 14, 2026 · GitHub Advisory Database
Fix available
Metalama.Tool fixed in 2026.0.25
Oct 14, 2026 · GitHub Advisory Database
Fix available
Metalama.Framework fixed in 2026.0.25
Oct 14, 2026 · GitHub Advisory Database
Updated
## Summary Metalama loaded and executed compile-time assemblies, auxiliary executable tools, and embedded helper assemblies from predictable temporary directories. On Linux and macOS the default cache location was the world-writable system temporary directory ( , i.e. ), and previously-generated artifacts were trusted based on the presence of a sentinel/ marker file rather than on any integrity ve
Affected
- NuGet Metalama.Framework0 → 2025.1.18
- NuGet Metalama.Framework2026.0.0-preview → 2026.0.25
- NuGet Metalama.Framework2026.1.0-preview → 2026.1.19
- NuGet Metalama.Tool0 → 2025.1.18
- NuGet Metalama.Tool2026.0.0-preview → 2026.0.25
- NuGet Metalama.Tool2026.1.0-preview → 2026.1.19
Sources
- CVE.orgCVE-2026-62847
Official CVE identifier
cve.org - GitHub Advisory DatabaseGHSA-m6wq-39m7-9xpp
GitHub Advisory Database record mirrored by OSV.
github.com - OSV.devGHSA-m6wq-39m7-9xpp
Metalama allows local code execution through DLL planting in shared temporary directories
osv.dev