CVE-2024-0057: NET, .NET Framework, and Visual Studio Security Feature Bypass Vulnerability
Overview
- Severity
- Critical (CVSS 9.1)
- CVSS Vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N/E:P/RL:O/RC:C
- Category
- Security Feature Bypass
- Exploit Status
- Not Exploited
- Exploitation Likelihood
- Less Likely
- Patch Tuesday
- 2024-Jan
- Released
- 2024-01-09
- Last Updated
- 2024-04-16
- EPSS Score
- 3.64% (percentile: 87.8%)
FAQ
What kind of security feature could be bypassed by successfully exploiting this vulnerability?
A security feature bypass vulnerability exists when Microsoft .NET Framework-based applications use X.509 chain building APIs but do not completely validate the X.509 certificate due to a logic flaw. An attacker could present an arbitrary untrusted certificate with malformed signatures, triggering a bug in the framework. The framework will correctly report that X.509 chain building failed, but it will return an incorrect reason code for the failure. Applications which utilize this reason code to make their own chain building trust decisions may inadvertently treat this scenario as a successful chain build. This could allow an adversary to subvert the app's typical authentication logic.
How could an attacker exploit this vulnerability?
An attacker could exploit this by creating a specially crafted X.509 certificate that intentionally introduce or intentionally induces a chain building failure.
Is there are reason for such a high CVSS score?
Yes, the CVSS scoring guide recommends using a reasonable worst-case implementation scenario when scoring vulnerabilities in software libraries. Vulnerabilites in .NET Framework and similar products are scored with this advice in mind. The score for your implmentation this product may not be as severe, however we recommend installing the update as soon as possible in an abundance of caution.
Please see the CVSS user guide for more information.
Affected Products (73)
Developer Tools
- .NET 8.0
- .NET 7.0
- .NET 6.0
- Microsoft Visual Studio 2022 version 17.2
- Microsoft Visual Studio 2019 version 16.11 (includes 16.0 - 16.10)
- Microsoft Visual Studio 2022 version 17.4
- Microsoft Visual Studio 2022 version 17.6
- Microsoft Visual Studio 2022 version 17.8
- NuGet 5.11.0
- NuGet 17.4.0
- Nuget 17.6.0
- NuGet 17.8.0
- PowerShell 7.2
- PowerShell 7.3
- PowerShell 7.4
- Microsoft .NET Framework 4.8 on Windows 10 Version 1607 for 32-bit Systems
- Microsoft .NET Framework 4.8 on Windows 10 Version 1607 for x64-based Systems
- Microsoft .NET Framework 4.8 on Windows Server 2016
- Microsoft .NET Framework 4.8 on Windows Server 2016 (Server Core installation)
- Microsoft .NET Framework 4.8 on Windows Server 2008 R2 for x64-based Systems Service Pack 1
- Microsoft .NET Framework 4.8 on Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
- Microsoft .NET Framework 4.8 on Windows Server 2012 (Server Core installation)
- Microsoft .NET Framework 4.8 on Windows Server 2012
- Microsoft .NET Framework 4.8 on Windows Server 2012 R2
- Microsoft .NET Framework 4.8 on Windows Server 2012 R2 (Server Core installation)
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 1809 for x64-based Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 1809 for 32-bit Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows Server 2019
- Microsoft .NET Framework 3.5 AND 4.8 on Windows Server 2019 (Server Core installation)
- Microsoft .NET Framework 3.5 AND 4.8 on Windows Server 2022
- Microsoft .NET Framework 3.5 AND 4.8 on Windows Server 2022 (Server Core installation)
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 11 version 21H2 for ARM64-based Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 21H2 for 32-bit Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 11 version 21H2 for x64-based Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 21H2 for ARM64-based Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 21H2 for x64-based Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 22H2 for x64-based Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 22H2 for ARM64-based Systems
- Microsoft .NET Framework 3.5 AND 4.8 on Windows 10 Version 22H2 for 32-bit Systems
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows 10 Version 1809 for 32-bit Systems
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows 10 Version 1809 for x64-based Systems
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows 10 Version 1809 for ARM64-based Systems
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows Server 2019
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows Server 2019 (Server Core installation)
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows 10 Version 1607 for 32-bit Systems
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows 10 Version 1607 for x64-based Systems
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows Server 2016 (Server Core installation)
- Microsoft .NET Framework 3.5 AND 4.7.2 on Windows Server 2016
- Microsoft .NET Framework 4.6.2/4.7/4.7.1/4.7.2 on Windows Server 2008 R2 for x64-based Systems Service Pack 1
- Microsoft .NET Framework 4.6.2/4.7/4.7.1/4.7.2 on Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
- ... and 23 more
Security Updates (31)
Acknowledgments
Vishal Mishra and Anita Gaud with Microsoft's Azure DevSec Variant Hunt Team and Stav Nir from Microsoft
Revision History
- 2024-01-09: Information published.
- 2024-01-12: Revised the Security Updates table as follows: Added PowerShell 7.2, PowerShell 7.3, and PowerShell 7.4 because these versions of PowerShell 7 are affected by this vulnerability. See https://github.com/PowerShell/Announcements/issues/72 for more information. Corrected Download and Article links for .NET Framework 3.5 and 4.8.1 installed on Windows 10 version 22H2.
- 2024-01-16: Corrected Download and Article links in the Security Updates table. This is an informational change only.
- 2024-01-22: Corrected Download links in the Security Updates table. This is an informational change only.
- 2024-02-13: In the Security Updates table, added Visual Studio 2019 version 16.11 as it is also affected by this vulnerability. In addition, added NuGet 5.11.0, NuGet 17.4.0, NuGet 17.6.0, and NuGet 17.8.0 because these versions of NuGet are affected by this vulnerability. For more information on the NuGet updates see https://github.com/NuGet/Announcements/issues/71.
Microsoft strongly recommends that customers running any of these products install the updates to be fully protected from the vulnerability. Customers whose systems are configured to receive automatic updates do not need to take any further action.
- 2024-02-13: To address a known issue with a broken link, corrected Download links in the Security Updates table. This is an informational change only.
- 2024-04-16: To comprehensively address this vulnerability, Microsoft has released a security update on April 16, 2024 for PowerShell 7.4. Microsoft recommends that customers install the update to be fully protected from the vulnerability. See https://github.com/PowerShell/Announcements/issues/76 for more information.