搜索
查看: 1877|回复: 0

文件上传绕过求解答 新人帖

[复制链接]

1

主题

12

帖子

46

积分

vip用户

Rank: 6Rank: 6

积分
46
发表于 2019-11-15 16:19:19 | 显示全部楼层 |阅读模式

<html>
<meta http-equiv="Content-Type" content="textfile:///C:\Users\mask\AppData\Local\Temp\@IR3P(8S$C$Z$TY~5I{QEPC.gifml; charset=UTF-8" />
<title>服务端路径突破上传</title>
<form method="post" name="upform" action="" enctype="multipart/form-data">
        <input type="file" name="file">
        <input type="hidden" name="path" value="upfile">
        <input type="submit" value="upload" name="up">
</form>

<file:///C:\Users\mask\AppData\Local\Temp\@IR3P(8S$C$Z$TY~5I{QEPC.gifml>

<?php


if(isset($_POST['up'])|| !empty($_POST['UP'])){

if($_FILES['file']['error'] > 0){
   echo '!problem:';
   switch($_FILES['file']['error'])
   {
     case 1: echo '文件大小超过服务器限制';
             break;
     case 2: echo '文件太大!';
             break;
     case 3: echo '文件只加载了一部分!';
             break;
     case 4: echo '文件加载失败!';
             break;
   }
   
   exit;
}
}



if($_FILES['file']['size'] > 1000000){
   echo '文件过大!';
   exit;
}
if($_FILES['file']['type']!='image/jpeg' && $_FILES['file']['type']!='image/gif'){
   echo '文件不是JPG或者GIF图片!';
   exit;
}
$today = date("YmdHis");
$filetype = $_FILES['file']['type'];
if($filetype == 'image/jpeg'){
  $type = '.jpg';
}
if($filetype == 'image/gif'){
  $type = '.gif';
}

function checkPath($_patch){
                if (!is_dir($_patch) || !is_writeable($_patch)) {
                        if (!mkdir($_patch)) {
                        exit('ERRIR:创建目录失败');
                        }
                }
}
checkPath($_POST['path']);
$upfile =  $_POST['path']."/". $today . $type;
if(is_uploaded_file($_FILES['file']['tmp_name']))
{
   if(!move_uploaded_file($_FILES['file']['tmp_name'], $upfile))
   {
     echo '移动文件失败!';
     exit;
    }
}
else
{
   echo 'problem!';
   exit;
}
echo '<h1>success!</h1><br>';
echo '文件大小:' . $_FILES['file']['size'] . '字节' . '<Br>';
echo '文件路径:' . $upfile;
echo '<hr with="100%" />' . '<p>';
$dirr = 'upfile/';
$dir = opendir($dirr);
echo $dirr . '--Listing:<ul>';
while($file = readdir($dir)){
  echo "<li>$file<[img]file:///C:\Users\mask\AppData\Local\Temp\)A[Y)I~](ZC9Z[3Y)IDK7LK.gif[/img]>";
}
echo '</ul>';
closedir($dir);
?>



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

温馨提示
1:发帖请遵守《中华人民共和国网络安全法》,发帖内容不得维护国家的、集体的、个人的利益。
2:请勿发布恶意攻击他人的技术文章、工具、和使用教程,发现后删帖处理。
3:本站的目的在于让更多的人了解网络安全,避免受到他人的恶意攻击。
4:本站中的部分文章,可能会出现一些“技术类手段”,但这仅仅为学习演示所用,而非恶意传播技术。
5:本站中的部分文章,可能转载自互联网。如有侵权行为,联系我们删除即可。
6:学习仅是充实头脑,切勿恶意攻击个人、企业等。所造成的法律后果一切由自己承担,本站及其站长概不负责。
朕知道了
快速回复 返回顶部 返回列表