Microsoft Security Bulletin MS15-020 - Critical
Vulnerabilities in Microsoft Windows Could Allow Remote Code Execution (3041836)
Published: March 10, 2015 | Updated: March 10, 2015
Version: 1.1
Executive Summary
This security update resolves vulnerabilities in Microsoft Windows. The vulnerabilities could allow remote code execution if an attacker successfully convinces a user to browse to a specially crafted website, open a specially crafted file, or browse to a working directory that contains a specially crafted DLL file.
This security update is rated Critical for all supported releases of Microsoft Windows. For more information, see the Affected Software section.
The security update addresses the vulnerabilities by correcting how Microsoft Text Services handles objects in memory and how Microsoft Windows handles the loading of DLL files. For more information about the vulnerabilities, see the Vulnerability Information section.
For more information about this update, see Microsoft Knowledge Base Article 3041836.
Affected Software
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.
Operating System | Maximum Security Impact | Aggregate Severity Rating | Updates Replaced |
---|---|---|---|
Windows Server 2003 | |||
Windows Server 2003 Service Pack 2 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2003 Service Pack 2 (3039066) | Remote Code Execution | Critical | 2691442 in MS12-048 |
Windows Server 2003 x64 Edition Service Pack 2 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2003 x64 Edition Service Pack 2 (3039066) | Remote Code Execution | Critical | 2691442 in MS12-048 |
Windows Server 2003 with SP2 for Itanium-based Systems (3033889) | Remote Code Execution | Critical | None |
Windows Server 2003 with SP2 for Itanium-based Systems (3039066) | Remote Code Execution | Critical | 2691442 in MS12-048 |
Windows Vista | |||
Windows Vista Service Pack 2 (3033889) | Remote Code Execution | Critical | None |
Windows Vista Service Pack 2 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Vista x64 Edition Service Pack 2 (3033889) | Remote Code Execution | Critical | None |
Windows Vista x64 Edition Service Pack 2 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2008 | |||
Windows Server 2008 for 32-bit Systems Service Pack 2 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 for 32-bit Systems Service Pack 2 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2008 for x64-based Systems Service Pack 2 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 for x64-based Systems Service Pack 2 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2008 for Itanium-based Systems Service Pack 2 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 for Itanium-based Systems Service Pack 2 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows 7 | |||
Windows 7 for 32-bit Systems Service Pack 1 (3033889) | Remote Code Execution | Critical | None |
Windows 7 for 32-bit Systems Service Pack 1 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows 7 for x64-based Systems Service Pack 1 (3033889) | Remote Code Execution | Critical | None |
Windows 7 for x64-based Systems Service Pack 1 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2008 R2 | |||
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2008 R2 for Itanium-based Systems Service Pack 1 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 R2 for Itanium-based Systems Service Pack 1 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows 8 and Windows 8.1 | |||
Windows 8 for 32-bit Systems (3033889) | Remote Code Execution | Critical | None |
Windows 8 for 32-bit Systems (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows 8 for x64-based Systems (3033889) | Remote Code Execution | Critical | None |
Windows 8 for x64-based Systems (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows 8.1 for 32-bit Systems (3033889) | Remote Code Execution | Critical | None |
Windows 8.1 for 32-bit Systems (3039066) | Remote Code Execution | Critical | 2926765 and 2962123 in MS14-027 |
Windows 8.1 for x64-based Systems (3033889) | Remote Code Execution | Critical | None |
Windows 8.1 for x64-based Systems (3039066) | Remote Code Execution | Critical | 2926765 and 2962123 in MS14-027 |
Windows Server 2012 and Windows Server 2012 R2 | |||
Windows Server 2012 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2012 (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2012 R2 (3033889) | Remote Code Execution | Critical | None |
Windows Server 2012 R2 (3039066) | Remote Code Execution | Critical | 2926765 and 2962123 in MS14-027 |
Windows RT and Windows RT 8.1 | |||
Windows RT[1](3033889) | Remote Code Execution | Critical | None |
Windows RT[1](3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows RT 8.1[1](3033889) | Remote Code Execution | Critical | None |
Windows RT 8.1[1](3039066) | Remote Code Execution | Critical | 2926765 and 2962123 in MS14-027 |
Server Core installation option | |||
Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation) (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation) (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation) (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation) (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation) (3033889) | Remote Code Execution | Critical | None |
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation) (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2012 (Server Core installation) (3033889) | Remote Code Execution | Critical | None |
Windows Server 2012 (Server Core installation) (3039066) | Remote Code Execution | Critical | 2926765 in MS14-027 |
Windows Server 2012 R2 (Server Core installation) (3033889) | Remote Code Execution | Critical | None |
Windows Server 2012 R2 (Server Core installation) (3039066) | Remote Code Execution | Critical | 2926765 and 2962123 in MS14-027 |
Note The updates are available for Windows Technical Preview and Windows Server Technical Preview. Customers running these operating systems are encouraged to apply the updates, which are available via Windows Update.
[1]This update is available via Windows Update only.
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 March bulletin summary.
Vulnerability Severity Rating and Maximum Security Impact by Affected Software | |||
---|---|---|---|
Affected Software | WTS Remote Code Execution Vulnerability - CVE-2015-0081 | DLL Planting Remote Code Execution Vulnerability - CVE-2015-0096 | Aggregate Severity Rating |
Windows Server 2003 | |||
Windows Server 2003 Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2003 Service Pack 2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2003 x64 Edition Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2003 x64 Edition Service Pack 2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2003 with SP2 for Itanium-based Systems (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2003 with SP2 for Itanium-based Systems (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Vista | |||
Windows Vista Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Vista Service Pack 2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Vista x64 Edition Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Vista x64 Edition Service Pack 2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2008 | |||
Windows Server 2008 for 32-bit Systems Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 for 32-bit Systems Service Pack 2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2008 for x64-based Systems Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 for x64-based Systems Service Pack 2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2008 for Itanium-based Systems Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 for Itanium-based Systems Service Pack 2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows 7 | |||
Windows 7 for 32-bit Systems Service Pack 1 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows 7 for 32-bit Systems Service Pack 1 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows 7 for x64-based Systems Service Pack 1 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows 7 for x64-based Systems Service Pack 1 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2008 R2 | |||
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2008 R2 for Itanium-based Systems Service Pack 1 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 R2 for Itanium-based Systems Service Pack 1 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows 8 and Windows 8.1 | |||
Windows 8 for 32-bit Systems (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows 8 for 32-bit Systems (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows 8 for x64-based Systems (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows 8 for x64-based Systems (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows 8.1 for 32-bit Systems (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows 8.1 for 32-bit Systems (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows 8.1 for x64-based Systems (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows 8.1 for x64-based Systems (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2012 and Windows Server 2012 R2 | |||
Windows Server 2012 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2012 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2012 R2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2012 R2 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows RT and Windows RT 8.1 | |||
Windows RT (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows RT (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows RT 8.1 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows RT 8.1 (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Server Core installation option | |||
Windows Server 2008 for 32-bit Systems Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation) (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2008 for x64-based Systems Service Pack 2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation) (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation) (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2012 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2012 (Server Core installation) (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Windows Server 2012 R2 (3033889) | Critical Remote Code Execution | Not applicable | Critical |
Windows Server 2012 R2 (Server Core installation) (3039066) | Not applicable | Critical Remote Code Execution | Critical |
Vulnerability Information
WTS Remote Code Execution Vulnerability - CVE-2015-0081
A remote code execution vulnerability exists when Windows Text Services improperly handles objects in memory. An attacker who successfully exploited this vulnerability could run arbitrary code in the context of the logged-on user.
To exploit this vulnerability, an attacker would have to convince a user to browse to a specially crafted website or open a specially crafted file. The update addresses the vulnerability by correcting how Microsoft Text Services handles objects in memory.
Microsoft received information about this vulnerability through coordinated vulnerability disclosure. When this security bulletin was originally issued Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers.
Mitigating Factors
Microsoft has not identified any mitigating factors for this vulnerability.
Workarounds
Microsoft has not identified any workarounds for this vulnerability.
DLL Planting Remote Code Execution Vulnerability - CVE-2015-0096
A remote code execution vulnerability exists when Microsoft Windows improperly handles the loading of DLL files. 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.
The vulnerability exists when Windows parses shortcuts in a way that could allow malicious code to be executed when the icon of a specially crafted shortcut is displayed. For the vulnerability to be exploited a user would have to use Windows Explorer to browse to a malicious website, remote network share, or local working directory (note that other methods of browsing to a working directory, such as via cmd.exe or powershell.exe, do NOT trigger the exploit). Additionally, the vulnerability could be exploited through USB removable drives, particularly on systems where AutoPlay has been enabled.
After the user browses to the malicious directory, the specially crafted DLL it contains is loaded into memory, giving the attacker control of the affected system in the security context of the logged-on user. The update addresses the vulnerability by correcting how Microsoft Windows handles the loading of DLL files.
Microsoft received information about this vulnerability through coordinated vulnerability disclosure. When this security bulletin was originally issued Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers.
Mitigating Factors
Microsoft has not identified any mitigating factors for this vulnerability.
Workarounds
The following workarounds may be helpful in your situation:
Disable the displaying of icons for shortcuts
Note See Microsoft Knowledge Base Article 2286198 to use the automated Microsoft Fix it solution to enable or disable this workaround. This Fix it solution requires a restart upon completion in order to be effective. This Fix it solution deploys the workaround, and thus has the same user impact. We recommend that administrators review the KB article closely prior to deploying this Fix it solution.
Note 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 (Regedit.exe) or view the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe.
Click Start, click Run, type Regedit in the Open box, and then click OK.
Locate and then select the following registry key:
HKEY_CLASSES_ROOT\lnkfile\shellex\IconHandler
Click the File menu and then click Export.
In the Export Registry File dialog box, enter LNK_Icon_Backup.reg and then click Save.
Note This will create a backup of this registry key in the My Documents folder by default.Select the value (Default) on the right pane in Registry Editor. Press Enter to edit the value of the key. Delete the value, so that the value is blank, and press Enter.
Locate and then select the following registry key:
HKEY_CLASSES_ROOT\piffile\shellex\IconHandler
Click the File menu and then click Export.
In the Export Registry File dialog box, enter PIF_Icon_Backup.reg and then click Save.
Note This creates a backup of this registry key in the My Documents folder by default.Select the value (Default) on the right pane in Registry Editor. Press Enter to edit the value of the key. Delete the value, so that the value is blank, and press Enter.
Log all users off and on again, or restart the computer.
Impact of workaround. Disabling icons from being displayed for shortcuts prevents the issue from being exploited on affected systems. When this workaround is implemented, the system may display most icons as a "white" default object icon, which does impact usability. We recommend that system administrators test this workaround thoroughly prior to deployment. When the workaround is undone, all icons will reappear.
How to undo the workaround.
Using the interactive method:
- Click Start, click Run, type Regedit in the Open box, and then click OK.
- Click the File menu and then click Import.
- In the Import Registry File dialog box, select LNK_Icon_Backup.reg, and then click Open.
- Click the File menu and then click Import.
- In the Import Registry File dialog box, select PIF_Icon_Backup.reg, and then click Open.
- Exit Registry Editor, and then restart the computer.
Manually resetting the Registry key values to the default values:
Click Start, click Run, type Regedit in the Open box, and then click OK.
Locate and then click the following registry key:
HKEY_CLASSES_ROOT\lnkfile\shellex\IconHandler
Reset the registry key value to:
{00021401-0000-0000-C000-000000000046}
Locate and then click the following registry key:
HKEY_CLASSES_ROOT\piffile\shellex\IconHandler
Reset the registry key value to:
{00021401-0000-0000-C000-000000000046}
Restart the computer
Disable the WebClient service
Disabling the WebClient service helps protect affected systems from attempts to exploit this vulnerability by blocking the most likely remote attack vector through the Web Distributed Authoring and Versioning (WebDAV) client service. After applying this workaround it is still possible for remote attackers who successfully exploit this vulnerability to cause Microsoft Office Outlook to run programs located on the targeted user's computer or the Local Area Network (LAN), but users will be prompted for confirmation before opening arbitrary programs from the Internet.
To disable the WebClient Service, follow these steps:
- Click Start, click Run, type Services.msc and then click OK.
- Right-click WebClient service and select Properties.
- Change the Startup type to Disabled. If the service is running, click Stop.
- Click OK and exit the management application.
Impact of workaround. When the WebClient service is disabled, Web Distributed Authoring and Versioning (WebDAV) requests are not transmitted. In addition, any services that explicitly depend on the Web Client service will not start, and an error message will be logged in the System log. For example, WebDAV shares will be inaccessible from the client computer.
How to undo the workaround:
To re-enable the WebClient Service, follow these steps:
- Click Start, click Run, type Services.msc and then click OK.
- Right-click WebClient service and select Properties.
- Change the Startup type to Automatic. If the service is not running, click Start.
- Click OK and exit the management application.
Security Update Deployment
For Security Update Deployment information, see the Microsoft Knowledge Base article referenced 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 (March 10, 2015): Bulletin published.
- V1.1 (March 10, 2015): Bulletin revised to better explain the attack vector for the DLL Planting Remote Code Execution Vulnerability (CVE-2015-0096).
Page generated 2015-03-11 10:30Z-07:00.