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.
- 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 be 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 18.104.22.168. 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 will fail.
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 22.214.171.124.126.96.36.199.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 188.8.131.52.184.108.40.206.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.
- For more information about this security update as it relates to Windows 7 Service Pack 1 (SP1) and Windows Server 2008 R2 SP1, see the following article in the Microsoft Knowledge Base:
4055269 Security Only update 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 Windows Server 2008 R2 SP1 (KB 4055269)
- For more information about this security update as it relates to Windows Server 2008 SP2, see the following article in the Microsoft Knowledge Base:
4055272 Security Only update for .NET Framework 2.0 SP2, 3.0 SP2, 4.5.2, and 4.6 updates for Windows Server 2008 SP2 (KB 4055272)
How to obtain and install the update
Method 1: Microsoft Update Catalog
To get the stand-alone package for this update, go to the Microsoft Update Catalog.
Method 2: Windows Software Update Services (WSUS)
On your WSUS server, follow these steps:
- Select Start, select Administrative Tools, and then select Microsoft Windows Server Update Services 3.0.
- Expand ComputerName, and then select Action.
- Select Import Updates.
- WSUS will open a browser window in which you may be prompted to install an ActiveX control. Install the ActiveX control to continue.
- Once the control is installed, you will see the Microsoft Update Catalog screen. Enter 4055269 for Windows 7 SP1 and Windows Server 2008 R2 SP1 or 4055272 for Windows Server 2008 SP2 in the Search box, and then select Search.
- Locate the .NET Framework packages that match the operating systems, languages, and processors in your environment. Select Add to add them to your basket.
- When you have selected all the packages you need, select View Basket.
- Select Import to import the packages to your WSUS server.
- Select Close once the packages have been imported to return to WSUS.
The updates are now available for installation through WSUS.
Update deployment information
For deployment details for this security update, go to the following article in the Microsoft Knowledge Base:
20180109 Security update deployment information: January 9, 2018
Update removal information
Note We do not recommend that you remove any security update. To remove this update, use the Programs and Features item in Control Panel.
Update restart information
This update does not require a system restart after you apply it unless files that are being updated are locked or are being used.
Update replacement information
This update replaces update KB 3122661.
How to obtain help and support for this security update
- Help for installing updates: Windows Update FAQ
- Security solutions for IT professionals: TechNet Security Support and Troubleshooting
- Help for protecting your Windows-based products and services from viruses and malware: Microsoft Secure
- Local support according to your country: International Support