<<< Date Index >>>     <<< Thread Index >>>

[EEYEB-20051117A] Apple QuickTime STSD Atom Heap Overflow



EEYEB-20051117A Apple QuickTime STSD Atom Heap Overflow

Release Date:
January 10, 2006

Date Reported:
November 17, 2005

Patch Development Time (In Days):
54 Days

Severity:
High (Code Execution)

Vendor:
Apple


Systems Affected:
Quicktime on Windows 2000
Quicktime on Windows XP
Quicktime on Mac OS X 10.3.9

Apple iTunes on Windows 2000
Apple iTunes on Windows XP
Apple iTunes on OS X 10.3.9

Overview:
eEye Digital Security has discovered a critical vulnerability in
QuickTime Player. The vulnerability allows a remote attacker to reliably
overwrite heap memory with user-controlled data and execute arbitrary
code in the context of the user who executed the player or application
hosting the QuickTime plug-in.

This specific flaw exists within the QuickTime.qts file which many
applications access QuickTime's functionality through. By specially
crafting atoms within a movie file, a direct heap overwrite is
triggered, and reliable code execution is then possible.

Technical Details:
Technical Description:
The code in QuickTime.qts responsible for the size of the Sample
Description Table entries from the 'stsd' atom in a QuickTime-format
movie on the heap. According to developer.apple.com, the format of the
Sample Description Atom is as follows:

Field                                   Description
----------------------------------------------------------------
Size                                    32-bit int
Data Format                             4 char code
Reserved                                6 bytes that must be 0
Data Reference Index                    16-bit int
Hint Track Version                      16-bit unsigned int
Last compatible hint track version      16-bit unsigned int
Max Packet Size                         32-bit int
Additional Data Table                   Variable

By setting the size of the Sample Description Table to a size of 00 15 -
00 D0 will cause a heap-based overflow. By supplying the "Last
compatible hint track version" field with the value of 00 05 - 00 09, an
insufficiently-sized heap block will be allocated, resulting in a
classic complete heap memory overwrite
during the RtlAllocateHeap() function and the attacker can control
memory with data taken from the filename of the .MOV file.  This
vulnerability can be successfully exploited via an embedded media player
in an HTML page, email, or HTML link.

References
QuickTime: QuickTime File Format
http://developer.apple.com/documentation/QuickTime/QTFF/index.html

Protection:
Retina Network Security Scanner has been updated to identify this
vulnerability.

Vendor Status:
Apple has released a patch for this vulnerability. The patch is
available via the Updates section of the affected applications.
This vulnerability has been assigned the CVE identifier CVE-2005-4092.

Credit:
Discovery: Karl Lynn

Greetings:
0x41414141

Copyright (c) 1998-2006 eEye Digital Security
Permission is hereby granted for the redistribution of this alert
electronically. It is not to be edited in any way without express
consent of eEye. If you wish to reprint the whole or any part of this
alert in any other medium excluding electronic medium, please email
alert@xxxxxxxx for permission.

Disclaimer
The information within this paper may change without notice. Use of this
information constitutes acceptance for use in an AS IS condition. There
are no warranties, implied or express, with regard to this information.
In no event shall the author be liable for any direct or indirect
damages whatsoever arising out of or in connection with the use or
spread of this information. Any use of this information is at the user's
own risk.