安全研究
安全漏洞
安全漏洞
所有系统
AIX
BSD(eg,OpenBSD)
Digital Unix
HP-UX
IRIX
Linux
FreeBSD
SCO UNIX
SunOS
Solaris
Windows
所有类型
远程进入系统
本地越权访问
拒绝服务攻击
嵌入恶意代码
Web数据接口
其他类型
Dnsmasq TFTP服务远程空指针引用漏洞
发布日期:
2009-08-31
更新日期:
2009-09-01
受影响系统:
Simon Kelley Dnsmasq 2.4x
不受影响系统:
Simon Kelley Dnsmasq 2.50
描述:
BUGTRAQ ID:
36120
CVE ID:
CVE-2009-2958
Dnsmasq是可方便配置的轻型DNS转发器和DHCP服务器。
dnsmasq在启用了TFTP服务的时候存在空指针引用漏洞,可能允许恶意的TFTP服务端导致dnsmasq服务崩溃。
漏洞的起因是以下循环中的第一个if:
/-----------
while ((opt = next(&p, end)))
{
if (strcasecmp(opt, "blksize") == 0 &&
(opt = next(&p, end)) &&
!(daemon->options & OPT_TFTP_NOBLOCK))
{
transfer->blocksize = atoi(opt);
if (transfer->blocksize < 1)
transfer->blocksize = 1;
if (transfer->blocksize > (unsigned)daemon->packet_buff_sz - 4)
transfer->blocksize = (unsigned)daemon->packet_buff_sz - 4;
transfer->opt_blocksize = 1;
transfer->block = 0;
}
if (strcasecmp(opt, "tsize") == 0 && next(&p, end) &&
!transfer->netascii)
{
transfer->opt_transize = 1;
transfer->block = 0;
}
}
- -----------/
由于第一个if的guard包含有opt = next(&p, end)的结果,如果返回了NULL,guard就会失败,在下一个if 'strcasecmp(opt, "tsize")'中会引用空指针。
<*来源:Simon Kelley
链接:
http://marc.info/?l=full-disclosure&m=125175574625750&w=2
http://secunia.com/advisories/36394/
https://www.redhat.com/support/errata/RHSA-2009-1238.html
http://security.gentoo.org/glsa/glsa-200909-19.xml
*>
建议:
厂商补丁:
RedHat
------
RedHat已经为此发布了一个安全公告(RHSA-2009:1238-01)以及相应补丁:
RHSA-2009:1238-01:Important: dnsmasq security update
链接:
https://www.redhat.com/support/errata/RHSA-2009-1238.html
Gentoo
------
Gentoo已经为此发布了一个安全公告(GLSA-200909-19)以及相应补丁:
GLSA-200909-19:Dnsmasq: Multiple vulnerabilities
链接:
http://security.gentoo.org/glsa/glsa-200909-19.xml
所有Dnsmasq用户都应升级到最新版本:
# emerge --sync
# emerge --ask --oneshot --verbose =3Dnet-dns/dnsmasq-2.5.0
Simon Kelley
------------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.thekelleys.org.uk/dnsmasq/doc.html
浏览次数:
2772
严重程度:
0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障
关于我们
公司介绍
公司荣誉
公司新闻
联系我们
公司总部
分支机构
海外机构
快速链接
绿盟云
绿盟威胁情报中心NTI
技术博客