libid3tag拒绝服务漏洞
发布日期:2008-05-12
更新日期:2008-05-20
受影响系统:Underbit Technologies libid3tag 0.15.0b
描述:
BUGTRAQ ID:
29210
CVE(CAN) ID:
CVE-2008-2109
libid3tag是MPEG音频解码器MAD中所捆绑的ID3标签操控库。
libid3tag库在解析ID3_FIELD_TYPE_STRINGLIST字段时如果所要解析的数据以\0结尾的话,**ptr == 0,但end - *ptr条件为1,所以循环会无限继续。
以下是有漏洞的代码段:
*** field.c 2003-04-19 09:14:33.000000000 +0900
--- field-patched.c 2008-01-13 16:08:22.000000000 +0900
***************
*** 291,297 ****
end = *ptr + length;
! while (end - *ptr > 0) {
ucs4 = id3_parse_string(ptr, end - *ptr, *encoding, 0);
if (ucs4 == 0)
goto fail;
--- 291,297 ----
end = *ptr + length;
! while (end - *ptr > 0 && **ptr != '\0') {
ucs4 = id3_parse_string(ptr, end - *ptr, *encoding, 0);
if (ucs4 == 0)
goto fail;
<*来源:Kentaro Oda (
odaken@gmail.com)
链接:
http://www.mars.org/mailman/public/mad-dev/2008-January/001366.html
http://security.gentoo.org/glsa/glsa-200805-15.xml
*>
建议:
厂商补丁:
Gentoo
------
Gentoo已经为此发布了一个安全公告(GLSA-200805-15)以及相应补丁:
GLSA-200805-15:libid3tag: Denial of Service
链接:
http://security.gentoo.org/glsa/glsa-200805-15.xml
所有libid3tag用户都应升级到最新版本:
# emerge --sync
# emerge --ask --oneshot --verbose ">=3Dmedia-libs/libid3tag-0.15.1b-=r2"
浏览次数:2605
严重程度:0(网友投票)