AI for Security Summit: Join Figma, Perplexity & Wiz. [Register]

CVE-2026-50646
C# vulnerability analysis and mitigation

Overview

CVE-2026-50646 is a protection mechanism failure vulnerability in Microsoft .NET Framework and .NET that allows an unauthorized local attacker to execute arbitrary code. Disclosed on July 14, 2026, as part of Microsoft's Patch Tuesday release, it affects .NET Framework versions 3.5, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, and 4.8.1; .NET 8.0 (before 8.0.29) and .NET 9.0 (before 9.0.18); Visual Studio 2022 (versions 17.12.x before 17.12.22 and 17.14.x before 17.14.36); and Visual Studio 2026 (version 18.7.x before 18.7.4). It carries a CVSS v3.1 base score of 7.8 (High) (Microsoft MSRC, Feedly).

Technical details

The vulnerability is rooted in a protection mechanism failure (CWE-693), compounded by deserialization of untrusted data (CWE-502) and reliance on untrusted inputs in a security decision (CWE-807). The attack vector is local, requiring user interaction but no privileges, suggesting the vulnerability may be triggered when a user opens or processes a maliciously crafted file or input that causes the .NET runtime to deserialize untrusted data while bypassing security controls. The associated CAPEC patterns include Object Injection (CAPEC-586) and Using Malicious Files (CAPEC-17), consistent with a scenario where an attacker delivers a crafted payload that exploits the deserialization path to achieve code execution (Microsoft MSRC, Feedly).

Impact

Successful exploitation allows an unauthenticated attacker with local access to execute arbitrary code with the privileges of the current user, resulting in high confidentiality, integrity, and availability impact on the affected system. The scope is limited to the compromised host (unchanged scope), but code execution at user level could enable privilege escalation, data theft, or installation of persistent malware depending on the user's permissions. Systems running vulnerable versions of .NET Framework, .NET 8/9, or Visual Studio are at risk (Microsoft MSRC, Feedly).

Exploitability

As of the time of disclosure, there is no public proof-of-concept exploit and no evidence of active in-the-wild exploitation (Feedly). The SSVC assessment from NVD indicates exploitation is "none" and the attack is not automatable, reflecting the requirement for user interaction. The EPSS score is approximately 0.0158 (low probability of exploitation in the near term). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. A GitHub commit to the ysonet deserialization tooling repository was observed shortly after disclosure, which may indicate early research interest (Feedly).

Exploitation steps

  1. Craft a malicious payload: Using a .NET deserialization gadget chain tool (e.g., a fork of ysoserial.net/ysonet), generate a serialized object payload targeting a vulnerable .NET Framework or .NET runtime deserialization sink that bypasses the protection mechanism.
  2. Deliver the payload: Package the payload into a file format that a target user is likely to open (e.g., a document, archive, or application file) and deliver it via phishing, a malicious download, or a shared network location.
  3. Trigger user interaction: Induce the target user to open or process the malicious file on a system running a vulnerable version of .NET Framework (3.5–4.8.1), .NET 8.0 (<8.0.29), .NET 9.0 (<9.0.18), or an affected Visual Studio version.
  4. Exploit deserialization: The .NET runtime deserializes the untrusted data, the protection mechanism fails to block the malicious object graph, and the gadget chain executes arbitrary code in the context of the current user.
  5. Achieve objective: With code execution as the current user, the attacker can drop additional payloads, establish persistence, exfiltrate data, or attempt privilege escalation depending on the user's permissions (Feedly).

Indicators of compromise

  • Process: Unexpected child processes spawned by .NET runtime host processes (e.g., dotnet.exe, mscorsvw.exe) such as cmd.exe, powershell.exe, or wscript.exe.
  • File System: Newly created or modified files in user-writable directories (e.g., %TEMP%, %APPDATA%) shortly after opening an untrusted file; unexpected DLLs or executables dropped in .NET application directories.
  • Logs: Windows Event Log entries (Event ID 4688) showing unusual process creation chains originating from .NET host processes; application crash logs or .NET runtime exceptions related to deserialization failures preceding successful exploitation.
  • Network: Outbound connections from .NET application processes to unexpected external IP addresses or domains, potentially indicating post-exploitation C2 activity.
  • Registry: New or modified Run/RunOnce keys or scheduled tasks created under the current user's context following interaction with a suspicious file (Feedly).

Mitigation and workarounds

Microsoft released patches on July 14, 2026 (Patch Tuesday). Organizations should update to the following fixed versions: .NET 8.0.29, .NET 9.0.18, .NET Framework 4.7.x (build 4.7.4143.0 or later), .NET Framework 4.8 (build 4.8.4803.0 or later), .NET Framework 4.8.1 (build 4.8.9339.0 or later), Visual Studio 2022 17.12.22 or 17.14.36, and Visual Studio 2026 18.7.4. Red Hat has also issued advisories (RHSA-2026:42145, RHSA-2026:41899) for affected .NET packages on Linux. As no configuration-based workaround has been published, patching is the only recommended remediation; prioritize systems where untrusted users can deliver files to be processed by .NET applications (Microsoft MSRC, .NET Blog, Red Hat Advisory).

Community reactions

The vulnerability was covered as part of Microsoft's record-breaking July 2026 Patch Tuesday, which addressed 570 flaws including three zero-days, drawing significant attention from the security community (BleepingComputer). Rapid7 included CVE-2026-50646 in their Patch Tuesday analysis, noting the breadth of .NET and Visual Studio products affected (Rapid7 Blog). The SANS Internet Storm Center also noted the patch in their July 2026 diary (SANS ISC). No significant controversy or researcher-specific commentary beyond standard patch coverage was observed.

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

RHEL / CentOS

Fixed

RHEL 8

:appstream:dotnet10.0-0:10.0.110-1.el8_10.src

Fixed

RHEL 9

:appstream:dotnet8.0-0:8.0.130-1.el9_4.src

Fixed

RHEL 10

dotnet8.0-0:8.0.130-1.el10_0.src

Fixed

Alpine

Fixed

edge

dotnet10-runtime: 10.0.10-r0, 8.0.29-r0, 9.0.18-r0

Fixed

v3.22

dotnet8-runtime: 8.0.29-r0, 9.0.18-r0

Fixed

v3.23

dotnet10-runtime: 10.0.10-r0, 8.0.29-r0, 9.0.18-r0

Fixed

SourceThis report was generated using AI

Related C# vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-57578CRITICAL9.2
  • C# logoC#
  • DotVVM
NoYesSep 14, 2026
CVE-2026-71328HIGH8.8
  • C# logoC#
  • cpe:2.3:a:microsoft:visual_studio_2022
NoYesSep 08, 2026
CVE-2026-57577HIGH8.2
  • C# logoC#
  • DotVVM
NoYesSep 14, 2026
CVE-2026-54632HIGH7.5
  • C# logoC#
  • SIPSorcery
NoYesSep 14, 2026
CVE-2026-57581MEDIUM5.3
  • C# logoC#
  • DotVVM
NoYesSep 14, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management