upload-labs11-16关

第十一关(双写)

源码分析
他这个是直接将上边数组存在的后缀名替换为空了,所以我们可以双写上传
在这里插入图片描述抓包防包
在这里插入图片描述发现上传成功了
在这里插入图片描述第十二关(get型%00截断)
源码分析
白名单机制,但是$img_path直接拼接,因此可以利用%00截断绕过。
可以使用00截断,php后空格十六进制的20改为00
条件:php版本小于5.3.4 2、php.ini的magic_quotes_gpc为OFF状态
知识点:这里利用的是00截断。move_uploaded_file函数的底层实现类似于C语言,遇到0x00会截断。
在这里插入图片描述在这里插入图片描述在这里插入图片描述抓包分析

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

在这里插入图片描述发现php文件和jpg的文件都上传上来了
在这里插入图片描述然后再连接测试
不再赘述

第十三关(post型%00截断)

源码分析
发现和上一关差不多,但是这个是用post传参的
发现这关和十二关不同的是这次的save_path是通过post传进来的,还是利用00截断,但这次需要在二进制中进行修改,因为post不会像get对%00进行自动解码。
在这里插入图片描述咱们抓个包看一下
然后发送
在这里插入图片描述然后将刚才构造的语句复制到bp下的Decoder模块下进行二进制分段
因为p的二进制是70,-的二进制是0a
然后在70和0a之间进行二进制分段,点击insert byte按钮进行分段
在这里插入图片描述在这里插入图片描述然后将分段完成的直接复制到

在这里插入图片描述然后再进行发送
在这里插入图片描述发现上传成功
在这里插入图片描述发现上传成功
或者有一个简单的方法
在这里插入图片描述直接编码然后防包或者发送给重法器都可以
也能成功
在这里插入图片描述

第十四关(图片码上传)

可以看到第二行的源码,然后只读两行
我们可以将一句话木马前边加上进行构造GIF89a。
也可以用图片码
在这里插入图片描述unpack() 函数从二进制字符串对数据进行解包
在这里插入图片描述在这里插入图片描述我们首先要构造一个图片码
在这里插入图片描述然后上传

在这里插入图片描述发现上传成功
然后我们利用文件包含漏洞进行解析

http://127.0.0.1:8086/upload/include.php?file=./upload/2820201223130544.jpg

在这里插入图片描述然后解析完成之后直接复制路径,然后用蚂蚁连接
在这里插入图片描述发现成功

第十五关()

源码分析
getimagesize — 取得图像大小
image_type_to_extension — 取得图像类型的文件后缀
第一行是获取图像大小
然后第二行是获取后缀
就是大概的意思是判断这个文件是否为图片
getimagesize() 函数用于获取图像大小及相关信息,成功返回一个数组,失败则返回 FALSE 并产生一条 E_WARNING 级的错误信息。
在这里插入图片描述http://127.0.0.1:8086/upload/upload/6420201223134131.gif
上传了一个gif的文件
然后我们再利用和14关相同的方法去包含解析

第十六关()

源码分析
exif_imagetype — 判断一个图像的类型
在这里插入图片描述这一关需要开启php_exif模块。phpstudy很好打开此模块。
同前两关

同样的开启这个模块之后上传一个图片,再文件包含,即可连接成功
在这里插入图片描述http://127.0.0.1:8086/upload/upload/8820201223135032.jpg
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值