公司介绍
企业文化
员工心声
加盟安络
与我们联系
产品简介
安全专家
评估产品
服务体系
专家检测
检测服务
案例分析
咨询建议
系统漏洞
安全工具
参考资料
安全论坛
安全文摘
 

FishSound库远程Speex解码代码执行漏洞 (Other,补丁)
 
涉及程序:
fishsound库
 
描述:
FishSound库远程Speex解码代码执行漏洞
 
详细:
fishsound库提供一个编程接口,允许使用Xiph.Org codec(FLAC、Speex和Vorbis)编码和解码音频数据。

fishsound库所使用的Speex库在处理Speex头时存在数组索引错误,如果特制的Speex流在头中包含有负数的modeID字段的话就可能导致执行任意指令。

Speex头中包含有32位的modeID字段,libspeex将其解释为有符的int型(spx_int32_t)。正常的使用方法是索引到全局模式列表以检索SpeexMode *:

mode = (SpeexMode *)speex_mode_list[modeID];

然后创建解码器:

st = speex_decoder_init(mode);

这会在libspeex中调用speex_decoder_init(),类似于:

void *speex_decoder_init(const SpeexMode *mode)
{
  return mode->dec_init(mode);
}

因此如果没有保证流头中所给出的modeID处于speex_mode_list[]范围中,就会导致执行任意指令。fishsound检查了上边界(modeID < SPEEX_NB_MODES),但没有检查负数值。

<*来源:Conrad Parker (conrad@metadecks.org

链接:http://secunia.com/advisories/29727/
     http://blog.kfish.org/2008/04/release-libfishsound-091.html
     http://www.ocert.org/advisories/ocert-2008-2.html
     http://lists.xiph.org/pipermail/speex-dev/2008-April/006636.html
*>

受影响系统:
CSIRO FishSound <= 0.9.0
不受影响系统:
CSIRO FishSound 0.9.1
 
攻击方法:
暂无有效攻击代码
 
解决方案:
厂商补丁:

CSIRO
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://www.annodex.net/software/libfishsound/download/libfishsound-0.9.1.tar.gz
 
附加信息:
 
发布时间:2008年4月14日

返回

版权所有,如需转载,请与安络联系