upload-labs-master-Pass-12——POST请求-修改路径

94 阅读1分钟
$is_upload = false;
$msg = null;
if(isset($_POST['submit'])){
    $ext_arr = array('jpg','png','gif');
    $file_ext = substr($_FILES['upload_file']['name'],strrpos($_FILES['upload_file']['name'],".")+1);
    if(in_array($file_ext,$ext_arr)){
        $temp_file = $_FILES['upload_file']['tmp_name'];
        $img_path = $_POST['save_path']."/".rand(10, 99).date("YmdHis").".".$file_ext;

        if(move_uploaded_file($temp_file,$img_path)){
            $is_upload = true;
        } else {
            $msg = "上传失败";
        }
    } else {
        $msg = "只允许上传.jpg|.png|.gif类型文件!";
    }
}

本关提示: image.png

而且是一个POST的请求 ,无法使用%00进行绕过, 再POST请求中不会对%00进行解码 只有get请求%00才会进行解码

%00 是 url编码

需要手动添加路径 文件名后面加一个点

image.png

找到16进制文件信息 image.png

修改16进制文件信息 image.png

上传成功 image.png

image.png

image.png 成功