Microsoft is releasing this security advisory to provide information about a vulnerability in .NET Core. This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability.
Microsoft is aware of a remote code execution vulnerability exists in .NET software when the software fails to check the source markup of a file. An attacker who successfully exploited the vulnerability could run arbitrary code in the context of the current user.
Exploitation of the vulnerability requires that a user open a specially crafted file with an affected version of .NET Core. In an email attack scenario, an attacker could exploit the vulnerability by sending the specially crafted file to the user and convincing the user to open the file.
The security update addresses the vulnerability by correcting how .NET Core checks the source markup of a file.
The original announcement for this issue can be found at https://github.com/dotnet/announcements/issues/148
Microsoft has not identified any mitigating factors for this vulnerability.
Any .NET Core application running on .NET Core 3.0.0, 3.0.1 or 3.1.0.
If you have a runtime or SDK with a version listed in affected software you are exposed to the vulnerability.
To fix the issue please install the latest version of .NET Core. If you have multiple versions of .NET Core installed you will need to install multiple runtimes, or SDKs depending on what you have 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: 3.1.100
Commit: cd82f021f4
Runtime Environment:
OS Name: Windows
OS Version: 10.0.18363
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\3.1.100\
Host (useful for support):
Version: 3.1.0
Commit: 65f04fb6db
.NET Core SDKs installed:
3.0.101 [C:\Program Files\dotnet\sdk]
3.1.100 [C:\Program Files\dotnet\sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.App 3.0.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.0.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.0.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download
If you have both 3.0 and 3.1 installed, you need to install the updates for both versions.
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.
If you have found a potential security issue in .NET Core, please email details to [email protected]. Reports may qualify for the .NET Core Bug Bounty. Details of the .NET Core Bug Bounty including terms and conditions are at https://aka.ms/corebounty.
You can ask questions about this issue on GitHub in the .NET Core 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.
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.
Soroush Dalili (@irsdl)
V1.1 (January 16, 2020): Clarifying versions.
V1.0 (January 14, 2020): Advisory published.
_Version 1.1_
_Last Updated 2020-01-16_
https://dotnet.microsoft.com/download/dotnet-core/3.1 shows the latest version is 3.1.100, not 3.1.101.
Now solved. Maybe my cache was stale?
some contradictions here.
this post:
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0605
same for CVE-2020-0606
@blowdart Is your framing narrower here on #2424 because we focus on delivering .NET Core fixes only on this repo whereas the MSRC advisory spans all of Microsoft, and thus lists all affected products? Whatever be the reason, do you think updating this announcement to clarify this point to be consistent with MSRC's bulletin would be preferable?
@stefan-wenig MSRC is correct. This issue affects .NET Core (all - 3.0, 3.1, 5 daily builds) as well as .NET Framework (4.x, 3.5).
Affected software: Any .NET Core 3.0 application running on .NET Core 3.0.0, 3.0.1 or 3.1.0.
@blowdart, @SIkebe pointed out in https://github.com/dotnet/wpf/issues/2425#issuecomment-574485748 that we are missing a reference to 3.1. This language probably needs to be updated.
I think its highly misleading (and dangerous) to publish information using the same unique CVE ID in different places, using different titles and "affected software".
Also this issue here still has the generic language indicating that users are affected, not applications. (Again, probably same for -606)
@vatsan-madhavan 3.1.0 is 3.1, what needs updating here? This is what was signed off by the product team.
Are you expecting it to say
Affected software: Any .NET Core 3 application running on .NET Core 3.0.0, 3.0.1 or 3.1.0.
or
Affected software: Any .NET Core application running on .NET Core 3.0.0, 3.0.1 or 3.1.0.
or something else?
OK clarified.
_Affected software: Any .NET Core application running on .NET Core 3.0.0, 3.0.1 or 3.1.0._
Hi,
the wording 'fails to check the source markup of a file' in the CVE (1), the publication of the CVE in the WPF repository, and the pull requests in this repository suggest that the vulnerability concern XAML files. Is it correct to assume that only XAML files are affected by CVE-2020-0605 (& CVE-2020-0606)?
Most helpful comment
I think its highly misleading (and dangerous) to publish information using the same unique CVE ID in different places, using different titles and "affected software".
Also this issue here still has the generic language indicating that users are affected, not applications. (Again, probably same for -606)