---
id: "CVE-2026-114159"
page: "https://infrastack.ai/live/CVE-2026-114159"
kind: "vulnerability"
aliases: ["CVE-2026-114159", "GHSA-3cgx-w6gm-fqrx"]
title: "Microsoft Security Advisory CVE-2026-114159 - Visual Studio Remote Code Execution Vulnerability"
severity: "high"
cvss: 8.8
epss: null
exploited: false
status: "open"
category: "runtime"
products: [{"name": "Visual Studio 2026 18.11", "fixed": ["18.11.4"], "affected": ">= 18.11.0, < 18.11.4", "ecosystem": "vendor"}, {"name": "Visual Studio 2026 18.12", "fixed": ["18.12.0"], "affected": ">= 18.12.0, < 18.12.0", "ecosystem": "vendor"}, {"name": ".NET 10.0 (Windows)", "fixed": ["10.0.15"], "affected": ">= 10.0.0, < 10.0.15", "ecosystem": "vendor"}, {"name": ".NET 9.0 (Windows)", "fixed": ["9.0.23"], "affected": ">= 9.0.0, < 9.0.23", "ecosystem": "vendor"}, {"name": ".NET 8.0 (Windows)", "fixed": ["8.0.34"], "affected": ">= 8.0.0, < 8.0.34", "ecosystem": "vendor"}, {"name": ".NET 11.0 (Windows)", "fixed": ["11.0.0"], "affected": ">= 11.0.0-preview.1, < 11.0.0", "ecosystem": "vendor"}, {"name": "Microsoft.NETCore.App.Runtime.win-x86", "fixed": ["8.0.34"], "affected": ">= 8.0.0, < 8.0.34", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-x64", "fixed": ["8.0.34"], "affected": ">= 8.0.0, < 8.0.34", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-arm64", "fixed": ["8.0.34"], "affected": ">= 8.0.0, < 8.0.34", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-x86", "fixed": ["9.0.23"], "affected": ">= 9.0.0, < 9.0.23", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-x64", "fixed": ["9.0.23"], "affected": ">= 9.0.0, < 9.0.23", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-arm64", "fixed": ["9.0.23"], "affected": ">= 9.0.0, < 9.0.23", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-x86", "fixed": ["10.0.15"], "affected": ">= 10.0.0, < 10.0.15", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-x64", "fixed": ["10.0.15"], "affected": ">= 10.0.0, < 10.0.15", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-arm64", "fixed": ["10.0.15"], "affected": ">= 10.0.0, < 10.0.15", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-x86", "fixed": ["11.0.0"], "affected": ">= 11.0.0-preview.1, < 11.0.0", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-x64", "fixed": ["11.0.0"], "affected": ">= 11.0.0-preview.1, < 11.0.0", "ecosystem": "nuget"}, {"name": "Microsoft.NETCore.App.Runtime.win-arm64", "fixed": ["11.0.0"], "affected": ">= 11.0.0-preview.1, < 11.0.0", "ecosystem": "nuget"}]
ecosystems: ["nuget", "vendor"]
tags: ["cwe-122", "dotnet", "other", "rce", "runtime", "self-contained-apps", "visual-studio", "windows"]
not_affected_if: ["managed-hosting", "no-pdb-reading", "non-windows"]
published_at: "2026-11-10T19:19:09+00:00"
first_seen_at: "2026-11-10T19:24:44+00:00"
updated_at: "2026-11-11T00:35:56+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-114159", "first_seen_at": "2026-11-10T19:24:44+00:00"}, {"source": "analyst", "url": "https://devblogs.microsoft.com/dotnet/dotnet-and-dotnet-framework-november-2026-servicing-updates/", "first_seen_at": "2026-11-10T23:43:07+00:00", "cites": ["https://devblogs.microsoft.com/dotnet/dotnet-and-dotnet-framework-november-2026-servicing-updates/", "https://nvd.nist.gov/vuln/detail/cve-2026-114159", "https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-notes"]}, {"source": "ghsa", "url": "https://github.com/advisories/GHSA-3cgx-w6gm-fqrx", "first_seen_at": "2026-11-11T00:35:03+00:00"}]
exploit_sources: []
---

