CVE-2023-36794: Visual Studio Remote Code Execution Vulnerability

Published Sep 12, 2023
·
Updated

Microsoft Security Advisory CVE-2023-36794: .NET Remote Code Execution Vulnerability

<a name="executive-summary"></a>Executive summary

Microsoft is releasing this security advisory to provide information about a vulnerability in .NET 7.0 and .NET 6.0. This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability.

A vulnerability exists in Microsoft.DiaSymReader.Native.amd64.dll when reading a corrupted PDB file which may lead to remote code execution. This issue only affects Windows systems.

Note: The vulnerabilities CVE-2023-36792, CVE-2023-36793, CVE-2023-36792, CVE-2023-36796 are all resolved by a single patch. Get affected software to resolve all of them.

Discussion

Discussion for this issue can be found at https://github.com/dotnet/runtime/issues/91946

<a name="mitigation-factors"></a>Mitigation factors

Microsoft has not identified any mitigating factors for this vulnerability.

<a name="affected-software"></a>Affected software

Any .NET 7.0 application running on .NET 7.0.10 or earlier. Any .NET 6.0 application running on .NET 6.0.21 or earlier.

If your application uses the following package versions, ensure you update to the latest version of .NET.

<a name=".NET 7"></a>.NET 7

Package name | Affected version | Patched version ------------ | ---------------- | ------------------------- Microsoft.NETCore.App.Runtime.win-arm64 | >= 7.0.0, <= 7.0.10 | 7.0.11 Microsoft.NETCore.App.Runtime.win-x64 | >= 7.0.0, <= 7.0.10 | 7.0.11 Microsoft.NETCore.App.Runtime.win-x86 | >= 7.0.0, <= 7.0.10 | 7.0.11

<a name=".NET 6"></a>.NET 6

Package name | Affected version | Patched version ------------ | ---------------- | ------------------------- Microsoft.NETCore.App.Runtime.win-arm64 | >= 6.0.0, <= 6.0.21 | 6.0.22 Microsoft.NETCore.App.Runtime.win-x64 | >= 6.0.0, <= 6.0.21 | 6.0.22 Microsoft.NETCore.App.Runtime.win-x86 | >= 6.0.0, <= 6.0.21 | 6.0.22

Advisory FAQ

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

If you have a runtime or SDK with a version listed, or an affected package listed in affected software, you're exposed to the vulnerability.

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

To fix the issue please install the latest version of .NET 6.0 or .NET 7.0. If you have installed one or more .NET SDKs through Visual Studio, Visual Studio will prompt you to update Visual Studio, which will also update your .NET SDKs. If you are using one of the affected packages, please update to the patched version listed above. If you have .NET 6.0 or greater installed, you can list the versions you have installed by running the dotnet --info command. You will see output like the following;

.NET Core SDK (reflecting any global.json):

Version: 6.0.300 Commit: 8473146e7d

Runtime Environment:

OS Name: Windows OS Version: 10.0.18363 OS Platform: Windows RID: win10-x64 Base Path: C:\Program Files\dotnet\sdk\6.0.300\

Host (useful for support):

Version: 6.0.5 Commit: 8473146e7d

.NET Core SDKs installed:

6.0.300 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:

Microsoft.AspNetCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.NETCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.WindowsDesktop.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET Core runtimes or SDKs: https://aka.ms/dotnet-download

If you're using .NET 7.0, you should download and install Runtime 7.0.11 or SDK 7.0.111 (for Visual Studio 2022 v17.4) from https://dotnet.microsoft.com/download/dotnet-core/7.0. If you're using .NET 6.0, you should download and install Runtime 6.0.22 or SDK 6.0.317 (for Visual Studio 2022 v17.2) from https://dotnet.microsoft.com/download/dotnet-core/6.0.

.NET 6.0 and and .NET 7.0 updates are also available from Microsoft Update. To access this either type "Check for updates" in your Windows search, or open Settings, choose Update & Security and then click Check for Updates.

Once you have installed the updated runtime or SDK, restart your apps for the update to take effect.

