CVE-2026-62848: Local Arbitrary Code Execution via Unsafe Deserialization in Metalama Named Pipe IPC
Vulnerability ID: CVE-2026-62848
CVSS Score: 7.3
Published: 2026-11-03
CVE-2026-62848 (GHSA-h26j-4vp7-x9w2) is a high-severity unsafe deserialization vulnerability in Metalama, a Roslyn-based meta-programming and code generation framework for C#. The flaw resides in the inter-process communication (IPC) channel used by Metalama within Microsoft Visual Studio. Across versions 2023.0 through 2026.1.18, the framework utilized either Newtonsoft.Json with TypeNameHandling.All or MessagePack with TypelessObjectResolver over local Windows named pipes without enforcing a strict type allow-list. Because the named pipes use predictable identifiers, any local process running under the same Windows user session can connect to the endpoint and transmit crafted serialized payloads, resulting in arbitrary Common Language Runtime (CLR) type instantiation and code execution within the host Visual Studio process.
TL;DR
Metalama versions prior to 2025.1.18, 2026.0.25, and 2026.1.19 contain an unsafe deserialization flaw in their local Windows named pipe IPC channels. Local processes running in the same user session can connect to predictable named pipes and send crafted Newtonsoft.Json or MessagePack payloads to achieve arbitrary code execution inside the Visual Studio (devenv.exe) process.
⚠️ Exploit Status: POC
Technical Details
- Vulnerability Type: Deserialization of Untrusted Data (CWE-502 / CWE-913)
- Attack Vector: Local Windows Named Pipe IPC (AV:L)
- CVSS v3.1 Score: 7.3 High (CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H)
- EPSS Score: 0.19% (8.31st Percentile)
- Security Impact: Arbitrary Code Execution within Visual Studio (devenv.exe)
- Vulnerable Components: JsonSerializationBinder (Newtonsoft.Json) & BaseEndpoint (MessagePack)
- CISA KEV Status: Not Listed
Affected Systems
- Metalama Framework
- Metalama + PostSharp Visual Studio Extension
- Metalama Standalone Visual Studio Extension (Deprecated)
- Caravela Visual Studio Extension (Deprecated)
- Metalama Framework: >= 2023.0.101-rc, < 2025.1.18 (Fixed in:
2025.1.18) - Metalama Framework: >= 2025.2.0-preview, <= 2025.2.5-rc (Fixed in:
2026.0.25) - Metalama Framework: >= 2026.0.0-preview, < 2026.0.25 (Fixed in:
2026.0.25) - Metalama Framework: >= 2026.1.0-preview, < 2026.1.19 (Fixed in:
2026.1.19) - Metalama + PostSharp Visual Studio Extension: >= 2024.1, <= 2026.1.4 (Fixed in:
2026.1.5)
Code Analysis
Commit: d97f52e
Enforce [RpcContract] attribute allow-list on MessagePack TypelessObjectResolver in BaseEndpoint via RpcContractMessagePackOptions.
Commit: 5b4ced2
Backport fix to 2025.1 and 2026.0 branches by enforcing JsonSerializationAllowList in JsonSerializationBinder.BindToType.
Mitigation Strategies
- Upgrade Metalama NuGet packages to patched versions that enforce strict per-type allow-lists during IPC deserialization.
- Update the Metalama + PostSharp Visual Studio extension and remove deprecated standalone extensions (Metalama, Caravela).
- Monitor Windows Named Pipe connection events (Sysmon Event ID 18) for non-Visual Studio processes connecting to Metalama_* pipes.
Remediation Steps:
- Update Metalama framework NuGet packages to 2025.1.18, 2026.0.25, or 2026.1.19 depending on your release branch.
- Open Visual Studio Extension Manager and update the 'Metalama + PostSharp' extension to version 2026.1.5 or later.
- Check installed extensions for deprecated 'Metalama' (standalone) or 'Caravela' extensions and uninstall them.
- Restart Visual Studio (devenv.exe) and terminate any lingering ServiceHub.RoslynCodeAnalysisService.exe processes.
References
- GitHub Security Advisory GHSA-h26j-4vp7-x9w2
- Metalama Pull Request #1651
- Commit 5b4ced29f2b25631cc2e44d05b0fd5fe838b6cbe (Newtonsoft.Json Allow-List)
- Commit d97f52e1b53ffe4176b2b05c56ffdf1ccd2f53a9 (MessagePack RpcContract Allow-List)
- Metalama Release 2025.1.18
- Metalama Release 2026.0.25
- Metalama Release 2026.1.19
- National Vulnerability Database - CVE-2026-62848
- CVE.org Record - CVE-2026-62848
Read the full report for CVE-2026-62848 on our website for more details including interactive diagrams and full exploit analysis.
