1. 在前面的步骤上,添加了对图片信息检测,这里我把源码拉下来了
      ```php <?php error_reporting(0); if ($_FILES[“file”][“error”] > 0) { $ret = array(“code”=>2,”msg”=>$_FILES[“file”][“error”]); } else { $filename = $_FILES[“file”][“name”]; $filesize = ($_FILES[“file”][“size”] / 1024); if($filesize>1024){

      1. $ret = array("code"=>1,"msg"=>"文件超过1024KB");

      }else{

      if($_FILES['file']['type'] == 'image/png'){
          $arr = pathinfo($filename);
          $ext_suffix = $arr['extension'];
      //检测文件后缀名是不是php
          if($ext_suffix!='php'){
            //检查上传文件内容
              $content = file_get_contents($_FILES["file"]["tmp_name"]);
              if(stripos($content, "php")===FALSE && check($content) && getimagesize($_FILES["file"]["tmp_name"]))
                //检查图片头
              {
                  move_uploaded_file($_FILES["file"]["tmp_name"], "upload/".$_FILES["file"]["name"]);
                  $ret = array("code"=>0,"msg"=>"upload/".$_FILES["file"]["name"]);
              }else{
                  $ret = array("code"=>2,"msg"=>"文件类型不合规");
              }
      
          }else{
              $ret = array("code"=>2,"msg"=>"文件类型不合规");
          }
      
      }else{
          $ret = array("code"=>2,"msg"=>"文件类型不合规");
      }
      

      }

    } function check($str){ return !preg_match(‘/php|{|[|\;|log|(| |`/i’, $str); } echo json_encode($ret); ```

    1. 添加图片文件头然后后续步骤与web160相似,日志文件包含
      image-20210721102228623.png
    2. 上传.user.ini
      image-20210721102259759.png
    3. 改写UA头,写shell,命令执行即可
      image-20210721102343446.png