upload-labs文件上传漏洞通关

 一、环境搭建

upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。

下载地址:https://github.com/c0ny1/upload-labs/releases

在 win 环境下 直接解压到phpstudy下即可

upload-labs文件上传漏洞通关_第1张图片

二、通关

(一)16关

解题思路;生成带有php代码的图片上传,配合包含漏洞拿下此关。

具体示例

将``添加到111.gif的尾部.

upload-labs文件上传漏洞通关_第2张图片

成功上传含有一句话的111.gif,再将上传的图片下载到本地.

我们使用16进制编辑器将其打开.可以看到下载下来的文件名已经变化,所以这是经过二次渲染的图片.

 使用HxD Hex Editor进行比较
下载地址:HxD - Freeware Hex Editor and Disk Editor | mh-nexus

upload-labs文件上传漏洞通关_第3张图片

我们将代码写到没有变化的位置.

上传后在下载到本地使用16进制编辑器打开

upload-labs文件上传漏洞通关_第4张图片

(二)17关

第十七关主要是把二次渲染绕过
imagecreatefromjpeg()函数
二次渲染是由Gif文件或 URL 创建一个新图象。成功则返回一图像标识符/图像资源,失败则返回false,导致图片马的数据丢失,上传图片马失败。
进行通关
按照原来的方法进行上传,我们可以发现还是可以上传的,但是配合包含漏洞却无法解析,这时我们把上传的图片复制下来用Notepad打开,发现我们原来写的php代码没有了,这就是二次渲染把我们里面的php代码删掉了。
我们把原图和他修改过的图片进行比较,看看哪个部分没有被修改。将php代码放到没有被更改的部分,配合包含漏洞,就可以了。
然后比较,具体参考上面一题

你可能感兴趣的:(其他)