漏洞信息详情
PHP imap_mail_compose()函数缓冲区溢出漏洞
- CNNVD编号:CNNVD-200704-051
- 危害等级: 高危
- CVE编号: CVE-2007-1825
- 漏洞类型: 缓冲区溢出
- 发布时间: 2007-03-31
- 威胁类型: 远程
- 更新时间: 2007-08-02
- 厂 商: php
- 漏洞来源: Stefan Esser※ s.es...
漏洞简介
PHP是广泛使用的通用目的脚本语言,特别适合于Web开发,可嵌入到HTML中。
PHP的imap_mail_compose()函数实现上存在缓冲区溢出漏洞,本地攻击者可能利用此漏洞提升权限。
imap_mail_compose()函数在名为tmp的栈缓冲区中创建固定大小的多部邮件:
PHP_FUNCTION(imap_mail_compose)
{
...
char tmp[8 * MAILTMPLEN], *mystring=NULL, *t=NULL, *tempstring=NULL;
在创建多部消息时首先要从输入参数中读取BOUNDARY,然后未经任何大小检查便使用sprintf调用将输入参数拷贝到了栈缓冲区:
if (bod && bod->type == TYPEMULTIPART) {
/* first body part */
part = bod->nested.part;
/* find cookie */
for (param = bod->parameter; param && !cookie; param = param->next) {
if (!strcmp (param->attribute, \"BOUNDARY\")) {
cookie = param->value;
}
}
/* yucky default */
if (!cookie) {
cookie = \"-\";
}
/* for each part */
do {
t=tmp;
/* build cookie */
sprintf (t, \"--\\%s\\%s\", cookie, CRLF);
这允许覆盖缓冲区,导致执行任意指令。
漏洞公告
目前厂商已经发布了升级补丁以修复这个安全问题,补丁下载链接:
http://www.php.net
参考网址
来源: BID
名称: 23234
链接:http://www.securityfocus.com/bid/23234
来源: MISC
链接:http://www.php-security.org/MOPB/MOPB-40-2007.HTML
受影响实体
- Php Php:5.0.0
- Php Php:5.0:Rc3
- Php Php:5.0:Rc2
- Php Php:4.4.4
- Php Php:5.0:Rc1
补丁
暂无
评论