upload-labs 1-17关,实操通关记录

第一关

首先写上木马,然后查看源码
在这里插入图片描述

抓包改包

可以得知只允许上传jpg,png,gif,文件,然后我们可以将一句话木马后缀改为以上后缀
在这里插入图片描述
用burp抓包改包
在这里插入图片描述改为php文件
在这里插入图片描述上传成功
或者直接上传图片马,但是据说好像图片马不会被php代码直接识别不太好用(但是,这之说文件上传,不用连接数据库)

修改前端js代码

,因为是前端测试,F12找到关于上传文件限制的代码删除就可

第二关

查看源码,跟DVWA的Medium等级的代码都一摸一样
就是MIME类型的文件上传,可以看DVWA文件上传
在这里插入图片描述

第三关

老规矩,先看代码块
在这里插入图片描述

直接改后缀上传

就目前的php学习来看,我看不懂这些东西,但是用过复现才知道这是黑明单过滤,但是也没见过白名单过滤,不知道这俩源码区别等回头见到了再总结一手。
通过对大佬博客的学习,发现这关有两种解法。就我而言,我觉得它绕过这些被放入黑名单的后缀就好了,但是,改了后缀之后,不会被php代码所解析,需要在本机apache配置文件http.conf文件http.conf作用是可以将当前所有文件都使用PHP解析,那么无论上传任何文件,只要文件内容符合PHP语言代码规范,就会被当做PHP执行。不符合则报错。
在apache中寻找在这里插入图片描述
将选中的文件增加如下图选中的代码,即可以将.phtml .php5 .pht .phps这些文件当作php代码解析

在这里插入图片描述
将文件后缀改为.php5,即可,当然,刚刚在apache中修改的后缀都可以用
在这里插入图片描述
在这里插入图片描述上传成功

运用burp爆破得到可以上传的文件后缀

这个我觉得…跟上面没太大区别。主要是就是一些寻找后缀的区别,上传上去后还是需要http.conf这个来分析php代码
在这里插入图片描述在这里插入图片描述
在这里插入图片描述选择其一
在这里插入图片描述
会出来一个网址,关代理,停抓包,在代理浏览器上访问即可(我的没成功,不放图了。)

第四关

源码展示
在这里插入图片描述更严密的黑名单
通过对大佬的学习,发现这是个黑名单文件上传(.htaccess类型)大概可能就是把能上传的大多数文件类型都给禁了然后就剩个别(估计就剩.htaccess文件了),查半天也没见别的写法
此前先把AllowOverride NOne改为AllowOverride All
在这里插入图片描述新建.htaccess文件
在这里插入图片描述然后上传
在这里插入图片描述然后就可以上传.jpg文件了
在这里插入图片描述

第五关

看源码,黑名单,这次连.htaccess文件也过滤了
在这里插入图片描述我的第五关和别人不一样,他们第五关都是大小写过滤,我的不是。
在这里插入图片描述
按照杰佬的说法他既然过滤那就制造过滤,后缀放上空格和点
我疑问难道过滤是一次性的?
在这里插入图片描述放上已经后缀改大写的shall,抓包改包
在这里插入图片描述
在这里插入图片描述
未报错,上传成功

第六关

在这里插入图片描述强大的黑名单,但是没过滤大小写
在这里插入图片描述
这快乐不就来了

第七关

在这里插入图片描述强大的黑名单,但是没过滤空格 懂?
在这里插入图片描述
上传成功
double 快乐

第八关

在这里插入图片描述
没过滤点就是.
三倍快乐抓包改包懂自懂,不懂也没办法

第九关

在这里插入图片描述

制造过滤

过滤的挺全,试试我的一次性过滤猜想,给它制造过滤
在这里插入图片描述
整挺好

在这里插入图片描述上传成功

::$DATA绕过

在php+windows的情况下:如果文件名+"::$DATA"会把::$DATA之后的数据当成文件
流处理,不会检测后缀名.且保持"::$DATA"之前的文件名。利用windows特性,可在后
缀名中加” ::$DATA”绕过

从某佬那搬来的嘿嘿嘿~~~~
在这里插入图片描述然后就可以了

第十关

在这里插入图片描述跟第五关一样
制造过滤

第十一关

在这里插入图片描述不一样了,有新东西
在这里插入图片描述多少有点改名字的感觉,看大佬的博客,说是双写绕过,我复现一手
先看看它把名字怎么改的
离谱的是…我随便传上去一个大小写…真就传上去了(这不就过关了?。。)
在这里插入图片描述
在这里插入图片描述
复制出来而得到
在这里插入图片描述后缀没了(这就是双写绕过吗,diao啊)
据大佬说会将黑名单中的后缀改为空格,执行一次(双写此名就此而来)
在这里插入图片描述在这里插入图片描述上传成功
在这里插入图片描述
但是大佬这么操作,不明白…求教

第十二关

在这里插入图片描述白名单和%00截断Get
只准上传jpg png gjf这三种文件
%00截断:%00是十六进制表示方法,是ascii码为0的字符,在有些函数处理时,会把这个字符当做结束符。系统在对文件名的读取时,如果遇到0x00,就会认为读取已结束。这个可以用在对文件类型名的绕过上(大佬的解释)
在这里插入图片描述所指的地方就是保存路径改为.php文件
在这里插入图片描述上传出错,因为php版本过高,大于5.4就不能用了。但是操作没问题。

第十三关

在这里插入图片描述跟刚刚的区别就是这个是post 刚刚是get

如何判断是post还是get,get的save path是在上面,但是这个post是在下面的
在这里插入图片描述
更改为webshall.php%00
但是post只识别16进制所以在这里插入图片描述
在这里插入图片描述改为16进制即可

第十四关

在这里插入图片描述上传三张图
gif:绕过文件头检查在这里插入图片描述
png和jpg,手动做图片马就行

第十五关

getimagesize()检测,感觉不到有什么不同,十四关能上传的我都能传上去,不知为何。

第十六关

说要开那个功能,用图片马再次绕过就行,但是我的老闪退,不演示了

第十七关

复杂的一批,等学了再写,附上连接link
g关于二次渲染的文章,这位佬写的细的一批。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值