| 文字广告: ppp |
| 当前位置 > 网络安全 > 病毒漏洞 > 漏洞专栏 MPlayer bitmap 解析远程堆溢出漏洞
时间:2005-6-16 9:07:45 作者: 来源: 点击数:
涉及程序:
Linux的电影播放程序 描述: MPlayer bitmap解析远程堆溢出漏洞 详细: MPlayer是一款基于Linux的电影播放程序,支持多种媒体格式。 MPlayer包含的/libmpdemux/demux_bmp.c中的demux_open_bmp()函数缺少充分的边界缓冲区检查,远程攻击者可以利用这个漏洞以进程权限执行任意指令。 问题存在于/libmpdemux/demux_bmp.c中的demux_open_bmp()函数,如果构建一个特殊的文件,指定超大长度值给"biClrUsed"字段,当mplayer解析时,stream_read()可触发堆溢出,代码如下: demuxer_t* demux_open_bmp(demuxer_t* demuxer){ sh_video_t *sh_video = NULL; unsigned int filesize; unsigned int data_offset; bmp_image_t *bmp_image; ... sh_video->bih->biClrUsed = stream_read_dword_le(demuxer->stream); sh_video->bih->biClrImportant = stream_read_dword_le(demuxer->stream); // fetch the palette[!] stream_read(demuxer->stream, (unsigned char *)(sh_video->bih) + 40, sh_video->bih->biClrUsed * 4); ... 精心构建文件数据可能以进程权限执行任意指令。 受影响系统: MPlayer MPlayer 1.0 pre5 解决方案: MPlayer ------- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载补丁: http://www1.mplayerhq.hu/MPlayer/patches/bmp_fix_20041215.diff |
|
|
|
|
|||||||||