文件上传漏洞:Pass-01
1.搭建靶场
1.下载好准备好的压缩包:
将其解压至没有中文的路径下:
2.启动phpstudy开启中间件apache:
3.启动火狐渗透浏览器设置好代理(因为是在自己的电脑上操作故设置不使用代理):
4.访问本机localhost:
2.第一题Pass-01:
1.上传一段php代码到服务器内容即为获取服务器信息。:
<?php
phpinfo();
?>
2.发现不让上传后缀为.php的文件
3.打开开发者工具发现页面为html页面,将源码下载下来(按ctl s保存到桌面即可):
即静态页面进一步分析其中form表单发现提交时有过滤的函数checkFile()对文件进行过滤:
找到这个函数对函数进行分析发现有一个判断语句内容为:
其中有一段if(allow_ext.indexOf(ext_name) == -1) {}这个函数是真正发挥作用的函数只需不让其执行即可,于是直接改代码为if(1 == -1) {}即可,在form表单中加上action提交地址:
4.将修改后的html拖入浏览其中打开再次上传文件:
出现以下界面即代表上传成功。
3.执行上传的php代码:
复制上传图片的链接地址在浏览中粘贴地址回车:
即可获取服务器的详细信息。