Microsoft Security Bulletin MS14-014 - Important

Vulnerability in Silverlight Could Allow Security Feature Bypass (2932677)

Published: March 11, 2014

Version: 1.0

General Information

Executive Summary

This security update resolves a privately reported vulnerability in Microsoft Silverlight. The vulnerability could allow security feature bypass if an attacker hosts a website that contains specially crafted Silverlight content that is designed to exploit the vulnerability, and then convinces a user to view the website. In all cases, however, an attacker would have no way to force users to visit a website. Instead, an attacker would have to convince users to visit a website, typically by getting them to click a link in an email message or in an Instant Messenger message that takes them to the attacker's website. It could also be possible to display specially crafted web content by using banner advertisements or by using other methods to deliver web content to affected systems.

This security update is rated Important for Microsoft Silverlight 5 and Microsoft Silverlight 5 Developer Runtime when installed on Mac and all supported releases of Microsoft Windows. For more information, see the subsection, Affected and Non-Affected Software, in this section.

The security update upgrades previous versions of Silverlight to Silverlight version 5.1.30214.0, which is the first version of Silverlight 5 that is not affected by the vulnerability. The update addresses the vulnerability by modifying functionality to maintain the integrity of DEP (Data Execution Prevention) and Address Space Layout Randomization (ASLR) in Silverlight. For more information about the vulnerability, see the Frequently Asked Questions (FAQ) subsection under the next section, Vulnerability Information.

Recommendation. Most customers have automatic updating enabled and will not need to take any action because this security update will be downloaded and installed automatically. Customers who have not enabled automatic updating need to check for updates and install this update manually. For information about specific configuration options in automatic updating, see Microsoft Knowledge Base Article 294871.

For administrators and enterprise installations, or end users who want to install this security update manually, Microsoft recommends that customers apply the update at the earliest using update management software, or by checking for updates using the Microsoft Update service.

See also the section, Detection and Deployment Tools and Guidance, later in this bulletin.

Knowledge Base Article

  • Knowledge Base Article: 2932677
  • File information: Yes
  • SHA1/SHA2 hashes: Yes
  • Known Issues: None

 

Affected and Non-Affected Software

The following software has been tested to determine which versions or editions are affected. Other versions or editions 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.

Affected Software 

Operating System Maximum Security Impact Aggregate Severity Rating Updates Replaced
Microsoft Silverlight 5
Microsoft Silverlight 5 when installed on Mac (2932677) Security Feature Bypass Important 2890788 in MS13-087
Microsoft Silverlight 5 Developer Runtime when installed on Mac (2932677) Security Feature Bypass Important 2890788 in MS13-087
Microsoft Silverlight 5 when installed on all supported releases of Microsoft Windows clients (2932677) Security Feature Bypass Important 2890788 in MS13-087
Microsoft Silverlight 5 Developer Runtime when installed on all supported releases of Microsoft Windows clients (2932677) Security Feature Bypass Important 2890788 in MS13-087
Microsoft Silverlight 5 when installed on all supported releases of Microsoft Windows servers (2932677) Security Feature Bypass Important 2890788 in MS13-087
Microsoft Silverlight 5 Developer Runtime when installed on all supported releases of Microsoft Windows servers (2932677) Security Feature Bypass Important 2890788 in MS13-087

Update FAQ

Which web browsers support Microsoft Silverlight applications ?
In order to run Microsoft Silverlight applications, most web browsers, including Microsoft Internet Explorer, require Microsoft Silverlight to be installed and the corresponding plug-in to be enabled. For more information about Microsoft Silverlight, see the official site, Microsoft Silverlight. Please refer to the documentation of your browser to learn more about how to disable or remove plug-ins.

What versions of Microsoft Silverlight 5 are affected by the vulnerability ?
Microsoft Silverlight build 5.1.30214.0, which was the current build of Microsoft Silverlight as of when this bulletin was first released, addresses the vulnerability and is not affected. Builds of Microsoft Silverlight previous to 5.1.30214.0 are affected.

How do I know which version and build of Microsoft Silverlight is currently installed on my system?
If Microsoft Silverlight is already installed on your computer, you can visit the Get Microsoft Silverlight page, which will indicate which version and build of Microsoft Silverlight is currently installed on your system. Alternatively, you can use the Manage Add-Ons feature of current versions of Microsoft Internet Explorer to determine the version and build information that is currently installed on your system.

