Sun Java Runtime Environment MixerSequencer Invalid Array Index Remote Code Execution VulnerabilityZDI-10-060: April 5th, 2010
TippingPoint™ IPS Customer ProtectionTippingPoint IPS customers are protected against this vulnerability by Digital Vaccine protection filter ID 9651. For further product information on the TippingPoint IPS:
This vulnerability allows remote attackers to execute arbitrary code on vulnerable installations of Sun's Java Runtime Environment. User interaction is required to exploit this vulnerability in that the target must visit a malicious page.
The specific flaw exists within the handling of MixerSequencer objects. When this object is used to play a MIDI file, the GM_Song structure is populated with song data. In particular, it stores a integer value from the file and uses it later as an index into an array of function pointers. If this value is over 128 the process can be made to call a pointer outside the array. This can be leveraged to execute arbitrary code under the context of the user running the applet.
Vendor ResponseSun Microsystems has issued an update to correct this vulnerability. More details can be found at:
2009-12-10 - Vulnerability reported to vendor
2010-04-05 - Coordinated public release of advisory
CreditThis vulnerability was discovered by:
Peter Vreugdenhil ( http://vreugdenhilresearch.nl )