Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-50649

CVE-2026-50649: .NET Deserialization RCE Vulnerability

CVE-2026-50649 is a deserialization of untrusted data vulnerability in .NET that enables unauthorized attackers to execute arbitrary code locally. This article covers the technical details, affected versions, and mitigation.

Published:

CVE-2026-50649 Overview

CVE-2026-50649 is a deserialization of untrusted data vulnerability affecting Microsoft .NET. An unauthorized attacker can execute code locally on a vulnerable system when a user is convinced to process a malicious payload. The flaw is categorized under CWE-502: Deserialization of Untrusted Data and requires user interaction to trigger the exploit path.

Microsoft published details in the Microsoft Security Update CVE-2026-50649 advisory. The vulnerability carries a local attack vector with high impact to confidentiality, integrity, and availability.

Critical Impact

Successful exploitation allows an attacker to execute arbitrary code in the security context of the current user, enabling further compromise of the host.

Affected Products

  • Microsoft .NET (see the Microsoft advisory for specific affected versions)
  • Applications built on affected .NET runtime and SDK versions
  • Windows systems running vulnerable .NET components

Discovery Timeline

  • 2026-07-14 - CVE-2026-50649 published to the National Vulnerability Database
  • 2026-07-15 - Last updated in the NVD database

Technical Details for CVE-2026-50649

Vulnerability Analysis

CVE-2026-50649 stems from insecure deserialization within .NET. When the runtime deserializes attacker-controlled data without validating the object graph, an adversary can craft a payload that instantiates gadget chains during reconstruction. Executing those gadgets results in local code execution under the identity of the running process.

The attack requires user interaction, which typically means opening a malicious file, loading a crafted project, or running an application that consumes untrusted serialized input. Because the vulnerability executes code with the privileges of the current user, downstream impact depends on the account context and any additional escalation techniques the attacker chains together.

Root Cause

The root cause is unsafe handling of serialized objects [CWE-502]. Legacy .NET serializers such as BinaryFormatter, NetDataContractSerializer, SoapFormatter, and ObjectStateFormatter reconstruct arbitrary types based on the serialized stream. Without a type allow-list or SerializationBinder enforcement, an attacker can direct the deserializer to load classes whose constructors or callbacks execute code.

Attack Vector

The attack vector is local and requires user interaction. An attacker delivers a crafted serialized blob through a file, package, project, or application input consumed by a vulnerable .NET process. When the target application deserializes the payload, gadget chains execute code in the process context. Common delivery paths include malicious documents, developer project files, and third-party plug-ins that trust serialized data.

No verified public proof-of-concept code is available. See the Microsoft Security Update CVE-2026-50649 advisory for vendor-authored technical detail.

Detection Methods for CVE-2026-50649

Indicators of Compromise

  • Unexpected child processes spawned by .NET host processes such as dotnet.exe, devenv.exe, or custom application binaries
  • Creation or execution of serialized payload files (.bin, .soap, .dat) followed by immediate process activity
  • Outbound network connections initiated by .NET applications shortly after opening untrusted files

Detection Strategies

  • Hunt for use of legacy deserialization APIs (BinaryFormatter.Deserialize, NetDataContractSerializer, SoapFormatter) in first-party and third-party code inventories
  • Alert on .NET processes loading uncommon assemblies or invoking System.Diagnostics.Process.Start after handling file input
  • Correlate user-opened attachments or downloads with subsequent code execution events in the same process tree

Monitoring Recommendations

  • Enable Windows Event Tracing for .NET (ETW) and Sysmon Event ID 1 (process creation) and 7 (image load) on developer and end-user endpoints
  • Monitor Microsoft Defender and endpoint telemetry for deserialization gadget indicators such as suspicious use of System.Windows.Data.ObjectDataProvider
  • Track patch compliance for .NET runtimes and SDKs across the estate using inventory tooling

How to Mitigate CVE-2026-50649

Immediate Actions Required

  • Apply the Microsoft security update referenced in the MSRC advisory for CVE-2026-50649 to all affected .NET installations
  • Inventory applications that deserialize untrusted input and prioritize patching hosts where those applications run
  • Restrict user permissions so that code executed under a compromised process has limited scope

Patch Information

Microsoft has released updates addressing CVE-2026-50649. Review the Microsoft Security Update Guide for the specific runtime, SDK, and Windows update packages that apply to your environment. Update both standalone .NET runtimes and applications that ship a private copy of the runtime.

Workarounds

  • Avoid opening untrusted files or projects with .NET-based applications until patches are deployed
  • Replace BinaryFormatter and other unsafe serializers with System.Text.Json or DataContractSerializer using strict type binding
  • Enforce a SerializationBinder that allow-lists expected types when legacy serializers cannot be removed
  • Apply application control policies (WDAC, AppLocker) to block execution of unexpected binaries spawned by .NET processes
bash
# Configuration example: disable BinaryFormatter in .NET 5+ project file
# Add the following to your .csproj to prevent BinaryFormatter usage at runtime
<PropertyGroup>
  <EnableUnsafeBinaryFormatterSerialization>false</EnableUnsafeBinaryFormatterSerialization>
</PropertyGroup>

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.