Applies To.NET Framework 4.7.1 .NET Framework 4.7 .NET Framework 4.6 .NET Framework 4.6.1 .NET Framework 4.6.2 .NET Framework 3.5 Service Pack 1

Notice

This update has been released as part of the January 2018 Preview of the Quality Rollups for .NET Framework 3.5 SP1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, and 4.7.1 for Windows Server 2012 (KB 4057271).

Important

If you have not been offered this security update, you may be running incompatible antivirus software, and you should contact the software vendor. We are working closely with antivirus software partners to make sure that all customers receive the January Windows security updates as soon as possible. For more information, go to Important: Windows security updates released January 3, 2018, and antivirus software, and see the "Additional information about this security update" section of this article.

Summary

This security update resolves a security feature bypass vulnerability that exists when Microsoft .NET Framework and .NET Core components do not completely validate certificates. This security update addresses the vulnerability by helping to make sure that .NET Framework and .NET Core components completely validate certificates. To learn more about this vulnerability, see Microsoft Common Vulnerabilities and Exposures CVE-2018-0786.

Additionally, this security update resolves a denial of service vulnerability that exists when .NET Framework and .NET core components improperly process XML documents. This update addresses the vulnerability by correcting how .NET Framework and .NET Core component applications handle XML document processing. To learn more about this vulnerability, see Microsoft Common Vulnerabilities and Exposures CVE-2018-0764.

Important

  • All updates for .NET Framework 4.6, 4.6.1, 4.6.2, 4.7, and 4.7.1 require that the d3dcompiler_47.dll is installed. We recommend that you install the included d3dcompiler_47.dll before you apply this update. For more information about the d3dcompiler_47.dll, see KB 4019990.

  • If you install a language pack after you install this update, you must reinstall this update. Therefore, we recommend that you install any language packs that you need before you install this update. For more information, see Add language packs to Windows.

Additional information about this security update

  • Enhanced Key Usage (EKU) is described in RFC 5280 in section 4.2.1.12. This extension indicates one or more purposes for which the certified public key may be used in addition to or instead of the basic purposes that are indicated in the key usage extension. For example, a certificate that is used for the authentication of a client to a server must be configured for Client Authentication. Similarly, a certificate that is used for the authentication of a server must be configured for Server Authentication. With this change, besides requiring the appropriate client/server EKU on certificates, if the root certificate is disabled, the certificate chain validation fails. When certificates are used for authentication, the authenticator examines the certificate that is provided by the remote endpoint and seeks the correct purpose object identifier in Application Policies extensions. When a certificate is used for client authentication, the object identifier for Client Authentication must be present in the EKU extensions of the certificate, or authentication fails. The object identifier for Client Authentication is 1.3.6.1.5.5.7.3.2. Likewise, when a certificate is used for server authentication, the object identifier for Server Authentication must be present in the EKU extensions of the certificate, or authentication fails. The object identifier for Server Authentication is 1.3.6.1.5.5.7.3.1. Certificates that have no EKU extension continue to authenticate correctly. First, consider making changes to your component’s certificates to make sure that they are using the correct EKU OID attributes and are secured correctly. If you temporarily cannot access correctly reissued certificates, you can choose to opt in or out of the security change to avoid any connectivity effects. To do this, specify the following appsetting in the configuration file: <appSettings> <add key="wcf:useLegacyCertificateUsagePolicy" value="true" /> </appSettings> Note Setting the value to “true” will opt out of the security changes.

  • The following articles contain additional information about this security update as it relates to individual product versions. The articles may contain known issue information.

    • 4055000 Description of the Security and Quality Rollup for the .NET Framework 4.6, 4.6.1, 4.6.2, 4.7, and 4.7.1 for Windows Server 2012 (KB 4055000)

    • 4054994 Description of the Security and Quality Rollup for the .NET Framework 4.5.2 for Windows Server 2012 (KB 4054994)

    • 4054997 Description of the Security and Quality Rollup for the .NET Framework 3.5 SP1 for Windows Server 2012 (KB 4054997)

  • Windows 10, Windows 8.1, Windows Server 2012 R2, and Windows Server 2016 customers

    We recommend that all customers protect their devices by running compatible and supported antivirus software. Customers can take advantage of built-in antivirus protection, Windows Defender Antivirus, for Windows 8.1 and Windows 10 devices or a compatible third-party antivirus application. The antivirus software must set a registry key as described in "Setting the registry key," below, for you to receive the January 2018 security updates.

  • Windows 7 SP1 and Windows Server 2008 R2 SP1 customers

    A default installation of Windows 7 SP1 or Windows Server 2008 R2 SP1 does not have an antivirus application installed. In these situations, we recommend installing a compatible and supported antivirus application such as Microsoft Security Essentials or a third-party antivirus application.The antivirus software must set a registry key as described in "Setting the registry key," below, for you to receive the January 2018 security updates.

  • Customers without antivirus

    If you cannot install or run antivirus software, we recommend manually setting the registry key as described in "Setting the registry key," below, for you to receive the January 2018 security updates.

  • Setting the registry key

    Caution Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. For information about how to edit the registry, view the "Changing keys and values" help topic in Registry Editor or view the "Add and delete information in the registry" and "Edit registry data" help topics in Regedt32.exe.

    Note You will not receive the January 2018 security updates (or any successive security updates) and will not be protected from security vulnerabilities unless your antivirus software sets the following registry key:

    Key="HKEY_LOCAL_MACHINE" Subkey="SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat" Value="cadca5fe-87d3-4b96-b7fb-a231484277cc" Type="REG_DWORD” Data="0x00000000”

How to obtain help and support for this security update

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.