Security and Quality Rollup for .NET Framework 3.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, and 4.7.1 updates for Windows 7 SP1 and Server 2008 R2 SP1 (KB 4055532)

Applies to: Microsoft .NET Framework 4.7.1Microsoft .NET Framework 4.7Microsoft .NET Framework 4.6.2 More

This update has been released as part of the January 2018 Security and Quality Rollup for .NET Framework 3.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, and 4.7.1 for Windows 7 SP1 and Windows Server 2008 R2 SP1.

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. Also, see the "Additional information about this security update" section in 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 section 4.2.1.12 of RFC 5280. 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. This update changes this process so that the certificate chain validation fails if the root certificate is disabled. This is in addition to requiring the appropriate client or server EKU on certificates.

    If certificates are used for authentication, the authenticator examines the certificate that is provided by the remote endpoint and looks for the correct purpose object identifier in Application Policies extensions. If 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.

    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 value 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.
     
    • 4074880 Description of the Security and Quality Rollup for .NET Framework 4.6, 4.6.1, 4.6.2, 4.7, and 4.7.1 for Windows 7 SP1 and Server 2008 R2 SP1 (KB 4074880)
    • 4054995 Description of the Security and Quality Rollup for .NET Framework 4.5.2 for Windows 7 SP1, Server 2008 R2 SP1, and Server 2008 SP2 (KB 4054995)
    • 4054998 Description of the Security and Quality Rollup for .NET Framework 3.5.1 for Windows 7 SP1 and Server 2008 R2 SP1 (KB 4054998)
  • 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 the "Setting the registry key" section in this article 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 will 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 the "Setting the registry key" section 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 the "Setting the registry key" section 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, see the "Changing keys and values" help topic in Registry Editor or see 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