黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图
您现在的位置: 黑客风云 >> 黑客文章 >> 黑客进阶 >> 黑客入侵 >> 文章正文
[推荐]phpcms 3.0.0文件上传漏洞
      ★★★★★
phpcms 3.0.0文件上传漏洞
文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2006-12-8
文章作者:cooldiyer 
Bug find by cooldiyer @ 2006/11/12 17:15
漏洞文件: ads/upload.php、uppic.php

代码如下:
程序代码
require "common.php";
require PHPCMS_ROOT."/class/upload.php";

if(!$_userid) message("请您先登录或注册!" , PHPCMS_PATH."member/login.php");

if($extid==1) {
$upfile_type=   "jpg|png|gif";
} elseif ($extid==2) {
$upfile_type=   "swf";
}

if($action=='upload')
{
  $fileArr = array(
    'file'=>$uploadfile,
    'name'=>$uploadfile_name,
    'size'=>$uploadfile_size,
    'type'=>$uploadfile_type
    );

  $showname= $fileArr['name'];
  $tmpext=strtolower(fileext($showname));
  $tmpfilesize=$fileArr['size'];
  $savepath = 'ads/'.$upfile_dir.'/'.date('Ym');
  $f->create(PHPCMS_ROOT."/".$savepath);
  $up = new upload($fileArr,'',$savepath,$upfile_type,1,$upfile_size);
  ...........


很显然,upfile_type变量过滤不够严格,可以自定义上传类型,实践得知可以上传除*.php和*.php3的其它任意后缀的文件,
因为PHPCMS_ROOT."/class/upload.php"这个文件经过Zend加密,所以无法直接分析。
程序代码
if(!$_userid) message("请您先登录或注册!" , PHPCMS_PATH."member/login.php");

$_userid是靠session获取的,所以注册个用户,登录后,开始利用漏洞,修改后的上传页面如下
 

[1] [2] 下一页  

文章录入:cainiaowang    责任编辑:cainiaowang 
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886