PHP ZVAL引用计数器整数溢出漏洞

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

漏洞信息详情

PHP ZVAL引用计数器整数溢出漏洞

  • CNNVD编号:CNNVD-200703-293
  • 危害等级: 中危
  • CVE编号: CVE-2007-1383
  • 漏洞类型: 数字错误
  • 发布时间: 2007-03-09
  • 威胁类型: 远程
  • 更新时间: 2007-03-15
  • 厂        商: php
  • 漏洞来源: Stefan Esser※ s.es...

漏洞简介

PHP是广泛使用的通用目的脚本语言,特别适合于Web开发,可嵌入到HTML中。 PHP的ZVAL结构中引用计数实现上存在整数溢出漏洞,远程攻击者可能利用此漏洞在服务器上执行任意指令。 在PHP 4中内部描述变量的ZVAL结构类似于: struct _zval_struct { /* Variable information */ zvalue_value value; /* value */ zend_uchar type; /* active type */ zend_uchar is_ref; zend_ushort refcount; }; 在设计这个结构时引用计数器为16位宽,这样在32位系统上整个结构为8个字节长;在PHP 5中这个字段为32位宽,因为16位太容易溢出,PHP对引用计数器的溢出也没有内部的防范措施。但对于PHP 4这意味着以下代码会溢出计数器,在脚本端触发变量的双重释放: $var = \"POC\"; for ($i = 0; $i < 0x10001; $i++) { $arr[] = &$var; } 攻击者可以利用这个漏洞破坏内存,可能执行任意指令,从而绕过disable_functions之类的安全限制。 此外由于很多老版本PHP应用程序仍对用户提供的数据使用unserialize(),因此也可能远程触发这个漏洞。Unserialize()函数以不安全的方式使用已还原序列化的__wakeup()方式,可能导致远程执行任意指令。

漏洞公告

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

http://www.php.net

参考网址

来源: BID 名称: 22765 链接:http://www.securityfocus.com/bid/22765 来源: MISC 链接:http://www.php-security.org/MOPB/MOPB-01-2007.HTML 来源: OSVDB 名称: 32770 链接:http://www.osvdb.org/32770 来源: SUSE 名称: SUSE-SA:2007:032 链接:http://www.novell.com/linux/security/advisories/2007_32_php.HTML 来源: GENTOO 名称: GLSA-200703-21 链接:http://security.gentoo.org/glsa/glsa-200703-21.xml 来源: SECUNIA 名称: 25056 链接:http://secunia.com/advisories/25056 来源: SECUNIA 名称: 24606 链接:http://secunia.com/advisories/24606

受影响实体

  • Php Php:4.0  

补丁

    暂无

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