MPlayer MMST流栈远程溢出漏洞
发布日期:2004-12-15
更新日期:2004-12-17
受影响系统:
MPlayer MPlayer 1.0 pre5描述:
BUGTRAQ ID: 11962
MPlayer是一款基于Linux的电影播放程序,支持多种媒体格式。
MPlayer包含的/libmpdemux/asf_mmst_straming.c缺少充分的边界缓冲区检查,远程攻击者可以利用这个漏洞以进程权限执行任意指令。
问题存在于/libmpdemux/asf_mmst_straming.c中的get_data()函数,如果构建一个特殊的 超大长度值的数据给mplayer解析,可发生缓冲区溢出,代码如下:
static int get_media_packet (int s, int padding, streaming_ctrl_t *stream_ctrl) { unsigned char pre_header[8]; char data[BUF_SIZE]; [...] packet_len = get_32 ((unsigned char*)&packet_len, 0) 4;
[!] if (!get_data (s, data, packet_len)) { printf ("command data read failed\n"); return 0; }[...]
精心构建文件数据可能以进程权限执行任意指令。
<*来源:iDEFENSE Security Advisory (labs@idefense.com)
链接:http://www.idefense.com/application/poi/display?id=167&type=vulnerabilities
*>
建议:
厂商补丁:
MPlayer
-------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载补丁:
http://www1.mplayerhq.hu/MPlayer/patches/mmst_fix_20041215.diff
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