# Microsoft Security Advisory CVE-2026-114159 - Visual Studio Remote Code Execution Vulnerability

Link for people: https://infrastack.ai/live/CVE-2026-114159 (this .md is for agents)

An oversized Portable PDB document name can be truncated during allocation, causing a heap out-of-bounds write in the native symbol reader bundled with .NET on Windows. An attacker who gets a crafted PDB read by an affected application could run code in that process.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- vendor:Visual Studio 2026 18.11 affected >= 18.11.0, < 18.11.4 fixed 18.11.4
- vendor:Visual Studio 2026 18.12 affected >= 18.12.0, < 18.12.0 fixed 18.12.0
- vendor:.NET 10.0 (Windows) affected >= 10.0.0, < 10.0.15 fixed 10.0.15
- vendor:.NET 9.0 (Windows) affected >= 9.0.0, < 9.0.23 fixed 9.0.23
- vendor:.NET 8.0 (Windows) affected >= 8.0.0, < 8.0.34 fixed 8.0.34
- vendor:.NET 11.0 (Windows) affected >= 11.0.0-preview.1, < 11.0.0 fixed 11.0.0
- nuget:Microsoft.NETCore.App.Runtime.win-x86 affected >= 8.0.0, < 8.0.34 fixed 8.0.34
- nuget:Microsoft.NETCore.App.Runtime.win-x64 affected >= 8.0.0, < 8.0.34 fixed 8.0.34
- nuget:Microsoft.NETCore.App.Runtime.win-arm64 affected >= 8.0.0, < 8.0.34 fixed 8.0.34
- nuget:Microsoft.NETCore.App.Runtime.win-x86 affected >= 9.0.0, < 9.0.23 fixed 9.0.23
- nuget:Microsoft.NETCore.App.Runtime.win-x64 affected >= 9.0.0, < 9.0.23 fixed 9.0.23
- nuget:Microsoft.NETCore.App.Runtime.win-arm64 affected >= 9.0.0, < 9.0.23 fixed 9.0.23
- nuget:Microsoft.NETCore.App.Runtime.win-x86 affected >= 10.0.0, < 10.0.15 fixed 10.0.15
- nuget:Microsoft.NETCore.App.Runtime.win-x64 affected >= 10.0.0, < 10.0.15 fixed 10.0.15
- nuget:Microsoft.NETCore.App.Runtime.win-arm64 affected >= 10.0.0, < 10.0.15 fixed 10.0.15
- nuget:Microsoft.NETCore.App.Runtime.win-x86 affected >= 11.0.0-preview.1, < 11.0.0 fixed 11.0.0
- nuget:Microsoft.NETCore.App.Runtime.win-x64 affected >= 11.0.0-preview.1, < 11.0.0 fixed 11.0.0
- nuget:Microsoft.NETCore.App.Runtime.win-arm64 affected >= 11.0.0-preview.1, < 11.0.0 fixed 11.0.0

## How to check

- Run `dotnet --list-runtimes` and `dotnet --list-sdks` on Windows machines and compare against the patched versions.
- Check NuGet packages for `Microsoft.NETCore.App.Runtime.win-x64` (and win-x86, win-arm64) in self-contained applications and their version.
- Check Visual Studio 2026 build version against `18.11.4` or `18.12.0`.

## Fix

- .NET 8.0 on Windows: `8.0.34`
- .NET 9.0 on Windows: `9.0.23`
- .NET 10.0 on Windows: `10.0.15`
- .NET 11.0 on Windows: `11.0.0`
- .NET SDK bands: `8.0.134`, `8.0.428`, `9.0.124`, `9.0.321`, `10.0.115`, `10.0.404`, `11.0.100`
- Visual Studio 2026 18.11: `18.11.4`

## Timeline