You can also manually check the version number of sllauncher.exe located in the "%ProgramFiles%\Microsoft Silverlight" directory (on x86 Microsoft Windows systems) or in the "%ProgramFiles(x86)%\Microsoft Silverlight" directory (on x64 Microsoft Windows systems).

In addition, on Microsoft Windows, the version and build information of the currently installed version of Microsoft Silverlight can be found in the registry at [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Silverlight]:Version on x86 Microsoft Windows systems, or [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Silverlight]:Version on x64 Microsoft Windows systems.

On Apple Mac OS, the version and build information of the currently installed version of Microsoft Silverlight can be found as follows:

  1. Open the Finder
  2. Select the system drive and go to the folder Internet Plug-ins - Library
  3. Right-click the file Silverlight.Plugin (if your mouse has only one button, press the Ctrl key while clicking on the file) to bring up the context menu, then click Show Package Contents
  4. Inside the contents folder, locate the file info.plist and open it with an editor. It will contain an entry like this, which shows you the version number: SilverlightVersion 5.1.30214.0

The version installed with this security update for Microsoft Silverlight 5 is 5.1.30214.0. If your Microsoft Silverlight 5 version number is higher than or equal to this version number, your system is not vulnerable.

How do I upgrade my version of Microsoft Silverlight?
The Microsoft Silverlight auto-update feature helps make sure that your Microsoft Silverlight installation is kept up to date with the latest version of Microsoft Silverlight, Microsoft Silverlight functionality, and security features. For more information about the Microsoft Silverlight auto-update feature, see the Microsoft Silverlight Updater. Windows users who have disabled the Microsoft Silverlight auto-update feature can enroll in Microsoft Update to obtain the latest version of Microsoft Silverlight, or can download the latest version of Microsoft Silverlight manually using the download link in the Affected Software table in the earlier section, Affected and Non-Affected Software. For information about deploying Microsoft Silverlight in an enterprise environment, see the Silverlight Enterprise Deployment Guide.

Will this update upgrade my version of Silverlight?
The 2932677 update upgrades previous versions of Silverlight to Silverlight version 5.1.30214.0. Microsoft recommends upgrading to be protected against the vulnerability described in this bulletin.

Where can I find additional information about the Silverlight product lifecycle ?
For lifecycle information specific to Silverlight, see the Microsoft Silverlight Support Lifecycle Policy.

I am using an older release of the software discussed in this security bulletin. What should I do?
The affected software listed in this bulletin has been tested to determine which releases are affected. Other releases are past their support life cycle. For more information about the product lifecycle, see the Microsoft Support Lifecycle website.

It should be a priority for customers who have older releases of the software to migrate to supported releases to prevent potential exposure to vulnerabilities. To determine the support lifecycle for your software release, see Select a Product for Lifecycle Information. For more information about service packs for these software releases, see Service Pack Lifecycle Support Policy.

Customers who require custom support for older software must contact their Microsoft account team representative, their Technical Account Manager, or the appropriate Microsoft partner representative for custom support options. Customers without an Alliance, Premier, or Authorized Contract can contact their local Microsoft sales office. For contact information, see the Microsoft Worldwide Information website, select the country in the Contact Information list, and then click Go to see a list of telephone numbers. When you call, ask to speak with the local Premier Support sales manager. For more information, see the Microsoft Support Lifecycle Policy FAQ.

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. For more information, see Microsoft Exploitability Index.

Vulnerability Severity Rating and Maximum Security Impact by Affected Software
Affected Software Silverlight DEP/ASLR Bypass Vulnerability - CVE-2014-0319 Aggregate Severity Rating
Microsoft Silverlight 5
Microsoft Silverlight 5 when installed on Mac Important Security Feature Bypass Important
Microsoft Silverlight 5 Developer Runtime when installed on Mac Important Security Feature Bypass Important
Microsoft Silverlight 5 when installed on all supported releases of Microsoft Windows clients Important Security Feature Bypass Important
Microsoft Silverlight 5 Developer Runtime when installed on all supported releases of Microsoft Windows clients Important Security Feature Bypass Important
Microsoft Silverlight 5 when installed on all supported releases of Microsoft Windows servers Important Security Feature Bypass Important
Microsoft Silverlight 5 Developer Runtime when installed on all supported releases of Microsoft Windows servers Important Security Feature Bypass Important

Silverlight DEP/ASLR Bypass Vulnerability - CVE-2014-0319

A security feature bypass vulnerability exists in Silverlight due to improper implementation of Data Execution Protection (DEP) and Address Space Layout Randomization (ASLR). The vulnerability could allow an attacker to bypass the DEP/ASLR security feature, most likely during or in the course of exploiting a remote code execution vulnerability.

To view this vulnerability as a standard entry in the Common Vulnerabilities and Exposures list, see CVE-2014-0319.

Mitigating Factors

Mitigation refers to a setting, common configuration, or general best-practice, existing in a default state, that could reduce the severity of exploitation of a vulnerability. The following mitigating factors may be helpful in your situation:

  • In a web browsing attack scenario, an attacker could host a website that contains a webpage that is used to exploit this vulnerability. In addition, compromised websites and websites that accept or host user-provided content or advertisements could contain specially crafted content that could exploit this vulnerability. In all cases, however, an attacker would have no way to force users to visit these websites. Instead, an attacker would have to convince users to visit the website, typically by getting them to click a link in an email message or Instant Messenger message that takes users to the attacker's website.
  • An attacker who successfully exploited this vulnerability in conjunction with another vulnerability, such as a remote code execution vulnerability, could gain the same user rights as the current user. 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.
  • By default, Internet Explorer on Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, and Windows Server 2012 runs in a restricted mode that is known as Enhanced Security Configuration. This mode mitigates this vulnerability. See the FAQ section of this security update for more information about Internet Explorer Enhanced Security Configuration.

Workarounds

Workaround refers to a setting or configuration change that does not correct the underlying vulnerability but would help block known attack vectors before you apply the update. Microsoft has tested the following workarounds and states in the discussion whether a workaround reduces functionality:

  • Temporarily prevent Microsoft Silverlight from running in Internet Explorer

    Temporarily disabling Silverlight in Internet Explorer can help protect against this vulnerability. To disable Silverlight in Internet Explorer, follow these steps:

    1. In Internet Explorer, click the Tools menu and then click Internet Options.
    2. Click the Programs tab and then click Manage add-ons.
    3. In the Toolbars and Extensions list, find "Microsoft Silverlight," and then click Disable.
  • Temporarily prevent Microsoft Silverlight from running in Mozilla Firefox

    Temporarily disabling Silverlight in Mozilla Firefox can help protect against this vulnerability. To disable Silverlight in Firefox, follow these steps:

    1. In Firefox, click the Tools menu and then click Addons.
    2. In the Addons window, click the Plugins tab.
    3. Find the Silverlight plugin and then click Disable.
  • Temporarily prevent Microsoft Silverlight from running in Google Chrome

    Temporarily disabling Silverlight in Google Chrome can help protect against this vulnerability. To disable Silverlight in Chrome, follow these steps:

    1. In Chrome's address bar, type about:plugins.
    2. In the page that appears, find the Silverlight plugin and disable it.

FAQ

What is the scope of the vulnerability?
This is a security feature bypass vulnerability.

What causes the vulnerability?
The vulnerability is caused when Microsoft Silverlight incorrectly implements DEP/ASLR security features, allowing an attacker to more reliably predict the memory offsets of specific instructions in a given call stack.

What is Microsoft Silverlight?
Microsoft Silverlight is a cross-browser, cross-platform implementation of the Microsoft .NET Framework for building media experiences and rich interactive applications for the web. For more information, see the official site of Microsoft Silverlight.

What is ASLR?
Address Space Layout Randomization (ASLR) moves executable images into random locations when a system boots, which helps prevent an attacker from leveraging data at predictable locations. For a component to support ASLR, all components that it loads must also support ASLR. For example, if A.exe consumes B.dll and C.dll, all three must support ASLR. By default, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, Windows 8.1, Windows RT, Windows RT 8.1, Windows Server 2012, and Windows Server 2012 R2 will randomize system DLLs and EXEs, but DLLs and EXEs created by Independent Software Vendors (ISVs) must opt in to support ASLR using the /DYNAMICBASE linker option.

ASLR also randomizes heap and stack memory:

  • When an application creates a heap in Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, Windows 8.1, Windows RT, Windows RT 8.1, Windows Server 2012, and Windows Server 2012 R2, the heap manager will create that heap at a random location to help reduce the chance that an attempt to exploit a heap-based buffer overrun succeeds. Heap randomization is enabled by default for all applications running on Windows Vista and later.
  • When a thread starts in a process linked with /DYNAMICBASE, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, Windows 8.1, Windows RT, Windows RT 8.1, Windows Server 2012, and Windows Server 2012 R2 move the thread's stack to a random location to help reduce the chance that a stack-based buffer overrun exploit will succeed.

What is DEP?
DEP (Data Execution Prevention) is a hardware and software solution for preventing the execution of code from pages of memory that are not explicitly marked as executable. Windows XP SP2, Windows Server 2003 SP1, and later operating systems check if the CPU supports enforcement of the ‘no execute’ or ‘execute disable bit’ for a page of memory.

  • Before Windows XP SP2, an exploit ("code") could execute from memory allocated without the execute memory protection constant set. For example, if a page of memory were allocated using the VirtualAlloc() function specifying PAGE_READWRITE, it was still possible to execute code from that page of memory. Starting with Windows XP SP2 and Windows Server 2003 SP1, if the CPU supports the execute disable (XD - Intel CPUs) or no execute (NX - AMD CPUs) bits, any attempts to execute code from a page of memory with a (for example) PAGE_READWRITE memory protection will generate a STATUS_ACCESS_VIOLATION (0xC0000005) access violation exception. For more information on how hardware enforced DEP works please refer to Memory Protection Technologies.
  • DEP is "always on" for 64bit processes on 64bit versions of Windows and it cannot be disabled. The Windows DEP policy can be managed on both a system-wide and per-process basis and both approaches will be discussed below. This blog post will apply specifically to 32bit processes running on either a 32bit or 64bit version of Windows.

What might an attacker use the vulnerability to do?
In a web-browsing attack scenario, an attacker who successfully exploited this vulnerability could bypass the DEP/ASLR security feature, which protects users from a broad class of vulnerabilities. The security feature bypass by itself does not allow arbitrary code execution. However, an attacker could use this DEP/ASLR bypass vulnerability in conjunction with another vulnerability, such as a remote code execution vulnerability that could take advantage of the DEP/ASLR bypass to run arbitrary code.

How could an attacker exploit the vulnerability?
In a web-based attack scenario, an attacker could host a website with specially crafted Silverlight content to attempt to exploit this vulnerability. In addition, compromised websites and websites that accept or host user-provided content could contain specially crafted content that could exploit this vulnerability. An attacker would have no way to force users to visit a specially crafted website. Instead, an attacker would have to convince users to take action. For example, an attacker could trick users into clicking a link that takes them to the attacker's site.

When a user visits a website that contains malicious Silverlight content using a web browser, such as Internet Explorer, a DEP/ASLR bypass could be achieved.

An attacker could tie this security feature bypass vulnerability to an additional vulnerability, most likely a remote code execution vulnerability. The additional vulnerability could leverage the security feature bypass to effect exploitation. For example, a remote code execution vulnerability that is blocked by DEP/ASLR could be exploited after a successful DEP/ASLR bypass.

I am running Internet Explorer for Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, or Windows Server 2012. Does this mitigate this vulnerability?
Yes. By default, Internet Explorer on Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, and Windows Server 2012 runs in a restricted mode that is known as Enhanced Security Configuration. Enhanced Security Configuration is a group of preconfigured settings in Internet Explorer that can reduce the likelihood of a user or administrator downloading and running specially crafted web content on a server. This is a mitigating factor for websites that you have not added to the Internet Explorer Trusted sites zone.

Does EMET help mitigate attacks that could attempt to exploit this vulnerability?
Yes. The Enhanced Mitigation Experience Toolkit (EMET) enables users to manage security mitigation technologies that help make it more difficult for attackers to exploit vulnerabilities in a given piece of software. EMET helps to mitigate these vulnerabilities in Silverlight on systems where EMET is installed and configured to work with Internet Explorer.

For more information about EMET, see The Enhanced Mitigation Experience Toolkit.

