You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Microsoft Security Advisory CVE-2018-8416: .NET Core Tampering Vulnerability
Executive summary
Microsoft is releasing this security advisory to provide information about a vulnerability in .NET Core 2.1. This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability.
Microsoft is aware of a tampering vulnerability exists when .NET Core improperly handles specially crafted files. An attacker who successfully exploited this vulnerability could write arbitrary files and directories to certain locations on a vulnerable system. However, an attacker would have limited control over the destination of the files and directories.
To exploit the vulnerability, an attacker must send a specially crafted file to a vulnerable system
The update addresses the vulnerability by correcting how .NET Core handles these files.
System.IO.Compression.ZipFile is distributed as part of the .NET Core 2.1 runtime. To check the currently installed runtimes, open a command prompt and run the dotnet --info command. If you have a 2.1 or greater runtime installed, you'll see output like the following;
.NET Core SDK (reflecting any global.json):
Version: 2.2.100
Commit: b9f2fa0ca8
Runtime Environment:
OS Name: Windows
OS Version: 10.0.17134
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\2.2.100\
Host (useful for support):
Version: 2.2.0
Commit: 1249f08fed
.NET Core SDKs installed:
2.1.5 [C:\Program Files\dotnet\sdk]
2.1.502 [C:\Program Files\dotnet\sdk]
2.2.100 [C:\Program Files\dotnet\sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.All 2.2.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.2.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download
If your host version is 2.1.x and the highest Microsoft.NETCore.App runtime version is less than 2.1.7, you're vulnerable to this issue.
If your host version is 2.2.x and the highest 2.1.x Microsoft.NETCore.App runtime version is less than 2.1.7, you're vulnerable to this issue.
You will not see SDK versions if you have only installed the runtime.
Finally, you must restart your applications once an updated runtime or SDK is installed.
Other Information
Reporting Security Issues
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.
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.
Microsoft Security Advisory CVE-2018-8416: .NET Core Tampering Vulnerability
Executive summary
Microsoft is releasing this security advisory to provide information about a vulnerability in .NET Core 2.1. This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability.
Microsoft is aware of a tampering vulnerability exists when .NET Core improperly handles specially crafted files. An attacker who successfully exploited this vulnerability could write arbitrary files and directories to certain locations on a vulnerable system. However, an attacker would have limited control over the destination of the files and directories.
To exploit the vulnerability, an attacker must send a specially crafted file to a vulnerable system
The update addresses the vulnerability by correcting how .NET Core handles these files.
Discussion
Discussion for this issue can be found at https://github.com/dotnet/corefx/issues/34427
Mitigation factors
If your application does not extract ZIP compressed files it is unaffected.
Affected software
Any .NET Core based application that uses the System.IO.Compression.ZipFile package with a vulnerable version listed below.
Advisory FAQ
How do I know if I am affected?
System.IO.Compression.ZipFile
is distributed as part of the .NET Core 2.1 runtime. To check the currently installed runtimes, open a command prompt and run thedotnet --info
command. If you have a 2.1 or greater runtime installed, you'll see output like the following;If your host version is 2.1.x and the highest
Microsoft.NETCore.App
runtime version is less than 2.1.7, you're vulnerable to this issue.If your host version is 2.2.x and the highest 2.1.x
Microsoft.NETCore.App
runtime version is less than 2.1.7, you're vulnerable to this issue.You will not see SDK versions if you have only installed the runtime.
How do I fix the issue?
If your host version is a 2.1.x host you must install version 2.1.7 or later of the .NET Core 2.1 runtime, or corresponding .NET Core 2.1 SDK.
If your host version is a 2.2.x you must install version 2.2.1 or later of the .NET Core 2.2 runtime, or corresponding .NET Core 2.2 SDK.
Finally, you must restart your applications once an updated runtime or SDK is installed.
Other Information
Reporting Security Issues
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.
Support
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. You can ask questions in the 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.
Acknowledgments
Danny Grander of Snyk
External Links
CVE-2018-8416
Revisions
V1.1 (January 9, 2019): Correct affected pacakge table.
V1.0 (January 8, 2019): Advisory published.
Version 1.1
Last Updated 2019-01-09
The text was updated successfully, but these errors were encountered: