Apple QuickTime QTPlugin Code Execution (Sept 2, 2010)

By

QuickTime is an extensible proprietary multimedia framework developed by Apple Inc., capable of handling various formats of digital video, picture, sound, panoramic images, and interactivity. It is available for Mac OS classic (System 7 onwards), Mac OS X and Microsoft Windows operating systems.

QuickTime provides the ability for third-party components, called QuickTime plugins. QTPlugin.ocx, a web browser plugin, is one of them, which is installed by default with Apple QuickTime. This plugin enables users to play many types of movies through a web browser. It is available for both Mac and Windows platforms. Users can configure in QuickTime what MIME types the QTPlugin should handle in a web browser. The supported MIME types include movie streaming (RTSP and SDP), AVI, FLC, QuickTime Movie, MPEG, MP3, and more.

This plugin can be instantiated as an ActiveX object either by using the ClassID or the Program ID. The QTPlugin.ocx is assigned the ClassID 02BF25D5-8C17-4B23-BC80-D3488ABDDC6B and the ProgID QuickTime.QuickTime. The object instantiation through the ClassID is done using the tag as following:

< object id="ctrl" classid="clsid:{02BF25D5-8C17-4B23-BC80-D3488ABDDC6B}" >

whereas the ProgID can be used either in JavaScript or VBScript as in the following, respectively:

var ctrl = new ActiveXObject("QuickTime.QuickTime"); Set ctrl = CreateObject("QuickTime.QuickTime")

The QTPlugin exposes various methods and parameters. One of the parameters supported by the QTPlugin control is _Marshaled_pUnk. The _Marshaled_pUnk parameter value represents a marshalled pointer value. Marshalling is a process of transforming the memory representation of data to a format that is suitable for storage or transmission.

A code execution vulnerability exists in Apple QuickTime player web browser plugin. Specifically, the vulnerability is due to a design error while parsing the value of the _Marshaled_pUnk parameter. A remote attacker can exploit this vulnerability to execute arbitrary code in the security context of the logged in user.

SonicWALL UTM team has researched this vulnerability and released IPS signatures for an attack attempts addressing this issue:

  • 5592 Apple QuickTime ActiveX _Marshaled_pUnk Attribute Setting

The vendor has released an advisory regarding this issue. The vulnerability has been assigned CVE-2010-0211 by mitre.

Security News
The SonicWall Capture Labs Threat Research Team gathers, analyzes and vets cross-vector threat information from the SonicWall Capture Threat network, consisting of global devices and resources, including more than 1 million security sensors in nearly 200 countries and territories. The research team identifies, analyzes, and mitigates critical vulnerabilities and malware daily through in-depth research, which drives protection for all SonicWall customers. In addition to safeguarding networks globally, the research team supports the larger threat intelligence community by releasing weekly deep technical analyses of the most critical threats to small businesses, providing critical knowledge that defenders need to protect their networks.

Pin It on Pinterest