漏洞信息详情
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](http://zone.ci/zone_ci_images/zone.ci.png)
评论