Adobe Reader geticon Buffer Overflow (Mar 27, 2009)

By

Adobe Reader (formerly Acrobat Reader) is a ubiquitous application for viewing PDF (Portable Document Format) documents.

Since version 4.0, Acrobat includes JavaScript functionality allowing for customization and extensibility. Acrobat JavaScript is an extension of the core JavaScript which adds Acrobat-specific classes that enable the author to manage document related tasks. These classes include app, dbg, console, SOAP, ADBC, util, etc.

The app.Collab object provides the getIcon method, which accepts an string argument that serves as the name of an icon. The supplied path string must contains one of “N”, “D”, “H” characters followed by a “.” character. For example:

app.Collab.getIcon(“A_EmailDistribute_110x64_N.png”)

There exists a buffer overflow vulnerability in Adobe Reader. Specifically, the vulnerability is due to incorrect validation of values supplied to the “app.Collab.getIcon()” JavaScript function. By providing a overly long string to the function, the stack-based buffer will be overrun. The buffer overflow condition could allow for overwriting return address and SEH structure on the stack.

An attacker can exploit this vulnerability by enticing a user to open a crafted PDF document. Successful exploitation would allow for arbitrary code injection and execution with the privileges of the currently logged in user. Code injection that does not result in execution would terminate the application due to memory corruption.

The vulnerability has been assigned as CVE-2009-0927.

SonicWALL has released a IPS signature to detect and block specific exploitation attempts targeting this vulnerability. The signature is listed bellow:

  • 5446 – Adobe Acrobat JavaScript getIcon Method BO Attempt
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.