Additionally, if you've deployed self-contained applications targeting any of the impacted versions, these applications are also vulnerable and must be recompiled and redeployed.

Other Information

Reporting Security Issues

If you have found a potential security issue in .NET 6.0 or .NET 7.0, please email details to secure@microsoft.com. Reports may qualify for the Microsoft .NET Core & .NET 5 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 and https://github.com/dotnet/aspnet/. 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-2023-36794

Revisions

V1.0 (September 12, 2023): Advisory published.

Version 1.0

Last Updated 2023-09-12

Other sources

Visual Studio Remote Code Execution Vulnerability

— Microsoft

Affected Software

154 affected componentsFixes available
Microsoft .NET 6.0
nuget/microsoft.netcore.app.runtime.win-x86>=7.0.0<=7.0.10
7.0.11
nuget/microsoft.netcore.app.runtime.win-x86>=6.0.0<=6.0.21
6.0.22
nuget/microsoft.netcore.app.runtime.win-x64>=6.0.0<=6.0.21
6.0.22
nuget/microsoft.netcore.app.runtime.win-x64>=7.0.0<=7.0.10
7.0.11
nuget/microsoft.netcore.app.runtime.win-arm64>=6.0.0<=6.0.21
6.0.22
nuget/microsoft.netcore.app.runtime.win-arm64>=7.0.0<=7.0.10
7.0.11
Microsoft .NET 7.0
Microsoft PowerShell 7.2
Microsoft Visual Studio 2019 (includes 16.0 - 16.10)=16.11
Microsoft Visual Studio 2017 (includes 15.0 - 15.8)=15.9
Microsoft .NET Framework=3.0
Microsoft .NET Framework=4.6.2
Microsoft .NET Framework=2.0
Microsoft .NET Framework=4.8
Microsoft .NET Framework=4.6.2, =4.7, =4.7.1, =4.7.2
Microsoft .NET Framework=4.6.2, =4.7, =4.7.1, =4.7.2
Microsoft .NET Framework=4.8
Microsoft .NET Framework=3.5
Microsoft .NET Framework=4.6.2, =4.7, =4.7.1, =4.7.2
Microsoft .NET Framework=3.5.1
Microsoft .NET Framework=3.5
Microsoft .NET Framework=4.8
Microsoft .NET Framework=3.5, =4.8
Microsoft .NET Framework=4.8
Microsoft .NET Framework=3.5, =4.7.2
Microsoft .NET Framework=3.5, =4.8.1
Microsoft .NET Framework=3.5, =4.8
Microsoft .NET Framework=3.5, =4.8.1
Microsoft .NET Framework=3.5, =4.8.1
Microsoft .NET Framework=3.5, =4.8
Microsoft .NET Framework=3.5, =4.8.1
Microsoft .NET Framework=3.5, =4.8.1
Microsoft .NET Framework=3.5, =4.8
Microsoft .NET Framework=3.5, =4.8
Microsoft .NET Framework=3.5.1
Microsoft Windows Server 2008=r2-sp1
Microsoft .NET Framework=3.5
Microsoft Windows Server 2012
Microsoft Windows Server 2012=r2
Microsoft .NET Framework=2.0-sp2
Microsoft .NET Framework=3.0-sp2
Microsoft .NET Framework=4.6.2
Microsoft Windows Server 2008=sp2
Microsoft .NET Framework=4.8
Microsoft Windows 10 1809
Microsoft Windows 10 21h2
Microsoft Windows 10 22h2
Microsoft Windows 11 21h2
Microsoft Windows Server 2019
Microsoft Windows Server 2022
Microsoft .NET Framework=4.8.1
Microsoft Windows 11 22h2
Microsoft Windows 10 1607
Microsoft Windows Server 2016
Microsoft .NET Framework=4.7.2
Microsoft .NET Framework=4.7
Microsoft .NET Framework=4.7.1
Microsoft .NET=6.0.0
Microsoft .NET=7.0.0
Microsoft Visual Studio 2017>=15.0<15.9.57
Microsoft Visual Studio 2019>=16.0<16.11.30
Microsoft Visual Studio 2022>=17.2<17.2.19
Microsoft Visual Studio 2022>=17.4<17.4.11
Microsoft Visual Studio 2022>=17.7<17.7.4
All of the following
Microsoft .NET Framework=3.5.1
Microsoft Windows Server 2008=r2-sp1
All of the following
Microsoft .NET Framework=3.5
Any of the following
Microsoft Windows Server 2012
Microsoft Windows Server 2012=r2
All of the following
Any of the following
Microsoft .NET Framework=2.0-sp2
Microsoft .NET Framework=3.0-sp2
Microsoft .NET Framework=4.6.2
Microsoft Windows Server 2008=sp2
All of the following
Any of the following
Microsoft .NET Framework=3.5
Microsoft .NET Framework=4.8
Any of the following
Microsoft Windows 10 1809
Microsoft Windows 10 21h2
Microsoft Windows 10 22h2
Microsoft Windows 11 21h2
Microsoft Windows Server 2019
Microsoft Windows Server 2022
All of the following
Any of the following
Microsoft .NET Framework=3.5
Microsoft .NET Framework=4.8.1
Any of the following
Microsoft Windows 10 21h2
Microsoft Windows 10 22h2
Microsoft Windows 11 21h2
Microsoft Windows 11 22h2
Microsoft Windows Server 2022
All of the following
Microsoft .NET Framework=4.8
Any of the following
Microsoft Windows 10 1607
Microsoft Windows Server 2008=r2-sp1
Microsoft Windows Server 2012
Microsoft Windows Server 2012=r2
Microsoft Windows Server 2016
All of the following
Any of the following
Microsoft .NET Framework=3.5
Microsoft .NET Framework=4.7.2
Any of the following
Microsoft Windows 10 1809
Microsoft Windows Server 2019
All of the following
Any of the following
Microsoft .NET Framework=4.6.2
Microsoft .NET Framework=4.7
Microsoft .NET Framework=4.7.1
Microsoft .NET Framework=4.7.2
Any of the following
Microsoft Windows Server 2008=r2-sp1
Microsoft Windows Server 2012
Microsoft Windows Server 2012=r2
Microsoft Visual Studio 2022=17.2
Microsoft Visual Studio 2022=17.7
Microsoft Visual Studio 2022=17.6
Microsoft Visual Studio 2019>=16.11<16.11.30
16.11.30
Microsoft Visual Studio 2022>=17.2<17.2.21
17.2.21
Microsoft Visual Studio 2022>=17.4<17.4.13
17.4.13
Microsoft Visual Studio 2017>=15.9<15.9.57
15.9.57
Microsoft .NET Framework=3.5, =4.6.2, =4.7, =4.7.1, =4.7.2, >=10.0.14393<10.0.14393.6252
10.0.14393.6252
Microsoft .NET Framework and=3.5, =4.6.2, >=10.0.10240<10.0.10240.20162
10.0.10240.20162
Microsoft .NET Framework=4.6.2, >=4.7<4.7.04063.01, =4.7.1, =4.7.2
4.7.04063.01
Microsoft .NET Framework=3.5.1, >=3.0.30729<3.0.30729.8957
3.0.30729.8957
Microsoft .NET Framework>=4.8<4.8.04667.02
4.8.04667.02
Microsoft .NET Framework=3.5, >=4.8<4.8.04667.03
4.8.04667.03
Microsoft .NET Framework=3.5, >=4.8<4.8.04667.03
4.8.04667.03
Microsoft .NET Framework=3.5, >=3.0.30729<3.0.30729.8957
3.0.30729.8957
Microsoft .NET Framework=3.5, >=3.0.30729<3.0.30729.8957
3.0.30729.8957
Microsoft PowerShell>=7.2<7.2.12
7.2.12
Microsoft .NET Framework=2.0, >=3.0.30729<3.0.30729.8957
3.0.30729.8957
Microsoft .NET Framework>=3.0<3.0.30729.8957
3.0.30729.8957
Microsoft .NET Framework=4.6.2, >=4.7.04063<4.7.04063.01
4.7.04063.01
Microsoft .NET Framework=3.5, =4.8.1, >=4.8.09186<4.8.09186.01
4.8.09186.01
Microsoft .NET Framework=3.5, =4.8.1, >=4.8.09186<4.8.09186.01
4.8.09186.01
Microsoft .NET Framework=3.5, =4.8.1, >=4.8.09186<4.8.09186.01
4.8.09186.01
Microsoft .NET Framework=3.5, =4.8.1
4.8.09186.0
Microsoft .NET Framework=3.5, =4.8.1, >=4.8.09186<4.8.09186.01
4.8.09186.01
Microsoft .NET Framework=3.5, >=4.8<4.8.04667.02
4.8.04667.02
Microsoft .NET Framework=4.6.2, >=4.7<4.7.04063.02, =4.7.1, =4.7.2
4.7.04063.02
Microsoft .NET Framework=4.6.2, >=4.7<4.7.04063.02, =4.7.1, =4.7.2
4.7.04063.02
Microsoft .NET Framework>=4.8<4.8.04667.02
4.8.04667.02
Microsoft .NET Framework>=4.8<4.8.04667.02
4.8.04667.02
Microsoft .NET Framework=3.5, =4.7.2, >=4.7.04063<4.7.04063.05
4.7.04063.05
Microsoft .NET Framework=3.5, >=4.8<4.8.04667.02
4.8.04667.02
Microsoft .NET Framework=3.5, >=4.8<4.8.04667.02
4.8.04667.02
Microsoft .NET Framework>=4.8<4.8.04667.02
4.8.04667.02
Microsoft Visual Studio 2022>=17.6<17.6.9
17.6.9
Microsoft Visual Studio 2022=17.7, >=17.6<17.6.9
17.6.9
Microsoft .NET>=6.0<6.0.24
6.0.24
Microsoft .NET>=7.0<7.0.13
7.0.13
alpine/dotnet6-build<6.0.122-r0
6.0.122-r0
alpine/dotnet6-build<6.0.122-r0
6.0.122-r0
alpine/dotnet6-build<6.0.122-r0
6.0.122-r0
alpine/dotnet6-runtime<6.0.22-r0
6.0.22-r0
alpine/dotnet6-runtime<6.0.22-r0
6.0.22-r0
alpine/dotnet6-runtime<6.0.22-r0
6.0.22-r0
alpine/dotnet7-build<7.0.111-r0
7.0.111-r0
alpine/dotnet7-build<7.0.111-r0
7.0.111-r0
alpine/dotnet7-runtime<7.0.11-r0
7.0.11-r0
alpine/dotnet7-runtime<7.0.11-r0
7.0.11-r0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade nuget/Microsoft.NETCore.App.Runtime.win-x86 to a version that resolves this vulnerability.

    Fixed in 7.0.11
  2. Upgrade

    Upgrade nuget/Microsoft.NETCore.App.Runtime.win-x86 to a version that resolves this vulnerability.

    Fixed in 6.0.22
  3. Upgrade

    Upgrade nuget/Microsoft.NETCore.App.Runtime.win-x64 to a version that resolves this vulnerability.

    Fixed in 6.0.22
  4. Upgrade

    Upgrade nuget/Microsoft.NETCore.App.Runtime.win-x64 to a version that resolves this vulnerability.

    Fixed in 7.0.11
  5. Upgrade

    Upgrade nuget/Microsoft.NETCore.App.Runtime.win-arm64 to a version that resolves this vulnerability.

    Fixed in 6.0.22
  6. Upgrade

    Upgrade nuget/Microsoft.NETCore.App.Runtime.win-arm64 to a version that resolves this vulnerability.

    Fixed in 7.0.11
  7. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 16.11.30
  8. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 17.2.21
  9. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 17.4.13
  10. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 15.9.57
  11. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 10.0.14393.6252Patch KB5030213
  12. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.7.04063.01Patch KB5030182
  13. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 10.0.10240.20162Patch KB5030220
  14. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 3.0.30729.8957Patch KB5030182
  15. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.02Patch KB5030182
  16. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.03Patch KB5030178
  17. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.03Patch KB5030186
  18. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 3.0.30729.8957Patch KB5030184
  19. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 3.0.30729.8957Patch KB5030183
  20. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 7.2.12
  21. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 3.0.30729.8957Patch KB5030185
  22. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.7.04063.01Patch KB5030185
  23. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.09186.01Patch KB5030180
  24. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.09186.01Patch KB5030179
  25. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.09186.01Patch KB5030181
  26. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.09186.0Patch KB5031217
  27. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.09186.01Patch KB5030186
  28. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.02Patch KB5030180
  29. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.7.04063.02Patch KB5030184
  30. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.02Patch KB5030184
  31. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.7.04063.02Patch KB5030183
  32. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.02Patch KB5030183
  33. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.7.04063.05Patch KB5030178
  34. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.02Patch KB5030181
  35. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 4.8.04667.02Patch KB5029924
  36. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 17.6.9
  37. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 6.0.24Patch KB5032874
  38. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 7.0.13Patch KB5032875
  39. Upgrade

    Upgrade alpine/dotnet6-build to a version that resolves this vulnerability.

    Fixed in 6.0.122-r0
  40. Upgrade

    Upgrade alpine/dotnet6-runtime to a version that resolves this vulnerability.

    Fixed in 6.0.22-r0
  41. Upgrade

    Upgrade alpine/dotnet7-build to a version that resolves this vulnerability.

    Fixed in 7.0.111-r0
  42. Upgrade

    Upgrade alpine/dotnet7-runtime to a version that resolves this vulnerability.

    Fixed in 7.0.11-r0
  43. Upgrade

    Upgrade .NET 6 Runtime to a version that resolves this vulnerability.

    Fixed in 6.0.22
  44. Upgrade

    Upgrade .NET 6 SDK to a version that resolves this vulnerability.

    Fixed in 6.0.317
  45. Upgrade

    Upgrade .NET 7 Runtime to a version that resolves this vulnerability.

    Fixed in 7.0.11
  46. Upgrade

    Upgrade .NET 7 SDK to a version that resolves this vulnerability.

    Fixed in 7.0.111
  47. Operational

    Recompile and redeploy self-contained applications targeting the impacted .NET versions.

  48. Operational

    Restart applications after installing the updated runtime or SDK so the update takes effect.

