PHP imap_mail_compose()函数缓冲区溢出漏洞

admin 2022-07-23 02:02:37 CNNVD漏洞 来源:ZONE.CI 全球网 0 阅读模式

漏洞信息详情

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  

补丁

    暂无

weinxin
特别声明
本站(ZONE.CI)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
评论:0   参与:  0