首页 > 代码库 > abcEditor上传绕过

abcEditor上传绕过

<?php$fileup   = 0; //上传功能开关 0打开 1关闭$filesize = 200; //文件大小单位KB 1M=1024KB$filepath = ‘./pic/‘; //文件保存目录 后面要加斜杠/header(‘Content-Type: text/html; charset=UTF-8‘);//页面编码if(isset($_GET[‘up‘])){    if($fileup) exit (‘上传功能已关闭!‘);    $fileend = end(explode(‘.‘,basename($_FILES[‘file‘][‘name‘])));//取得后缀名    //判断文件类型和大小    if(        (        ($_FILES["file"]["type"] == "image/gif")        ||        ($_FILES["file"]["type"] == "image/jpeg")        ||        ($_FILES["file"]["type"] == "image/pjpeg")        ||        ($_FILES["file"]["type"] == "image/x-png")        ||        ($_FILES["file"]["type"] == "image/bmp")        )        &&        $_FILES[‘file‘][‘size‘] < 1024*$filesize    ){        if(!file_exists($filepath)) mkdir ($filepath);//判断文件保存目录是否存在 没有则创建        date_default_timezone_set(‘PRC‘);//中国时间        $fileurl = $filepath.date(‘YmdHis.‘).$fileend;//文件路径 使用年月日时分秒作为文件名        move_uploaded_file($_FILES[‘file‘][‘tmp_name‘],$fileurl);//移动文件到指定路径    }else{        exit(‘<script>alert("文件大小或类型错误!");location="?";</script>‘);    }}?>

文件只是验证了$_FILES["file"]["type"]。没有其他地方进行验证。

可以修改POST信息中的$_FILES["file"]["type"]文件类型为图片的类型就可绕过。

 提交POST后,关闭代理,就能发现成功上传了PHP了。