- 2026-11-10T19:24:44+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-114159
- 2026-11-10T23:43:07+00:00 analyst https://devblogs.microsoft.com/dotnet/dotnet-and-dotnet-framework-november-2026-servicing-updates/ — MSRC page is JS-only and returned nothing; ranges taken from Microsoft CNA data via NVD and the .NET Nov 2026 servicing blog, which lists this CVE. Nothing verified: exact VS fix builds not read on MSRC page. The 18.12 range (18.12.0 < 18.12.0) is odd; treat 18.12.0 as the fixed build. Sibling CVEs 114151/114152/114158/118745 are similar.
- 2026-11-11T00:35:03+00:00 ghsa https://github.com/advisories/GHSA-3cgx-w6gm-fqrx

## Documents

- [advisory] .NET and .NET Framework November 2026 servicing updates https://devblogs.microsoft.com/dotnet/dotnet-and-dotnet-framework-november-2026-servicing-updates/
- [advisory] Maintainer's advisory: github.com https://github.com/dotnet/runtime/security/advisories/GHSA-3cgx-w6gm-fqrx
- [advisory] Maintainer's advisory: api.github.com https://api.github.com/repos/dotnet/runtime/security-advisories/GHSA-3cgx-w6gm-fqrx
- [describes] NVD CVE-2026-114159 (Microsoft CNA data) https://nvd.nist.gov/vuln/detail/cve-2026-114159
- [fix] Visual Studio 2026 release notes (18.11.4 / 18.12.0) https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-notes
- [fix] Release: github.com https://github.com/dotnet/runtime/releases/tag/v9.0.23
- [fix] Release: github.com https://github.com/dotnet/runtime/releases/tag/v10.0.15
- [fix] Release: github.com https://github.com/dotnet/runtime/releases/tag/v8.0.34

## From the sources

## Executive summary

Microsoft is releasing this security advisory to provide information about a vulnerability in .NET. This advisory provides guidance on updating affected applications and components.

An oversized Portable PDB document name can be truncated during allocation and cause a heap out-of-bounds write.

## CVSS Details

- **Version:** 3.1
- **Severity:** High
- **Score:** 8.8 (base score)
- **Vector:** `CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C`
- **Weakness:** CWE-122

## Affected Platforms

- **Platforms:** Windows
- **Architectures:** x86, x64, Arm64

## <a name="affected-packages"></a>Affected Packages

Microsoft.DiaSymReader.Native components bundled with the affected .NET versions listed below are affected when initializing the native reader with a Portable PDB containing an oversized document name. The Windows runtime's native stack-trace reader can reach this initialization through its native-reader fallback.

### .NET on Windows

Product | Affected version | Patched version
--- | --- | ---
.NET 8.0 installed on Windows | >= 8.0.0, < 8.0.34 | 8.0.34
.NET 9.0 installed on Windows | >= 9.0.0, < 9.0.23 | 9.0.23
.NET 10.0 installed on Windows | >= 10.0.0, < 10.0.15 | 10.0.15
.NET 11.0 installed on Windows | >= 11.0.0-preview.1, < 11.0.0 | 11.0.0

### Windows runtime packages for self-contained applications

The following packages deliver the affected .NET native reader. Exposure requires the PDB-reading operation described above; the presence of the reader does not make every application or symbol-reading path vulnerable.