What systems are primarily at risk from the vulnerability?
Workstations and terminal servers are primarily at risk. Servers could be at more risk if administrators allow users to log on to servers and to run programs. However, best practices strongly discourage allowing this.

What does the update do?
The update addresses the vulnerability by modifying functionality to maintain the integrity of DEP/ASLR in Silverlight.

When this security bulletin was issued, had this vulnerability been publicly disclosed?
No. Microsoft received information about this vulnerability through coordinated vulnerability disclosure.

When this security bulletin was issued, had Microsoft received any reports that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers when this security bulletin was originally issued.

Detection and Deployment Tools and Guidance

Several resources are available to help administrators deploy security updates.

  • Microsoft Baseline Security Analyzer (MBSA) lets administrators scan local and remote systems for missing security updates and common security misconfigurations.
  • Windows Server Update Services (WSUS), Systems Management Server (SMS), and System Center Configuration Manager help administrators distribute security updates.
  • The Update Compatibility Evaluator components included with Application Compatibility Toolkit aid in streamlining the testing and validation of Windows updates against installed applications.

For information about these and other tools that are available, see Security Tools for IT Pros.

Note Windows detection and deployment tools do not apply to Mac systems. However, Mac users can use the Microsoft Silverlight auto-update feature, which helps ensure that systems are up-to-date with the latest version of Microsoft Silverlight, Microsoft Silverlight functionality, and security features. For more information about the Microsoft Silverlight auto-update feature, see Microsoft Silverlight Updater.

Security Update Deployment

Silverlight 5 for Mac (all editions)

Reference Table

The following table contains the security update information for this software.

Security update file names For Microsoft Silverlight 5 when installed on Mac:\ Silverlight.dmg
\ For Microsoft Silverlight 5 Developer Runtime when installed on Mac:\ silverlight_developer.dmg
Restart requirement This update does not require a restart.
Removal information Open the Finder, select the system drive, go to the folder Internet Plug-ins - Library, and delete the file Silverlight.Plugin. (Note that the update cannot be removed without removing the Silverlight plug-in.)
File information See Microsoft Knowledge Base Article 2932677
Installation verification See the Update FAQ section in this bulletin that addresses the question, "How do I know which version and build of Microsoft Silverlight is currently installed?"

Silverlight 5 for Windows (all supported releases)

Reference Table

The following table contains the security update information for this software.

Security update file names For Microsoft Silverlight 5 when installed on all supported 32-bit releases of Microsoft Windows:\ silverlight.exe
\ For Microsoft Silverlight 5 Developer Runtime when installed on all supported 32-bit releases of Microsoft Windows:\ silverlight_developer.exe
\ For Microsoft Silverlight 5 when installed on all supported 64-bit releases of Microsoft Windows:\ silverlight_x64.exe
\ For Microsoft Silverlight 5 Developer Runtime when installed on all supported 64-bit releases of Microsoft Windows:\ silverlight_developer_x64.exe
Installation switches See the Silverlight Enterprise Deployment Guide
Restart requirement This update does not require a restart.
Removal information Use Add or Remove Programs item in Control Panel. (Note that the update cannot be removed without removing Silverlight.)
File information See Microsoft Knowledge Base Article 2932677
Registry key verification For 32-bit installations of Microsoft Silverlight 5:\ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Silverlight "Version" = "5.1.30214.0"
\ For 64-bit installations of Microsoft Silverlight 5:\ HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Silverlight "Version" = "5.1.30214.0"\ and\ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Silverlight "Version" = "5.1.30214.0"

Acknowledgments

Microsoft thanks the following for working with us to help protect customers:

Other Information

Microsoft Active Protections Program (MAPP)

To improve security protections for customers, Microsoft provides vulnerability information to major security software providers in advance of each monthly security update release. Security software providers can then use this vulnerability information to provide updated protections to customers via their security software or devices, such as antivirus, network-based intrusion detection systems, or host-based intrusion prevention systems. To determine whether active protections are available from security software providers, please go to the active protections websites provided by program partners, listed in Microsoft Active Protections Program (MAPP) Partners.

Support

How to obtain help and support for this security update

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 11, 2014): Bulletin published.

Page generated 2014-06-25 11:32Z-07:00.