首页 -> 安全研究
安全研究
安全漏洞
Apple QuickTime多个缓冲区溢出及处理异常漏洞
发布日期:2006-09-12
更新日期:2006-09-13
受影响系统:
Apple QuickTime Player < 7.1.3不受影响系统:
Apple QuickTime Player 7.1.3描述:
BUGTRAQ ID: 19976
CVE(CAN) ID: CVE-2006-4381,CVE-2006-4382,CVE-2006-4384,CVE-2006-4385,CVE-2006-4386,CVE-2006-4388,CVE-2006-4389
Apple QuickTime是一款流行的多媒体播放器,支持多种媒体格式。
Apple QuickTime中存在多个缓冲区溢出和处理异常漏洞,具体如下:
如果用户受骗浏览了特制的H.264电影的话,就可能触发整数溢出或缓冲区溢出漏洞,导致播放器崩溃或执行任意代码(CVE-2006-4381, CVE-2006-4386)。
CVE-2006-4381漏洞代码如下:
QuickTimeH264.qtx.68169AC3
.text:68169A63 and esp, 0FFFFFFF8h
.text:68169A66 sub esp, 214h
.text:68169A6C mov eax, dword_68323140
.text:68169A71 mov edx, [ebp+arg_8]
.text:68169A74 xor ecx, ecx
.text:68169A76 mov [esp+214h+var_4], eax
.text:68169A7D mov eax, [ebp+arg_0]
.text:68169A80 mov cl, [eax+4]
.text:68169A83 push ebx
.text:68169A84 push esi
.text:68169A85 push edi
.text:68169A86 mov [esp+220h+var_20C], 0
.text:68169A8E and ecx, 3
.text:68169A91 inc ecx
.text:68169A92 mov [edx], ecx
.text:68169A94 mov cl, [eax+5]
.text:68169A97 and cl, 1Fh
.text:68169A9A cmp cl, 1
.text:68169A9D jnz short loc_68169AEF
.text:68169A9F mov cx, [eax+6]
.text:68169AA3 movzx dx, ch
.text:68169AA7 mov dh, cl
.text:68169AA9 mov ecx, edx
.text:68169AAB cmp cx, 100h <-- cx
= FFFF which is user controllable
.text:68169AB0 jg short loc_68169AEF <--
should be "ja"
.text:68169AB2 movsx edx, cx
.text:68169AB5 mov ecx, edx
.text:68169AB7 mov ebx, ecx <-- ecx
= 0xFFFFFFFF
.text:68169AB9 shr ecx, 2
.text:68169ABC lea esi, [eax+8]
.text:68169ABF lea edi, [esp+220h+var_208]
.text:68169AC3 rep movsd <-- do
memory copy
.text:68169AC5 mov ecx, ebx
.text:68169AC7 and ecx, 3
.text:68169ACA rep movsb
.text:68169ACC mov cl, [edx+eax+8]
.text:68169AD0 lea esi, [edx+8]
.text:68169AD3 inc esi
.text:68169AD4 cmp cl, 1
.text:68169AD7 jnz short loc_68169AEF
.text:68169AD9 mov cx, [esi+eax]
.text:68169ADD movzx bx, ch
.text:68169AE1 mov bh, cl
.text:68169AE3 add esi, 2
.text:68169AE6 mov ecx, ebx
.text:68169AE8 cmp cx, 100h
.text:68169AED jle short loc_68169B07
CVE-2006-4386漏洞代码如下:
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=????????
如果用户受骗浏览了特制的QuickTime电影的话,就可能触发缓冲区溢出漏洞,导致播放器崩溃或执行任意代码(CVE-2006-4382)。
如果用户受骗浏览了特制的FLC电影的话,就可能触发堆溢出漏洞,导致播放器崩溃或执行任意代码。覆盖堆的数据为0x00XXYYZZ的形式,其中XX、YY和ZZ为可控数据(CVE-2006-4384)。
如果用户受骗浏览了特制的FlashPix文件的话,就可能触发整数溢出或缓冲区溢出漏洞,或留下未初始化对象的异常,导致播放器崩溃或执行任意代码(CVE-2006-4388, CVE-2006-4389)。
如果用户受骗浏览了特制的SGI图形的话,就可能触发缓冲区溢出漏洞,导致播放器崩溃或执行任意代码(CVE-2006-4381, CVE-2006-4386)。
<*来源:Sowhat (smaillist@gmail.com)
Mike Price
Piotr Bania (bania.piotr@gmail.com)
Ruben Santamarta (ruben@reversemode.com)
链接:http://marc.theaimsgroup.com/?l=bugtraq&m=115809299700416&w=2
http://marc.theaimsgroup.com/?l=bugtraq&m=115808817802891&w=2
http://lists.apple.com/archives/Security-announce/2006/Sep/msg00000.html
http://www.idefense.com/intelligence/vulnerabilities/display.php?id=413
http://www.us-cert.gov/cas/techalerts/TA06-256A.html
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
建议:
厂商补丁:
Apple
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.apple.com/quicktime/
浏览次数:3419
严重程度:0(网友投票)
绿盟科技给您安全的保障