Package | Affected version | Patched version
--- | --- | ---
[Microsoft.NETCore.App.Runtime.win-x86](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x86) | >= 8.0.0, < 8.0.34 | 8.0.34
[Microsoft.NETCore.App.Runtime.win-x64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x64) | >= 8.0.0, < 8.0.34 | 8.0.34
[Microsoft.NETCore.App.Runtime.win-arm64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-arm64) | >= 8.0.0, < 8.0.34 | 8.0.34
[Microsoft.NETCore.App.Runtime.win-x86](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x86) | >= 9.0.0, < 9.0.23 | 9.0.23
[Microsoft.NETCore.App.Runtime.win-x64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x64) | >= 9.0.0, < 9.0.23 | 9.0.23
[Microsoft.NETCore.App.Runtime.win-arm64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-arm64) | >= 9.0.0, < 9.0.23 | 9.0.23
[Microsoft.NETCore.App.Runtime.win-x86](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x86) | >= 10.0.0, < 10.0.15 | 10.0.15
[Microsoft.NETCore.App.Runtime.win-x64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x64) | >= 10.0.0, < 10.0.15 | 10.0.15
[Microsoft.NETCore.App.Runtime.win-arm64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-arm64) | >= 10.0.0, < 10.0.15 | 10.0.15
[Microsoft.NETCore.App.Runtime.win-x86](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x86) | >= 11.0.0-preview.1, < 11.0.0 | 11.0.0
[Microsoft.NETCore.App.Runtime.win-x64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-x64) | >= 11.0.0-preview.1, < 11.0.0 | 11.0.0
[Microsoft.NETCore.App.Runtime.win-arm64](https://www.nuget.org/packages/Microsoft.NETCore.App.Runtime.win-arm64) | >= 11.0.0-preview.1, < 11.0.0 | 11.0.0

### Windows SDK updates

The following SDK updates include the corrected .NET runtime. Update each installed Windows SDK feature band:

Product | Affected version | Patched version
--- | --- | ---
.NET SDK 8.0.1xx on Windows | >= 8.0.100-0, < 8.0.134 | 8.0.134
.NET SDK 8.0.4xx on Windows | >= 8.0.400-0, < 8.0.428 | 8.0.428
.NET SDK 9.0.1xx on Windows | >= 9.0.100-0, < 9.0.124 | 9.0.124
.NET SDK 9.0.3xx on Windows | >= 9.0.300-0, < 9.0.321 | 9.0.321
.NET SDK 10.0.1xx on Windows | >= 10.0.100-0, < 10.0.115 | 10.0.115
.NET SDK 10.0.4xx on Windows | >= 10.0.400-0, < 10.0.404 | 10.0.404
.NET SDK 11.0.1xx on Windows | >= 11.0.100-preview.1, < 11.0.100 | 11.0.100

## Advisory FAQ

### <a name="how-affected"></a>How do I know if I am affected?

Applications using Microsoft.DiaSymReader.Native components bundled with the affected .NET versions listed above to initialize the native reader with a Portable PDB containing an oversized document name are exposed on Windows x86, x64, and Arm64. The Windows runtime's native stack-trace reader can reach this initialization when PE metadata selects its native-reader fallback. See [affected packages](#affected-packages) for the affected .NET products on Windows.

### <a name="how-fix"></a>How do I fix the issue?

Update affected .NET installations and each installed SDK feature band to the versions listed above or later. If an SDK was installed through Visual Studio, update Visual Studio as well.

For applications that deploy their own .NET runtime, including self-contained applications, update the runtime used to build the application, rebuild, and redeploy. Updating a machine-wide runtime does not replace an application's embedded runtime. Restart processes that have loaded the affected native reader.


## Announcement

Announcement for this issue can be found at https://github.com/dotnet/announcements/issues/521

## Other Information

### Reporting Security Issues

If you have found a potential security issue in a supported version of .NET, please report it to the Microsoft Security Response Center (MSRC) via the [MSRC Researcher Portal](https://msrc.microsoft.com/report/vulnerability/new). Further information can be found in the MSRC [Report an Issue FAQ](https://www.microsoft.com/msrc/faqs-report-an-issue).

Security reports made through MSRC may qualify for the Microsoft .NET Bounty. Details of the Microsoft .NET Bounty Program including terms and conditions are at https://aka.ms/corebounty.

### Support

You can ask questions about this issue on GitHub in the .NET GitHub organization. The main repos are located at https://github.com/dotnet/runtime. The Announcements repo (https://github.com/dotnet/Announcements) will contain this bulletin as an issue and will include a link to a discussion issue. You can ask questions in the linked discussion issue.

### Disclaimer

The information provided in this advisory is provided "as is" without warranty of any kind. Microsoft disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. In no event shall Microsoft Corporation or its suppliers be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages, even if Microsoft Corporation or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for consequential or incidental damages so the foregoing limitation may not apply.

### External Links

[CVE-2026-114159](https://www.cve.org/CVERecord?id=CVE-2026-114159)

### Acknowledgements

- [h4urek](https://x.com/h4urek) with [secsys lab](https://secsys.fudan.edu.cn/)

### Revisions

V1.0 (November 10, 2026): Advisory published.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
