upload-labs 1-6关学习笔记

简介

upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共21关,每一关都包含着不同上传方式。

文件上传漏洞是指: Web 服务器允许用户将文件上传至其文件系统,但这些文件可能并没有经过充分的验证,如文件名称、类型、内容或大小等。未能正确执行这些限制就意味着即使最基本的图像上传功能也可能用于上传任意具有潜在危险的文件,里面甚至包括远程代码执行的服务器端脚本文件。

安装好以下工具:

upload-labs靶场

phpstudy2016(版本php5.2.17)

火狐浏览器

Burp Suite :抓包工具

蚁剑或菜刀 :webshell连接工具

pass-1(JS前端验证)

1.上传php一句话木马

新建记事本,写入一句话木马,保存为php格式。

 

提示不允许上传

upload-labs 1-6关学习笔记_第1张图片

绕过方法:

 方法一:

禁用javascript : F12--调试器--设置--禁用javascript。

upload-labs 1-6关学习笔记_第2张图片

然后再点击上传--F12 查看文件存储地址(也可以右键--复制图像链接--链接内含存储地址)

 上传成功。

#实战中禁用javascript,可能导致网页显示异常.

upload-labs 1-6关学习笔记_第3张图片

 方法二:

使用burpsuite拦截请求

修改文件名后缀为.php--点击forward 

upload-labs 1-6关学习笔记_第4张图片

上传成功

upload-labs 1-6关学习笔记_第5张图片

pass-2(MIME验证)

upload-labs 1-6关学习笔记_第6张图片

绕过方法:

方法一:

使用burpsuite拦截请求,修改Content-Type值:修改为image/png

upload-labs 1-6关学习笔记_第7张图片

 方法二:修改文件后缀

修改filename的值为shent.php 点击forward.

upload-labs 1-6关学习笔记_第8张图片

upload-labs 1-6关学习笔记_第9张图片

 上传成功

pass-3(文件名后缀黑名单限制上传

 首先上传php文件

提示:本pass禁止上传.asp|.aspx|.php|.jsp后缀文件!

upload-labs 1-6关学习笔记_第10张图片

绕过方法:

上传特殊可解析后缀名绕过:php2、php3、php4、php5、phtml
首先修改httpd.conf文件

以phpstudy2016为例:

1.点击其他选项菜单upload-labs 1-6关学习笔记_第11张图片

2.打开配置文件--选择httpd-conf

upload-labs 1-6关学习笔记_第12张图片

3.修改代码

删除注释符‘#’,添加 .php2 .php3 .php4 .php5 后缀名。保存退出upload-labs 1-6关学习笔记_第13张图片

 4.上传文件

新建文本,写入一句话木马:,后缀名为.php3

upload-labs 1-6关学习笔记_第14张图片

右键复制图片链接,在新窗口访问, 解析成功upload-labs 1-6关学习笔记_第15张图片

pass-4  (文件名后缀黑名单限制上传

".htaccess绕过"

.htaccess文件(或者"分布式配置文件"),全称是Hypertext Access(超文本入口)。提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。管理员可以通过Apache的AllowOverride指令来设置。

黑名单里没有限制 ".htaccess"

upload-labs 1-6关学习笔记_第16张图片

新建记事本,文件名".htaccess"输入以下内容保存。

  
        SetHandler application/x-httpd-php  

命令允许:1.png图片可被当作php文件,执行图片里的php代码.

先上传".htaccess"文件,然后再上传"1.png"。upload-labs 1-6关学习笔记_第17张图片

上传成功,右键复制图片连接,使用蚁剑链接。

upload-labs 1-6关学习笔记_第18张图片

输入地址和密码,测试连接"警告返回数据为空"

upload-labs 1-6关学习笔记_第19张图片

解决方法:

1.检查phpstudy版本是否为:5.2.17

2.更改编码器为:base64

测试连接:连接成功

upload-labs 1-6关学习笔记_第20张图片

pass-5

第五关限制后缀名很严格,包括大小写和.htaccess文件

绕过方法:添加点空格点'. .'绕过

使用bp抓包,修改后缀。

upload-labs 1-6关学习笔记_第21张图片

点击forward,上传成功upload-labs 1-6关学习笔记_第22张图片

右键复制图片链接,在新窗口访问,解析成功

upload-labs 1-6关学习笔记_第23张图片

pass-6

提示中没有限制大小写

upload-labs 1-6关学习笔记_第24张图片

绕过方法:大小写绕过

使用bp抓包,修改后缀。

upload-labs 1-6关学习笔记_第25张图片

点击forward,上传成功

upload-labs 1-6关学习笔记_第26张图片

右键复制图片链接,在新窗口访问,解析成功

upload-labs 1-6关学习笔记_第27张图片

 如有问题,欢迎留言,一起学习。

你可能感兴趣的:(upload-labs靶场,学习)