iDefense Security Advisory 06.09.09 http://labs.idefense.com/intelligence/vulnerabilities/ Jun 09, 2009 I. BACKGROUND Adobe Acrobat Reader/Acrobat are programs for viewing and editing Portable Document Format (PDF) documents. For more information, see the vendor's site found at the following link. http://www.adobe.com/products/reader/ http://www.adobe.com/products/acrobatpro/ II. DESCRIPTION Remote exploitation of an integer overflow vulnerability in multiple versions of Adobe Systems Inc's Reader and Acrobat PDF reader and processor could allow an attacker to execute arbitrary code with the privileges of the current user. The vulnerability occurs when parsing a FlateDecode filter inside a PDF file. FlateDecode is a filter for data compressed with zlib deflate compression method. Several parameters can be specified for the FlateDecode filter. Those values are used in an arithmetic operation that calculates the number of bytes to allocate for a heap buffer. This calculation can overflow, which results in an undersized heap buffer being allocated. This buffer is then overflowed with data decompressed from the FlateDecode stream. This leads to a heap-based buffer overflow that can result in arbitrary code execution. III. ANALYSIS Exploitation of this vulnerability allows the attacker to execute arbitrary code with the privileges of the user opening the file. The attacker will have to create a malicious PDF file and convince the victim to open it. This can be accomplished by embedding the PDF file into an IFRAME inside of a Web page, which will result in automatic exploitation once the page is viewed. The file could also be e-mailed as an attachment or placed on a file share. In these cases, a user would have to manually open the file to trigger exploitation. If preview is enable in Windows Explorer, this vulnerability can be triggered simply by accessing a folder containing PDF files. IV. DETECTION Acrobat Reader and Acrobat Professional versions 7.1.0, 8.1.3, 9.0.0 and prior versions are vulnerable. V. WORKAROUND None of the following workarounds will prevent exploitation, but they can reduce potential attack vectors and make exploitation more difficult. Prevent PDF documents from being opened automatically by the Web browser Disable JavaScript Disable PDFShell extention by removing or renaming Acrord32info.exe file. Follow best practice methodologies by avoiding opening files from untrusted or unsolicited sources Deploy DEP (Data Execution Prevention) VI. VENDOR RESPONSE Adobe has released a patch which addresses this issue. For more information, consult their advisory (APSB09-07) at the following URL: http://www.adobe.com/support/security/bulletins/apsb09-07.html VII. CVE INFORMATION The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2009-1856 to this issue. This is a candidate for inclusion in the CVE list (http://cve.mitre.org/), which standardizes names for security problems. VIII. DISCLOSURE TIMELINE 02/25/2009 - Initial Contact 02/25/2009 - Initial Response 02/25/2009 - PoC Requested 02/25/2009 - PoC Sent 06/05/2009 - Tentative disclosure date of 06/09/2009 set 06/09/2009 - Coordinated public disclosure IX. CREDIT This vulnerability was discovered by Jun Mao and Ryan Smith, iDefense Labs Get paid for vulnerability research http://labs.idefense.com/methodology/vulnerability/vcp.php Free tools, research and upcoming events http://labs.idefense.com/ X. LEGAL NOTICES Copyright © 2009 iDefense, Inc. Permission is granted for the redistribution of this alert electronically. It may not be edited in any way without the express written consent of iDefense. If you wish to reprint the whole or any part of this alert in any other medium other than electronically, please e-mail customerservice@idefense.com for permission. Disclaimer: The information in the advisory is believed to be accurate at the time of publishing based on currently available information. Use of the information constitutes acceptance for use in an AS IS condition. There are no warranties with regard to this information. Neither the author nor the publisher accepts any liability for any direct, indirect, or consequential loss or damage arising from use of, or reliance on, this information.