Vulnerabilities in .NET Framework Could Allow Elevation of Privilege (3086251)
Published: August 11, 2015 | Updated: September 25, 2015
Version: 1.2
Executive Summary
This security update resolves vulnerabilities in Microsoft .NET Framework. The vulnerabilities could allow elevation of privilege if a user runs a specially crafted .NET application. However, in all cases, an attacker would have no way to force users to run the application; an attacker would have to convince users to do so.
This security update is rated Important for Microsoft .NET Framework 4.6 on all supported releases of Microsoft Windows except Itanium editions. For more information, see the Affected Software section.
The security update addresses the vulnerabilities by correcting RyuJIT compiler optimization for .NET Framework. For more information about the vulnerabilities, see the Vulnerability Information section.
The following software versions or editions are affected. Versions or editions that are not listed are either past their support life cycle or are not affected. To determine the support life cycle for your software version or edition, see Microsoft Support Lifecycle.
[1]The security updates for Windows RT operating systems are available via Windows Update only.
[2]The Windows 10 update is cumulative. In addition to containing non-security updates, it also contains all of the security fixes for all of the Windows 10-affected vulnerabilities shipping with this month’s security release. The update is available via the Windows Update Catalog only. See Microsoft Knowledge Base Article 3081436 for more information and download links.
Note Windows Server Technical Preview 2 is affected. Customers running this operating system are encouraged to apply the update, which is available via Windows Update.
Update FAQ
How do I determine which version of Microsoft .NET Framework is installed?
You can install and run multiple versions of .NET Framework on a system, and you can install the versions in any order. For more information, see Microsoft Knowledge Base Article 318785.
Severity Ratings and Vulnerability Identifiers
The following severity ratings assume the potential maximum impact of the vulnerability. For information regarding the likelihood, within 30 days of this security bulletin's release, of the exploitability of the vulnerability in relation to its severity rating and security impact, please see the Exploitability Index in the August bulletin summary.
Vulnerability Severity Rating and Maximum Security Impact by Affected Software
Microsoft .NET Framework 4.6 when installed on Windows Vista Service Pack 2
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Vista x64 Edition Service Pack 2
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2008 for 32-bit Systems Service Pack 2
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation)
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2008 for x64-based Systems Service Pack 2
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation)
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 7 for 32-bit Systems Service Pack 1
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 7 for x64-based Systems Service Pack 1
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2008 R2 for x64-based Systems Service Pack 1
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 8 for 32-bit Systems
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 8 for x64-based Systems
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 8.1 for 32-bit Systems
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 8.1 for x64-based Systems
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Microsoft .NET Framework 4.6 when installed on Windows Server 2012
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2012 (Server Core installation)
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2012 R2
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows Server 2012 R2 (Server Core installation)
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows RT
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows RT 8.1
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 10 for 32-bit Systems
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Microsoft .NET Framework 4.6 when installed on Windows 10 for x64-based Systems
Important Elevation of Privilege
Important Elevation of Privilege
Important Elevation of Privilege
Important
Vulnerability Information
Multiple RyuJIT Optimization Elevation of Privilege Vulnerabilities
Elevation of privilege vulnerabilities exist in Microsoft .NET Framework when the RyuJIT compiler improperly optimizes certain parameters resulting in a code generation error. An attacker who successfully exploited this vulnerability could take complete control of an affected system. An attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than users who operate with administrative user rights.
To exploit these vulnerabilities, an attacker would need to host a specially crafted .NET application and convince users to run the application. However, in all cases, an attacker would have no way to force users to run the application; an attacker would have to convince users to do so. The security update addresses the vulnerabilities by correcting RyuJIT compiler optimization for .NET Framework.
The following tables contain links to the standard entry for each vulnerability in the Common Vulnerabilities and Exposures list:
Vulnerability Title
CVE Number
Publicly Disclosed
Exploited
RyuJIT Optimization Elevation of Privilege Vulnerability
Microsoft has not identified any mitigating factors for these vulnerabilities.
Workarounds
The following workarounds might be helpful in your situation:
Disable RyuJIT
Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.
Create a text file named RyuJIT-disable.reg that contains the following text:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]
"useLegacyJit"=dword:00000001
Run regedit.exe.
In Registry Editor, click File and then click Import.
Navigate to and select the RyuJIT-disable.reg file that you created in the first step.
(Note: If your file is not listed where you expect it to be, ensure that it has not been automatically given a .txt file extension, or change the dialog’s file extension parameters to All Files).
Click Open and then click OK.
Close Registry Editor and restart the system.
Impact of workaround. The legacy JIT compiler will be invoked in lieu of the RyuJIT compiler.
How to undo the workaround.
Create a text file named RyuJIT-enable.reg that contains the following text:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]
"useLegacyJit"=dword:00000000
Run regedit.exe.
In Registry Editor, click File and then click Import.
Navigate to and select the RyuJIT-enable.reg file that you created in the first step.
(Note: If your file is not listed where you expect it to be, ensure that it has not been automatically given a .txt file extension, or change the dialog’s file extension parameters to All Files).
Click Open and then click OK.
Close Registry Editor and restart the system.
Security Update Deployment
For Security Update Deployment information, see the Microsoft Knowledge Base article referenced here in the Executive Summary.
Acknowledgments
Microsoft recognizes the efforts of those in the security community who help us protect customers through coordinated vulnerability disclosure. See Acknowledgments for more information.
Disclaimer
The information provided in the Microsoft Knowledge Base 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.
Revisions
V1.0 (August 11, 2015): Bulletin published.
V1.1 (August 24, 2015): Updated bulletin to inform customers that on August 18, 2015, a metadata change was implemented on Windows Update for the updates documented in this bulletin. This is an informational change only. There were no changes to the update files. Customers who have already successfully updated their systems do not need to take any action.
V1.2 (September 25, 2015): Added a footnote to the Affected Software table to inform customers that Windows Server Technical Preview 2 is affected. Customers running this operating system are encouraged to apply the update, which is available via Windows Update.