Microsoft is releasing this security advisory to provide information about a vulnerability in public ASP.NET Core 1.0, 1.1, 2.1 and 2.2. This advisory also provides guidance on what developers can do to update their applications correctly.
Microsoft is aware of a security vulnerability in all public versions of ASP.NET Core where, if an application is hosted on Internet Information Server (IIS) a remote unauthenticated attacker can use a specially crafted request can cause a Denial of Service.
The original announcement for this issue can be found at https://github.com/aspnet/Announcements/issues/335
Any site hosted behind a different proxy, such as nginx or an application hosted in Azure, which uses Application Request Routing (ARR) as a proxy is not affected.
The vulnerability affects any Microsoft ASP.NET 1.0/1.1/2.1 Core applications if it is hosted on an IIS server running AspNetCoreModule (ANCM) prior to 12.1.18340.7 or,
The vulnerability affects any Microsoft ASP.NET 2.2 Core applications if it is hosted on an IIS server running AspNetCoreModule (ANCM) prior to 12.2.18346.0
Open a PowerShell prompt and run the following command
(Get-Item $env:SystemDrive\Windows\System32\inetsrv\aspnetcore.dll).VersionInfo
or use the Windows file properties dialog to check the version on C:\Windows\System32\inetsrv\aspnetcore.dll, where C: is your OS install drive.
ASP.NET Core 1.0/1.1/2.1 applications are affected if the file version is less than 12.1.18340.7.
ASP.NET Core 2.2 applications are affected if the file version is less than 12.2.18346.0.
Install the latest version of the ASP.NET Core Runtime & Hosting Bundle appropriate to the highest version of .NET Core running on your servers.
Then restart IIS by running
net stop was /y
net start w3svc
from an elevated command line.
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 or ASP.NET Core organizations. These are located at https://github.com/dotnet/ and https://github.com/aspnet/. The Announcements repo for each product (https://github.com/dotnet/Announcements and https://github.com/aspnet/Announcements) will contain this bulletin as an issue and will include a link to a discussion issue where you can ask questions.
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.
V1.0 (Jan 8 2018): Advisory published.
V1.1 (Jan 9 2018): Update ANCM version for AspNetCore 2.1 and 1.1.
V1.2 (Jan 10 2018): Mention 2.2 is affected and that the 1.1 Hosting Bundle download link was incorrect.
_Version 1.2_
_Last Updated 2019-01-10_
Would this or the other CVE explain the disappearance of vers 2.1.3 of some NuGet packages?
@kierenj which package ID are you looking at? I'm guessing what you are actually seeing is something else, but it depends on the package.
Microsoft.AspNetCore.Server.IISIntegration (on mobile sorry - hope thats the correct capitalisation). There is an outside chance there never was a 2.1.3 since I cant find any evidence of it now.. but it鈥檚 the least insane explanation for the issue I鈥檓 facing
There is an outside chance there never was a 2.1.3
That's what happened. A regular complaint has been that our patches have jagged versions and it was hard to figure out which patch of individual packages belong to updates to the overall framework, so starting with 2.1.6, we decided to skip ahead the patch number to have consistent versions across all packageswe release in servicing updates. I called it "swiss cheese" versioning because it leaves holes 馃 .
See https://github.com/aspnet/AspNetCore/blob/master/docs/PreparingPatchUpdates.md
Ok, thank you. The issue I saw was that suddenly our app was saying it couldn鈥檛 find asm manifest version 2.2.0.0 didn鈥檛 match the version deployed, while the app was referencing pkg version 2.1.3. My guess is 2.1.3 was resolved to 2.2.0 instead - but I don鈥檛 understand which change in the last 24 hours would have triggered my situation. Forgive me for asking here - if this really isn鈥檛 related I鈥檒l happily remove these comments!
Edit: found out what happened -
Fix: Don't have references to package versions which don't exist
Let me know if you'd like me to delete these comments to keep this discussion clean
Hi, I installed dotnet-hosting-2.1.7-win.exe and aspnetcore.dll is still too old version? 12.1.18340.7 < 12.1.18346.0 ...?
(Get-Item $env:SystemDrive\Windows\System32\inetsrv\aspnetcore.dll).VersionInfo
ProductVersion FileVersion FileName
12.1.18340.7 12.1.18340.7 C:\Windows\System32\inetsrv\aspnetcore.dll
@Villae @blowdart @natemcmaster
Same, after install dotnet-hosting-2.1.7-win.exe from https://dotnet.microsoft.com/download/thank-you/dotnet-runtime-2.1.7-windows-hosting-bundle-installer
Version is
PS C:\Users\user> (Get-Item $env:SystemDrive\Windows\System32\inetsrv\aspnetcore.dll).VersionInfo
ProductVersion FileVersion FileName
-------------- ----------- --------
12.1.18340.7 12.1.18340.7 C:\Windows\System32\inetsrv\aspnetcore.dll
We've got the same issue like @Villae and @DaniilSokolyuk .
In addition, at https://dotnet.microsoft.com/download/dotnet-core/2.1 there is documented in the left column that the installer should contain "ASP.NET Core IIS Module 12.1.18263.2".
@shirhatti to expand on this.
@villae @DaniilSokolyuk @Compufreak345 you are all correct; we got the version incorrect for the 2.1 hosting bundle. We will update issues and the download center versions.
@jkotalik One more question: I installed dotnetcore.1.0.13_1.1.10-windowshosting.exe (downloaded about 5 minutes ago) to one server which have only one .NET Core 1.1 application installed. That 1.1.0 hosting module installer installed version 12.1.18250.2 of hosting module. Is that version also patched vor do I need to install 2.1 hosting module to get patched hosting module?
@Villae please redownload the 1.1 hosting bundle, the link on the download page was incorrect as of this morning.
We periodically close 'discussion' issues that have not been updated in a long period of time.
We apologize if this causes any inconvenience. We ask that if you are still encountering an issue, please log a new issue with updated information and we will investigate.
Most helpful comment
Hi, I installed dotnet-hosting-2.1.7-win.exe and aspnetcore.dll is still too old version? 12.1.18340.7 < 12.1.18346.0 ...?
(Get-Item $env:SystemDrive\Windows\System32\inetsrv\aspnetcore.dll).VersionInfo
ProductVersion FileVersion FileName
12.1.18340.7 12.1.18340.7 C:\Windows\System32\inetsrv\aspnetcore.dll