xine-lib rmff_dump_cont()远程堆溢出漏洞

2008-01-11T00:00:00
ID SSV:2804
Type seebug
Reporter Root
Modified 2008-01-11T00:00:00

Description

BUGTRAQ ID: 27198

xine是一款免费的媒体播放器,支持多种格式。

xine处理畸形格式的数据时存在缓冲区溢出漏洞,远程攻击者可能利用此漏洞控制用户系统。

xine的input/libreal/rmff.c文件中的rmff_dump_cont()函数没有正确地处理SDP Title、Author、Copyright和Abstract属性,如果用户受骗连接到了恶意的RTSP服务器的话,就可能触发堆溢出,导致执行任意指令。以下是input/libreal/rmff.c中的漏洞代码:

int rmff_dump_header(rmff_header_t h, char buffer, int max) {

int written=0; rmff_mdpr_t **stream=h->streams;

rmff_dump_fileheader(h->fileheader, &buffer[written]); written+=h->fileheader->size; rmff_dump_prop(h->prop, &buffer[written]); written+=h->prop->size; rmff_dump_cont(h->cont, &buffer[written]); written+=h->cont->size; if (stream) { while(stream) { rmff_dump_mdpr(stream, &buffer[written]); written+=(*stream)->size; stream++; } }

rmff_dump_dataheader(h->data, &buffer[written]); written+=18;

return written; }

xine xine-lib <= 1.1.9 厂商补丁:

xine

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

<a href=http://xinehq.de/ target=_blank>http://xinehq.de/</a>

                                        
                                            
                                                a=Abstract:buffer;&quot;QUFBQUFBQUFBQUFBQUFB...40000_of_QUFBQUFB's...FBQUFB