upload-labs
Pass-01
1 | function checkFile() { |
思路:
可以先上传符合格式的文件,再通过burp抓包更改后缀为php即可。
访问上传的php文件:
Pass-02
1 | $is_upload = false; |
思路:
先上传符合MINE类型的文件,再通过burp抓包更改后缀为php即可。
访问上传的php文件:
Pass-03
1 | $is_upload = false; |
思路:
黑名单不全,可以利用php3、php5、phtml等拓展名进行绕过(设置了可以当成php解析)
访问上传的php文件:
Pass-04
1 | $is_upload = false; |
思路:
发现没有过滤 .htaccess
文件,可以上传 .htaccess
+图片码来进行绕过利用。
1 | //.htaccess文件内容 |
访问上传的文件:
Pass-05
1 | $is_upload = false; |
思路:
自php 5.3.0起,除了主php.ini之外,PHP还会在每个目录下扫描INI文件,即.user.ini文件。
可以利用.user.ini文件来绕过利用。
访问目录中已存在的可执行的php文件:
Pass-06
1 | $is_upload = false; |
访问上传后的php文件:
Pass-07
1 | $is_upload = false; |
思路:
在拓展名后加一个空格绕过
Pass-08
1 | $is_upload = false; |
Pass-09
1 | $is_upload = false; |
思路:
在拓展名后添加::$DATA
访问上传的php文件:记得将 ::$DATA
删掉,不然会出错。
Pass-10
1 | $is_upload = false; |
思路:
在拓展名后添加. .
绕过利用
访问上传的php文件:
Pass-11
1 | $is_upload = false; |
思路:
利用双写绕过
访问上传的php文件:
Pass-12
1 | $is_upload = false; |
Pass-13
1 | $is_upload = false; |
Pass-14
1 | function getReailFileType($filename){ |