实验环境:win10下phpstudy 搭建
【Pass-01】
可以看到需要上传一张图片
这里尝试上传一个1.php发现被拦截
查看源代码,发现只允许上传图片格式
打开bp抓包,修改后缀为php:
上传成功
【Pass-02】
查看源代码
可以看到,后端PHP代码只对content-type进行了检查
使用bp抓包,修改上传的PHP的content-type为image/png
上传成功
【Pass-03】
结合源码我们可以看出这关设置了文件后缀名黑名单,禁止上传后缀名为php的文件
我们尝试通过扩展名绕过,可以尝试phtml,php3,php4, php5, pht后缀名都可以绕过,但是前提是要在配置文件里面有这样的一句话
AddType application/x-httpd-php .php .phtml .php3 .php4
该句代码的意思是将.php、.php3、.php4当作php文件
上传后缀为php3的文件
上传成功