安全研究

安全漏洞
cURL/libcURL CURLOPT_ENCODING选项缓冲区溢出漏洞

发布日期:2010-02-09
更新日期:2010-03-10

受影响系统:
Daniel Stenberg curl 7.10.5 - 7.19.7
不受影响系统:
Daniel Stenberg curl 7.20.0
描述:
BUGTRAQ  ID: 38162
CVE ID: CVE-2010-0734

cURL是命令行传输文件工具,支持FTP、FTPS、HTTP、HTTPS、GOPHER、TELNET、DICT、FILE和LDAP。

在下载数据时,libcurl库使用客户端软件所注册的回调函数将数据传送给应用程序,在完成传输之前会反复的调用该函数。回调函数可接收的最大数据大小为16K(CURL_MAX_WRITE_SIZE)。

在HTTP上使用libcurl库下载压缩的内容时应用程序可以要求libcurl自动解压数据。而解压期间libcurl可能错误的向回调函数发送最多可为64K的数据,因此盲目信任libcurl的最大缓冲区限制的应用可能会出现缓冲区溢出。

仅在编译了zlib且明确启用了自动解压(默认为禁用)的libcurl才会出现这个漏洞。

<*来源:Wesley Miaw
  
  链接:http://curl.haxx.se/docs/adv_20100209.html
        https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=563220
        https://www.redhat.com/support/errata/RHSA-2010-0273.html
        https://www.redhat.com/support/errata/RHSA-2010-0329.html
*>

建议:
厂商补丁:

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

http://curl.haxx.se/libcurl-contentencoding.patch

RedHat
------
RedHat已经为此发布了一个安全公告(RHSA-2010:0329-01)以及相应补丁:
RHSA-2010:0329-01:Moderate: curl security update
链接:https://www.redhat.com/support/errata/RHSA-2010-0329.html

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