phpMyAdmin Theme变量本地文件包含漏洞
2008-04-09 04:15:40来源:互联网 阅读 ()
发布日期:2005-10-24
更新日期:2005-10-24
受影响系统:
phpMyAdmin phpMyAdmin <= 2.6.4-pl2不受影响系统:
phpMyAdmin phpMyAdmin 2.6.4-pl3描述:
BUGTRAQ ID: 15169
phpMyAdmin是用PHP编写的工具,用于通过WEB管理MySQL。
phpMyAdmin在grab_globals.php中提供了register_globals模拟层以确保同禁用了该功能的主机兼容。这个文件通常包含在最开端,这样在全局化请求变量时不会覆盖已在使用的脚本变量。
但phpMyAdmin还捆绑了一些不应直接调用的文件,以及一些在开端没有包含grab_globals.php但包含了common.lib.php的文件,可能导致如下所示的包含树:
- db_details_db_info.php
\___ libraries/common.lib.php
\___ libraries/select_lang.lib.php
\ \___ libraries/grab_globals.php
\ \___ lang/a-language.inc.php
\___ ...
可见如果没有包含在最开端的话,grab_globals.php会由select_lang.lib.php包含。这可能导致在common.lib.php已经加载完$cfg配置数组后才执行全局化请求变量。由于_FILES数组没有防范有cfg名称的密钥,攻击者就可能通过清空$cfg['ThemePath']变量的内容覆盖配置数组的内容,同样还可以为$cfg['ThemeManager']变量赋值。
成功利用这个漏洞的攻击者可以包含任意本地文件,导致远程执行任意代码。
<*来源:Stefan Esser (s.esser@ematters.de)
链接:http://www.hardened-php.net/advisory_162005.73.html
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
@include($cfg['ThemePath'].'/'.$GLOBALS['theme'].'/info.inc.php');
由于$cgf['ThemePath']为空且用用户提供的cookie内容填充了全局变量主题,因此可以使用\0或realpath()截断攻击包含任意文件。
建议:
厂商补丁:
phpMyAdmin
----------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
* phpMyAdmin Upgrade phpMyAdmin-2.6.4-pl3.tar.gz
http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.6.4-pl3.tar.gz
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash