CVE:CVE-2005-2628
CNNVD:CNNVD-200511-129
Macromedia Flash Player是一款非常流行的FLASH播放器。Macromedia Flash Player用于播放SWF文件的Flash.ocx代码中存在漏洞，成功利用这个漏洞的攻击者可以远程执行任意代码。
其中的一个函数栈维护有256个元素的函数指针表，没有强制数组边界便将从SWF文件读取的帧类型标识符用作了数组索引。以下反汇编描述了受影响的代码：
.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] ;
尽管索引没有被破坏，但很可能将其限制在0x8000，因此攻击者可以导致在栈中表底部后大约64K内存检索到函数指针。通常这个范围中包含有堆内存，因此攻击者可以轻易的控制函数指针值。
solution:Upgrade macromedia flash_player to a higher version than 6.0,6.0.29.0,6.0.40.0,6.0.47.0,6.0.65.0,6.0.79.0,7.0.19.0,7.0_r19,and avoid the version 6.0,6.0.29.0,6.0.40.0,6.0.47.0,6.0.65.0,6.0.79.0,7.0.19.0,7.0_r19