安全研究

安全漏洞
djbdns超长响应报文远程缓存中毒漏洞

发布日期:2009-02-27
更新日期:2009-03-06

受影响系统:
D. J. Bernstein djbdns 1.05
描述:
BUGTRAQ  ID: 33937

djbdns是一个由Qmail的作者所设计的轻量级DNS server。

djbdns的response.c文件负责处理名称压缩。该文件12行对name_ptr数组有each < 16384的标注,但response_addname()没有强制这个限制。如果用户向报文中编码的名称中第一个后缀大于或等于16384字节的话,response_addname()就会错误的编码到名称的偏移,生成畸形的响应报文。这种响应报文会给查询用户误导性信息,有助于攻击者执行中间人等网络欺骗攻击。

<*来源:Matthew Dempsky
  
  链接:http://secunia.com/advisories/33855/
        http://marc.info/?l=bugtraq&m=123575331312817&w=2
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

# Download and build ucspi-tcp-0.88.
    $ curl -O http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
    $ tar -zxf ucspi-tcp-0.88.tar.gz
    $ echo 'gcc -include /usr/include/errno.h -O' > ucspi-tcp-0.88/conf-cc
    $ make -C ucspi-tcp-0.88

    # Download and build djbdns-1.05.
    $ curl -O http://cr.yp.to/djbdns/djbdns-1.05.tar.gz
    $ tar -zxf djbdns-1.05.tar.gz
    $ echo 'gcc -include /usr/include/errno.h -O' > djbdns-1.05/conf-cc
    $ make -C djbdns-1.05

    # Use tcpclient and axfr-get to do a zone transfer for
    # burlap.dempsky.org from shinobi.dempsky.org.
    $ ./ucspi-tcp-0.88/tcpclient shinobi.dempsky.org 53 \
          ./djbdns-1.05/axfr-get burlap.dempsky.org data data.tmp

    # Use tinydns-data to compile data into data.cdb.
    $ ./djbdns-1.05/tinydns-data

    # Simulate an A query for www.x.burlap.dempsky.org using the data
    # from the zone transfer.
    $ ./djbdns-1.05/tinydns-get a www.x.burlap.dempsky.org

建议:
厂商补丁:

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

http://www.your.org/dnscache/djbdns-1.05-with-patches.tar.gz

浏览次数:2473
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障