Search: Home Bugtraq Vulnerabilities Mailing Lists Jobs Tools Beta Programs

[EEYEB-20050627B] Macromedia Flash Player Improper Memory Access Vulnerability
EEYEB-20050627B
Published: 2005-11-05 06:26:50
Updated: 2005-11-05 06:26:50

Macromedia Flash Player Improper Memory Access Vulnerability 

Release Date: 
November 4, 2005 

Date Reported: 
June 27, 2005 

Severity: 
High 

Vendor: 
Macromedia 

Systems Affected: 
Macromedia Flash 6 (on all Windows platforms) 
Macromedia Flash 7 (on all Windows platforms) 

Overview: 
eEye Digital Security has discovered a vulnerability in Macromedia Flash 
Player versions 6 and 7 that will allow an attacker to run arbitrary 
code in the context of the logged in user. An array boundary condition 
may be violated by a malicious SWF file in order to redirect execution 
into attacker-supplied data. 

Technical Details: 
The vulnerable code exists in Flash.ocx, which embodies the code 
responsible for playing back SWF files. One function maintains a large, 
256-element table of function pointers on the stack, and uses a frame 
type identifier read from the SWF file as an index into the array, 
without enforcing the array boundaries. The following disassembly 
depicts the affected code: 

    .text:1002714F mov eax, [esi+0CA4h] ; type number 
    .text:10027155 mov ecx, [esi+94h] ; base of table 
    .text:1002715B lea eax, [ecx+eax*8] ; get element address 
    .text:1002715E mov ecx, [eax] ; 

Although the index is not validated, its value is elsewhere restricted 
to be at most 0x8000, so the attacker can cause a function pointer to be 
retrieved from memory up to roughly 64KB after the base of the table on 
the stack. Typically this range will include heap memory, so by 
planting specific data on the heap, the attacker can very easily control 
the exact value of the function pointer. Reliable exploitation using 
this technique within Internet Explorer has been demonstrated by eEye 
Digital Security. 

Protection: 
Retina Network Security Scanner has been updated to identify this 
vulnerability. 
Blink - Endpoint Vulnerability Prevention - protects from this 
vulnerability. 

Vendor Status: 
Macromedia has addressed this issue in the following security bulletin; 
http://www.macromedia.com/devnet/security/security_zone/mpsb05-07.html 

This vulnerability has been assigned the CVE identifier CAN-2005-2628 
and OSVDB ID 18825. 

Greetings: 
Thanks Derek and and eEye guys help me wrote this advisory. Greeting 
xfocus guys and venustech lab guys. 

Credit: 
Fang Xing 

Copyright (c) 1998-2005 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 alerteEye.com 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. 







 

Privacy Statement
Copyright 2008, SecurityFocus