安全研究

安全漏洞
DProxy远程缓冲区溢出漏洞

发布日期:2007-03-23
更新日期:2007-03-27

受影响系统:
Matthew Pratt dproxy 0.5
Matthew Pratt dproxy 0.4
Matthew Pratt dproxy 0.3
Matthew Pratt dproxy 0.2
Matthew Pratt dproxy 0.1
描述:
BUGTRAQ  ID: 23112
CVE(CAN) ID: CVE-2007-1465

dproxy是一款小型的缓存DNS服务器。

dproxy处理请求时存在缓冲区溢出漏洞,远程攻击者可能利用此漏洞控制服务器。

dproxy.c文件将最大可为4096字节的UDP报文缓冲区拷贝到了最大仅为2048字节的query_string变量,导致覆盖栈缓冲区并执行任意指令。

<*来源:Alexander Klink (a.klink@cynops.de
  
  链接:http://marc.info/?l=full-disclosure&m=117465849616862&w=2
*>

测试方法:

警 告

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

https://www.cynops.de/downloads/metasploit/dproxy.pm

建议:
临时解决方法:

* 过滤发送给UDP 53端口的大于2048字节的报文。

厂商补丁:

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

- --- dproxy-0.5/dproxy.c 2000-02-03 04:15:35.000000000 +0100
+++ dproxy-0.5.patched/dproxy.c 2007-03-13 13:07:53.000000000 +0100
@@ -105,7 +105,7 @@
   /* child process only here */
   signal(SIGCHLD, SIG_IGN);

- -  strcpy( query_string, pkt.buf );
+  strncpy( query_string, pkt.buf, sizeof(query_string) );
   decode_domain_name( query_string );
   debug("query: %s\n", query_string );

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