本文主要是介绍【靶场】upload-labs-master(前11关),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
🏘️个人主页: 点燃银河尽头的篝火(●’◡’●)
如果文章有帮到你的话记得点赞👍+收藏💗支持一下哦
【靶场】upload-labs-master(前11关)
- 第一关 Pass-01
- 第二关 Pass-02
- 第三关 Pass-03
- 第四关 Pass-04
- 第五关 Pass-05
- 第六关 Pass-06
- 第七关 Pass-07
- 第八关 Pass-08
- 第九关 Pass-09
- 第十关 Pass-10
- 第十一关 Pass-11
第一关 Pass-01
- 创建一个一句话木马,将其改为图片文件
一句话木马示例:
<?php @eval($_POST['hacker']); ?>
-
在靶场中上传图片文件并抓包
-
将抓包到的文件后缀名改为
.php
-
返回靶场在新标签页中打开图片
-
新标签页无任何显示即为成功解析
第二关 Pass-02
-
查看源码发现后端PHP代码只对type进行了检查
-
上传图片文件后抓包,将上传的PHP的content-type为image/png
第三关 Pass-03
-
查看源码,发现禁止上传.php,那我们就上传
.php3
/.php5
-
上传图片文件并抓包
-
更改文件后缀名为
.php3
/.php5
(我这里用了.php5)
第四关 Pass-04
-
查看源码,发现.htaccess文件没有被禁
-
试试上传.htaccess文件
先新建一个.htaccess文件,里面写上代码
<FilesMatch "1.jpg">
SetHandler application/x-httpd-php
这串代码的意思是如果文件中有一个1.jpg的文件,他就会被解析为.php,把这个文件上传上去。
上传.hatccess文件后继续上传1.jpg
- 在新标签页打开图片
第五关 Pass-05
- 查看源码
源码里把所有可以解析的后缀名都给写死了,包括大小写,转换,空格,还有点号,正常的php类文件上传不了了,并且拒绝上传 .htaccess 文件。
反复观察发现没有被限制的后缀名有.php7
以及.ini
我们可以用.ini绕过 - 创建一个.user.ini文件并上传
.user.ini文件里的意思是:所有的php文件都自动包含1.jpg文件。.user.ini相当于一个用户自定义的php.ini
- 继续上传1.jpg
第六关 Pass-06
-
查看源码,发现没有过滤大小写
-
用大小写绕过
把.php
格式改为.Php
后上传即可
第七关 Pass-07
-
查看源码,发现没有首位去空
-
用空格绕过
抓包,修改上传文件后缀名为.php⚪
(注意这里有个空格)
第八关 Pass-08
-
查看源码,发现没有过滤文件名末尾的点
-
可以使用文件名后加
.
进行绕过
第九关 Pass-09
-
查看源码,发现没有去除字符串
::$DATA
-
上传图片文件,抓包改后缀为
.php::$DATA
第十关 Pass-10
-
查看源码,发现不能用特殊格式绕过
-
将文件后缀名改为
php. .
第十一关 Pass-11
-
查看提示
-
可以用双写绕过
这篇关于【靶场】upload-labs-master(前11关)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!