赞
踩
可以看到,设置了白名单,要求我们上传图片类的文件:
查看源代码发现是前端js脚本过滤的,因此我们可以抓包修改文件的后缀:
如图:
可以看到上传成功了,然后就可以使用菜刀连接了
打开网站,查看源代码,发现没有用于过滤文件名的函数,因此不是前端过滤,然后上传文件抓包看看
MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。
level2是基于MIME检查的,而我们上传的文件是jpg,因此MIME类型就为image/jpg,就只需要修改1.jpg的后缀为php就可以上传了,跟level1的方法一样
常见的MIME类型:
text/plain
text/html
image/jpeg
image/png
audio/mpeg
audio/ogg
audio/*
video/mp4
application/*
application/json
application/javascript
application/ecmascript
application/octet-stream
我们再尝试使用1,2的方法发现:
这道题应该是设置了黑名单,那么尝试一下大小写绕过或者php3,php4,php5或者两个一起用,例如Php5
经过测试发现大小写绕过不行,但是php5可以:
查看源代码可以看到:
大小写不行但是别名是可以的
采用3的办法试试看,发现不行:
猜测还是黑名单过滤,那么我们尝试上传一个.htaccess文件
.htaccess:htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
<FilesMatch "test">
SetHandler application/x-httpd-php
<
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。