Public Vulnerability Reports

Sun Java Runtine Environment (JRE) GIF Decoding Heap Corruption Vulnerability



The Sun Java JRE is Sun's implementation of the Java runtime. For more information, see the vendor's site found at the following link.


Remote exploitation of a heap corruption vulnerability in Sun Microsystems Inc.'s Java JRE could allow an attacker to execute arbitrary code with the privileges of the current user.

Values from the GIF file are used to calculate an offset to store data in a dynamic heap buffer. These values are not validated before use, which allows an attacker to store controlled data outside of the bounds of the allocated buffer. This leads to corruption of object pointers, which can be leveraged to execute arbitrary code.


Exploitation of this vulnerability results in the execution of arbitrary code with the privileges of the user viewing the web page. To exploit this vulnerability, a targeted user must load a malicious webpage created by an attacker. An attacker typically accomplishes this via social engineering or injecting content into compromised, trusted sites. After the user visits the malicious web page, no further user interaction is needed.

Since the attacker has the ability to use Java code to carefully sculpt the layout of the heap, this vulnerability can be reliably exploited.


iDefense has confirmed the existence of this vulnerability in Java JRE version 1.6_11. Previous versions may also be affected.

Sun Microsystems reports that the vulnerability can occur in the following Java SE and Java SE for Business releases for Windows, Solaris, and Linux:

 * JDK and JRE 6 Update 12 and earlier 

Note: JDK and JRE 5.0, SDK and JRE 1.4.2 and 1.3.1 are not affected.


iDefense is currently unaware of any workarounds for this issue. The vulnerability occurs in a core library used by JRE, so it is not possible to disable the code.


Sun Microsystem Inc. has released a patch which addresses this issue. For more information, consult their advisory at the following URL:


A Mitre Corp. Common Vulnerabilities and Exposures (CVE) number has not been assigned yet.


02/18/2009 - Initial Contact
02/18/2009 - PoC Requested
02/19/2009 - PoC Sent
03/10/2009 - Disclosure Date Set
03/25/2009 - Coordinated Public Disclosure


This vulnerability was reported to iDefense by regenrecht.

Get paid for vulnerability research

Free tools, research and upcoming events


Copyright © 2009 Verisign, 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 customer service 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.