PHP文件上传$GLOBALS变量覆盖漏洞

来源:岁月联盟 编辑:zhuzhu 时间:2005-11-03
PHP文件上传$GLOBALS变量覆盖漏洞 受影响系统:
PHP PHP <= 5.0.5
PHP PHP <= 4.4.0
不受影响系统:
PHP PHP 4.4.1
描述:
--------------------------------------------------------------------------------
BUGTRAQ  ID: 15250

PHP是广泛使用的通用目的脚本语言,特别适合于Web开发,可嵌入到HTML中。

PHP在全局变量的保护上存在漏洞,安全者可以通过发送包含有GLOBALS名称文件上传字段的POST请求覆盖$GLOBALS数组,导致可能远程执行PHP代码。

PHP 4.3.11添加了一些代码禁止在打开register_globals时覆盖$GLOBALS数组,但这种保护中存在漏洞。引入的代码仅影响GET、POST和COOKIE变量的全局化,但忽略了PHP中的rfc1867文件上传代码也注册了全局变量。

<*来源:Stefan Esser (s.esser@ematters.de)
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=113079395301958&w=2
*>

建议:
--------------------------------------------------------------------------------
厂商补丁:

PHP
---
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

* PHP Upgrade php-4.4.1.tar.gz
http://www.php.net/get/php-4.4.1.tar.gz