手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>服务器技术>安全防护>列表

多个UNIX/LINUX厂商cURL/libcURL NTLM验证缓冲区溢出漏洞

来源:互联网 作者:西部数码 时间:2008-04-09
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
多个UNIX/LINUX厂商cURL/libcURL NTLM验证缓冲区溢出漏洞

发布日期:2005-02-22
更新日期:2005-02-25

受影响系统:
cURL cURL 7.12.1
描述:
BUGTRAQ ID: 12615
CVE(CAN) ID: CVE-2005-0490

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

cURL存在一个基于栈的缓冲区溢出,远程攻击者可以利用这个漏洞以进程权限在系统上执行任意指令。

当使用NTLM验证时存在此漏洞,问题存在于lib/http_ntlm.c的Curl_input_ntlm()函数中,在此函数中有一个非负基于堆栈的256大小的字符数组buffer[],会传递给lib/base64.c文件中Curl_base64_decode()函数:

size_t size = Curl_base64_decode(header, (char *)buffer);

Curl_base64_decode()函数依靠调用函数来验证解码长度,这个函数是BASE64解码并从服务器的应答数据中拷贝到这个目的缓冲区buffer[],因此如果攻击者构建一个超长的BASE64编码数据可导致发生缓冲区溢出,覆盖EIP,精心构建提交数据可能以进程权限执行任意指令。

<*来源:iDEFENSE Security Advisory (labs@idefense.com)
infamous41md (infamous41md@hotpop.com)

链接:www.idefense.com/application/poi/display?id=202
*>

建议:
临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* 在lib/http_ntlm.c行:

使用unsigned char *buffer = (unsigned char *)malloc(strlen(header));

代替

unsigned char buffer[256];

再重新编译。

厂商补丁:

cURL
----
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://curl.haxx.se/

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!