【网络安全】文件上传靶场通关(1-11关)

本文阅读 11 分钟
首页 安全分享,WEB安全 正文

博主昵称:<span style="color:#511b78;">跳楼梯企鹅</span><span style="color:#6eaad7;"> </span>
博主主页面链接:<span style="color:#ff9900;">博主主页传送门</span>
创作初心:<span style="color:#ed7976;">本博客的初心为与技术朋友们相互交流,每个人的技术都存在短板,博主也是一样,虚心求教,希望各位技术友给予指导。</span>
博主座右铭:<span style="color:#ffd900;">发现光,追随光,成为光,散发光;</span>
博主研究方向:<span style="color:#fe2c24;">渗透测试、机器学习 ;</span>
博主寄语:<span style="color:#be191c;">感谢各位技术友的支持,您的支持就是我前进的动力 ;</span>

目录

一、简介

二、实验准备

三、实战

1.第一关   ---(前端绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

2.第二关   ---(MINE类型)

(1)看代码

(2)尝试上传  

(3)绕过方法

3.第三关   ---(修改后缀名绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

4.第四关   --- (.htaccess绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

5.第五关   ---(大小写绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

6.第六关   ---(空格绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

7.第七关   ---(.绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

8.第八关   ---(::$DATA绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

9.第九关   ---(. .绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

10.第十关   ---(双写绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

11.第十一关   ---(00截断绕过)

(1)看代码

(2)尝试上传

(3)绕过方法

四、总结

后续持续更新

本次实验利用靶场为upload-labs-env

img

 这个靶场作为文件上传初学者是很友好的,大部分关卡是比较基础的,而且可以看源码了解思路和开发的思路对于初学者来说十分的友好,所以本次汇总一下也是为了分享更多的资料给各位粉丝们学习交流。

首先我们需要了解什么是一句话木马,什么是小马 什么是大马,其次我们需要了解文件上传绕过方式。在前面的文章中我分享过有关文件上传漏洞的绕过方式及其原理介绍。

链接: 文件上传绕过原理

其次我们需要准备好webshell管理工具,比如蚁剑、冰蝎等,我在这里使用蚁剑进行演示。

img

最后,我们还需要burp抓包工具

使用方法请参考文章: Burp使用与实战

img

另外还需要用到010图片对比工具

img

 工具下载链接: 010图片解析工具

1.第一关   ---(前端绕过)

(1)看代码

img

 我们看到代码中看到了白名单,可以作为一个信息点来使用。

(2)尝试上传

 准备好一句话木马文件

img

尝试上传查看回显效果

img

出现一个弹框,很明显的白名单

img

 那么我们尝试抓包看一下img

 我们发现无法抓包,那就说明页面请求没有发送到服务器,那么很有可能是基于前端的绕过方式.

(3)绕过方法

前面两步说明很清楚,这个很有可能是基于前端的过滤,所以我们尝试修改前端代码进行尝试

img

 这里我们可以看到十存在一个前端事件,所以说这里我们可以利用代码修改删除事件进行绕过,那么我们来试一下

img

 这里发现成功的绕过,下面补上一张截图十需要删除的前端事件。

img

我们对上传的文件进行查看,显示空白

img

 下面我们尝试使用hackbar插件发送一个post请求

img

我们看到了phpinfo的文件,这里就进行了绕过。

2.第二关   ---(MINE类型)

(1)看代码

img

 这个我们也可以看到代码中显示如果咱们的后缀名不一样,那么回显出来的信息是文件类型不正确,请重新上传。说明这是一个黑名单。

(2)尝试上传  

上传一句话木马文件

img

回显

img

(3)绕过方法

MINE类型绕过,我们看源码就可以看到过滤机制是对文件进行mine类型检测,

那么我们可以先抓包看一下。

img

将包发送到repeater模块进行重放,修改mine类型的后缀

img

构造url路径查看上传文件

img

 成功绕过

3.第三关   ---(修改后缀名绕过)

(1)看代码

img

分析:在代码中明显的可以看到构造了一个array数组进行验证,而且后面判断回显现实的为不允许上传xxx.xxx后缀文件,说明为黑名单检测。

(2)尝试上传

尝试上传一句话木马

img

 发现回显是不允许上传,那么我们应该在怎么去绕过呢?

有一个思路:我们可以尝试抓包,对数据包进行修改看是否上传成功

(3)绕过方法

 抓包

img

 改包,将后缀php改成php2进行上传。

img

 发送包,这里看到上传成功。

img

 验证时候上传成功

img

 上传成功。

4.第四关   --- (.htaccess绕过)

(1)看代码

img

分析:我们能看到这里对大多数的后缀名做了限制,而且是属于黑名单范畴

(2)尝试上传

上传一句话木马

img

回显此文件不允许上传

img

 那么我们这时候还是在看一下源码,主要看这里,我们发现虽然过滤了很多文件,但没有一个文件被忽略了,apache的内存在一个.htaccess特性文件,是可以利用进行绕过的。

img

(3)绕过方法

抓包

img

改包

img

释放包

img

验证

img

成功绕过。

5.第五关   ---(大小写绕过)

(1)看代码

img

分析:这里代码我们可以了解到基本上我们所用的后缀都给过滤了,然后我们怎么办呢?

可以再看看代码的其他过滤机制,没有看到对大小写的限制,那么我们可以尝试

(2)尝试上传

上传一句话木马文件

img

回显

img

(3)绕过方法

抓包

img

改包

img

释放包

img

验证

img

 成功绕过

6.第六关   ---(空格绕过)

(1)看代码

img

(2)尝试上传

上传一句话木马文件

img

 发现不允许上传,说明存在过滤,咱们之前研究过代码,看到没有限制空格绕过,那么咱们可以继续看一下是否可以绕过。

(3)绕过方法

抓包

img

改包

img

验证

img

成功绕过

7.第七关   ---(.绕过)

(1)看代码

img

分析:代码中可以看到过滤机制,发现少了一项.绕过,那么咱们可以尝试一下

(2)尝试上传

img

(3)绕过方法

抓包

img

 改包

img

 验证

img

 成功绕过

8.第八关   ---(::$DATA绕过)

(1)看代码

img

分析:我们来分析一下代码:发现::$DATA没有过滤,那么我们可以尝试一下

我们来试一试

(2)尝试上传

img

 还是一样的不允许上传,那么我们尝试下,看代码后分析的绕过方式

(3)绕过方法

抓包

img

 改包

img

验证

img

成功绕过

9.第九关   ---(. .绕过)

(1)看代码

img

分析:我们看代码中首先是删除了后缀中的点然后进行了首尾去空的操作,那么我们可以想,如果我们在后缀末尾加上一个.再加上一个空格,那么是不是属于恢复正常,那么我们再次利用点绕过的方式,应该是可以的,那么咱们来尝试一下

(2)尝试上传

上传一句话木马文件

img

 我们发现也是无法上传,说明我们需要其他方式,通过代码的分析下面尝试绕过

(3)绕过方法

抓包

img

改包

img

验证

img

成功绕过

10.第十关   ---(双写绕过)

(1)看代码

img

分析:这个地方的代码主要还是后缀名称被检测到之后,直接为空,但是只执行一次,所以说,我们可以尝试双写绕过的方式

(2)尝试上传

img

 虽然上传成功,但是我们验证的时候是无法查看到phpinfo文件的,

(3)绕过方法

抓包

img

改包

img

验证

img

 成功绕过

11.第十一关   ---(00截断绕过)

(1)看代码

img

分析:代码中有一些信息很重要,我们发现是白名单判断,但$img_path是直接拼接,因此可以利用%00截断绕过

(2)尝试上传

img

 这里明显的白名单,只允许这三种类型的文件上传。那么我们来进行绕过。

(3)绕过方法

抓包

img

 改包验证,发现上传成功。

img

img

 验证

img

成功绕过

本次总结1-11关卡,下一篇继续分享

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/weixin_50481708/article/details/125841872
-- 展开阅读全文 --
BUUCTF Web [极客大挑战 2019]Knife
« 上一篇 06-24
安全面试之XSS(跨站脚本攻击)
下一篇 » 07-24

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复