Event History

Sep 12, 2023
CVE Published
via Microsoft·07:00 AM
Data Sourced
via Microsoft·07:00 AM
DescriptionSeverityWeaknessAffected Software
CVE Published
via MITRE·04:58 PM
Data Sourced
via MITRE·04:58 PM
DescriptionSeverity
Data Sourced
via NVD·05:15 PM
RemedyDescriptionSeverityWeaknessAffected Software
Data Sourced
via OSV·05:15 PM
DescriptionSeverityAffected Software
Advisory Published
08:26 PM

Frequently Asked Questions

1

What is the severity of CVE-2023-36794?

CVE-2023-36794 is classified as a critical remote code execution vulnerability in .NET 6.0 and .NET 7.0.

2

How do I fix CVE-2023-36794?

To remediate CVE-2023-36794, update to the latest versions of .NET 6.0, .NET 7.0, or the applicable Visual Studio versions as recommended by Microsoft.

3

Which versions of .NET are affected by CVE-2023-36794?

CVE-2023-36794 affects .NET 6.0 versions prior to 6.0.22 and .NET 7.0 versions prior to 7.0.11.

4

Can CVE-2023-36794 be exploited remotely?

Yes, CVE-2023-36794 can be exploited remotely, allowing an attacker to execute arbitrary code on the affected system.

5

Is CVE-2023-36794 present in older versions of .NET?

CVE-2023-36794 specifically impacts .NET 6.0 and .NET 7.0 and does not affect older versions of .NET Framework.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203