如何建网站遂宁,扁平化购物网站设计,html网页制作期末大作业成品,杭州做官网的有哪些公司黑名单过滤#xff0c;同时不能进行双写#xff0c;大小写#xff0c;特殊可解析后缀#xff0c;.htaccess,都不能。点击提示发现#xff1a; 禁止上传所有可解析后缀#xff0c;抓包试试#xff1a; 抓包加空格发现也不能绕过#xff0c;看源码分析吧#xff1a;
$i…黑名单过滤同时不能进行双写大小写特殊可解析后缀.htaccess,都不能。点击提示发现 禁止上传所有可解析后缀抓包试试 抓包加空格发现也不能绕过看源码分析吧
$is_upload false;
$msg null;
if (isset($_POST[submit])) {if (file_exists(UPLOAD_PATH)) {$deny_ext array(.php,.php5,.php4,.php3,.php2,.html,.htm,.phtml,.pht,.pHp,.pHp5,.pHp4,.pHp3,.pHp2,.Html,.Htm,.pHtml,.jsp,.jspa,.jspx,.jsw,.jsv,.jspf,.jtml,.jSp,.jSpx,.jSpa,.jSw,.jSv,.jSpf,.jHtml,.asp,.aspx,.asa,.asax,.ascx,.ashx,.asmx,.cer,.aSp,.aSpx,.aSa,.aSax,.aScx,.aShx,.aSmx,.cEr,.sWf,.swf,.htaccess,.ini);$file_name trim($_FILES[upload_file][name]);$file_ext strrchr($file_name, .);$file_ext strtolower($file_ext); //转换为小写$file_ext str_ireplace(::$DATA, , $file_ext);//去除字符串::$DATA$file_ext trim($file_ext); //首尾去空if (!in_array($file_ext, $deny_ext)) {$temp_file $_FILES[upload_file][tmp_name];$img_path UPLOAD_PATH./.$file_name;if (move_uploaded_file($temp_file, $img_path)) {$is_upload true;} else {$msg 上传出错;}} else {$msg 此文件类型不允许上传;}} else {$msg UPLOAD_PATH . 文件夹不存在,请手工创建;}
} 可以看到相比前一关这里多了一个前后空格的去除因此这里用加点绕过 $file_ext strrchr($file_name, .); 这行代码使用strrchr函数获取文件名中的最后一个点.之后的部分即文件扩展名。而不会去除我们加的.。但是在Windows下这个点和空格一样都会被忽略。 上传成功试试