Vulnerability Note VU#456745
ActiveX controls built with Microsoft ATL fail to properly handle initialization data
Overview
ActiveX controls that are built using a Microsoft ATL template may fail to properly handle initialization data, which may allow a remote, unauthenticated attacker to execute arbitrary code on a vulnerable system.
Description
Microsoft Active Template Library (ATL) is a set of C++ classes that are designed to simplify the creation of COM objects and ActiveX controls. An ActiveX control can be designated as "safe for scripting," which means that it can be used by an untrusted caller such as JavaScript in a web page, and/or it may be designated as "safe for initialization," which means that it can accept untrusted initialization data. ActiveX controls that are developed using the Microsoft ATL technology may fail to properly handle initialization data. The specific vulnerabilities include the use of uninitialized objects, unsafe usage of OleLoadFromStream, and the failure to check for a terminating NULL character. This may result in memory corruption that can be leveraged to execute code, or it may bypass Internet Explorer kill bit restrictions on unsafe controls. |
Impact
By convincing a user to view a specially crafted HTML document (e.g., a web page or an HTML email message or attachment), an attacker may be able to execute arbitrary code. |
Solution
Apply an update This vulnerability has been addressed in the update for Internet Explorer provided in Microsoft Security Bulletin MS09-034. This update helps prevent ActiveX controls that were built with the vulnerable ATL versions from being initialized with unsafe data patterns in Internet Explorer. This also includes techniques that can be used to bypass the kill bit in Internet Explorer. |
Systems Affected (Learn More)
| Vendor | Status | Date Notified | Date Updated |
|---|---|---|---|
| Adobe | Affected | - | 30 Jul 2009 |
| Aurigma Inc. | Affected | 28 Jul 2009 | 29 Jul 2009 |
| Cisco Systems, Inc. | Affected | 28 Jul 2009 | 29 Jul 2009 |
| F5 Networks, Inc. | Affected | 28 Jul 2009 | 29 Jul 2009 |
| Microsoft Corporation | Affected | - | 28 Jul 2009 |
| OSISoft | Affected | - | 04 Aug 2009 |
| SoftArtisans, Inc | Affected | 28 Jul 2009 | 24 Feb 2010 |
| SonicWall | Affected | 28 Jul 2009 | 28 Oct 2009 |
| Sun Microsystems, Inc. | Affected | - | 05 Aug 2009 |
| Apple Inc. | Not Affected | 28 Jul 2009 | 31 Jul 2009 |
| IBM Corporation | Not Affected | 28 Jul 2009 | 29 Jul 2009 |
| LogicNP | Not Affected | 28 Jul 2009 | 30 Jul 2009 |
| VanDyke Software | Not Affected | 28 Jul 2009 | 04 Aug 2009 |
| Alcatel-Lucent | Unknown | 28 Jul 2009 | 28 Jul 2009 |
| America Online, Inc. | Unknown | 28 Jul 2009 | 28 Jul 2009 |
CVSS Metrics (Learn More)
| Group | Score | Vector |
|---|---|---|
| Base | N/A | N/A |
| Temporal | N/A | N/A |
| Environmental | N/A | N/A |
References
- http://www.kb.cert.org/vuls/id/180513
- http://www.microsoft.com/technet/security/bulletin/ms09-034.mspx
- http://www.microsoft.com/technet/security/bulletin/ms09-035.mspx
- http://www.microsoft.com/security/atl.aspx
- http://blogs.technet.com/msrc/archive/2009/07/28/microsoft-security-advisory-973882-microsoft-security-bulletins-ms09-034-and-ms09-035-released.aspx
- http://blogs.msdn.com/sdl/archive/2009/07/28/atl-ms09-035-and-the-sdl.aspx
- http://blogs.technet.com/ecostrat/archive/2009/07/27/threat-complexity-requires-new-levels-of-collaboration.aspx
- http://www.microsoft.com/technet/security/advisory/973882.mspx
- http://msdn.microsoft.com/en-us/library/ms680103(VS.85).aspx
- http://msdn.microsoft.com/en-us/library/aa751977(VS.85).aspx
- http://msdn.microsoft.com/en-us/library/t9adwcde(VS.80).aspx
- http://support.microsoft.com/kb/168371
- http://support.microsoft.com/kb/240797
- http://blogs.adobe.com/psirt/2009/07/impact_of_microsoft_atl_vulner.html
- http://www.adobe.com/support/security/advisories/apsa09-04.html
- http://www.adobe.com/support/security/bulletins/apsb09-10.html
- http://www.adobe.com/support/security/bulletins/apsb09-11.html
- http://addxorrol.blogspot.com/2009/07/poking-around-msvidctldll.html
- http://blogs.technet.com/srd/archive/2009/07/28/msvidctl-ms09-032-and-the-atl-vulnerability.aspx
- http://blogs.technet.com/srd/archive/2009/07/28/atl-vulnerability-developer-deep-dive.aspx
- http://blogs.technet.com/srd/archive/2009/07/28/internet-explorer-mitigations-for-atl-data-stream-vulnerabilities.aspx
- http://blogs.technet.com/srd/archive/2009/07/28/overview-of-the-out-of-band-release.aspx
- http://blogs.technet.com/bluehat/archive/2009/07/27/black-hat-usa-atl-killbit-bypass.aspx
- http://support.softartisans.com/kbview.aspx?ID=1331
Credit
Thanks to Microsoft for reporting this vulnerability, who in turn credit David Dewey of IBM ISS X-Force and Ryan Smith of Verisign iDefense labs.
This document was written by Will Dormann.
Other Information
- CVE IDs: CVE-2009-0901 CVE-2009-2493 CVE-2009-2495
- US-CERT Alert: TA09-209A
- Date Public: 09 Jul 2009
- Date First Published: 28 Jul 2009
- Date Last Updated: 24 Feb 2010
- Severity Metric: 47.08
- Document Revision: 44
Feedback
If you have feedback, comments, or additional information about this vulnerability, please send us email.