Twenty Year Anniversary

quicktime-integer-overflow-h264-adv-7.1.txt

quicktime-integer-overflow-h264-adv-7.1.txt
Posted Sep 13, 2006
Authored by Piotr Bania | Site piotrbania.com

The Apple QuickTime Player H.264 Codec suffers from a remote integer overflow.

tags | advisory, remote, overflow
systems | apple
advisories | CVE-2006-4386
MD5 | be4755f793ca0997b90f064c26311a5f

quicktime-integer-overflow-h264-adv-7.1.txt

Change Mirror Download

Apple QuickTime Player H.264 Codec Remote Integer Overflow
by Piotr Bania <bania.piotr@gmail.com>
http://www.piotrbania.com
All rights reserved.


Severity: Critical - potencial remote code execution.

CVE: CVE-2006-4386

Orginal URL:
http://piotrbania.com/all/adv/quicktime-integer-overflow-h264-adv-7.1.txt


Software affected: Tested on QucikTime 7.1 (Windows version), with
all newest add-ons.

Versions for Mac OS X v10.3.9 and later, Windows XP/2000
are also vulnerable.





0. DISCLAIMER

Author takes no responsibility for any actions with provided
informations or
codes. The copyright for any material created by the author is
reserved. Any
duplication of codes or texts provided here in electronic or printed
publications is not permitted without the author's agreement.

I. BACKGROUND

Apple QuickTime Player is one of the Apple QuickTime components
used by hundreds of millions of users.


II. DESCRIPTION

Apple QuickTime Player is reported prone to remote integer overflow
vulnerability (exploitable via remotely originated content).
The overflow
occurs in the H.264 codec.


Vulnerable code:

6825a28f 668b4806 mov cx,[eax+0x6] ; cx = controled by
attacker
6825a293 660fb6d5 movzx dx,ch ; dx = 0x00XX (XX - controled
by attacker)
6825a297 8af1 mov dh,cl ; dx = 0xXXXX (-//-)
6825a299 8bca mov ecx,edx ; ecx = edx
6825a29b 6681f90001 cmp cx,0x100 ; compare cx with 0x100
6825a2a0 7f3d jg QuickTimeH264!JVTCompComponentDispatch+0x917c
(6825a2df) ; (*1*)
6825a2a2 0fbfd1 movsx edx,cx ; (*2*)
6825a2a5 8bca mov ecx,edx
6825a2a7 8bd9 mov ebx,ecx
6825a2a9 c1e902 shr ecx,0x2
6825a2ac 8d7008 lea esi,[eax+0x8]
6825a2af 8d7c2418 lea edi,[esp+0x18]
6825a2b3 f3a5 rep movsd ds:00fb8000=????????


*1 - JG jumps, takes care of the sign so in this case we have an
security check for upper
bounds, but when cx is a negative number this check is bypassed.
No lower bounds
checks were applied - bad.

*2 - Due to the bypass of the point *1 EDX is now CX extended by sign
(in this case its
negative), EDX now looks like 0xFFFFXXXX, the integer is
overflowed and rep movsd
causes an memory corruption (obvious fact is that ECX is related
to EDX).



Debugger output:

eax=00fb2028 ebx=ffffc9c9 ecx=3fffda7e edx=ffffc9c9 esi=00fb8000
edi=00141688
eip=6825a2b3 esp=0013b6a0 ebp=0013b8c4 iopl=0 nv up ei pl nz ac
po nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000
efl=00010216
*** ERROR: Symbol file could not be found. Defaulted to export symbols
for E:\Quicktime\QTSystem\QuickTimeH264.qtx -
QuickTimeH264!JVTCompComponentDispatch+0x9150:
6825a2b3 f3a5 rep movsd ds:00fb8000=????????
es:00141688=00000000


The vulnerability may lead to remote code execution when specially
crafted video file (MOV file) is being loaded.


III. POC CODE

Due to severity of this bug i will not release any proof of concept
codes for this issue.

IV. VENDOR RESPONSE

Check: http://docs.info.apple.com/article.html?artnum=61798




Comments

RSS Feed Subscribe to this comment feed

No comments yet, be the first!

Login or Register to post a comment

Want To Donate?


Bitcoin: 18PFeCVLwpmaBuQqd5xAYZ8bZdvbyEWMmU

File Archive:

August 2018

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    19 Files
  • 2
    Aug 2nd
    17 Files
  • 3
    Aug 3rd
    16 Files
  • 4
    Aug 4th
    1 Files
  • 5
    Aug 5th
    1 Files
  • 6
    Aug 6th
    19 Files
  • 7
    Aug 7th
    15 Files
  • 8
    Aug 8th
    9 Files
  • 9
    Aug 9th
    7 Files
  • 10
    Aug 10th
    10 Files
  • 11
    Aug 11th
    1 Files
  • 12
    Aug 12th
    0 Files
  • 13
    Aug 13th
    14 Files
  • 14
    Aug 14th
    18 Files
  • 15
    Aug 15th
    38 Files
  • 16
    Aug 16th
    16 Files
  • 17
    Aug 17th
    22 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    0 Files
  • 20
    Aug 20th
    0 Files
  • 21
    Aug 21st
    0 Files
  • 22
    Aug 22nd
    0 Files
  • 23
    Aug 23rd
    0 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2018 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close