upload-labs文件上传漏洞通关

一、环境搭建

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

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

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

二、通关

(一)16关

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

具体示例

将`<?php phpinfo(); ?>`添加到111.gif的尾部.

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

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

使用HxD Hex Editor进行比较

下载地址:HxD - Freeware Hex Editor and Disk Editor | mh-nexus

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

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

(二)17关

第十七关主要是把二次渲染绕过

imagecreatefromjpeg()函数

二次渲染是由Gif文件或 URL 创建一个新图象。成功则返回一图像标识符/图像资源,失败则返回false,导致图片马的数据丢失,上传图片马失败。

进行通关

按照原来的方法进行上传,我们可以发现还是可以上传的,但是配合包含漏洞却无法解析,这时我们把上传的图片复制下来用Notepad打开,发现我们原来写的php代码没有了,这就是二次渲染把我们里面的php代码删掉了。

我们把原图和他修改过的图片进行比较,看看哪个部分没有被修改。将php代码放到没有被更改的部分,配合包含漏洞,就可以了。

然后比较,具体参考上面一题

相关推荐
先做个垃圾出来………7 小时前
算子推理是什么
其他
Shining05961 天前
Datawhale AI 夏令营—科大讯飞AI大赛(大模型技术)—让大模型理解表格数据(列车信息表)
人工智能·学习·其他
草莓熊Lotso2 天前
【LeetCode刷题指南】--有效的括号
c语言·数据结构·其他·算法·leetcode·刷题
xiaobin889992 天前
PowerDesigner安装教程(附加安装包)PowerDesigner详细安装教程PowerDesigner 16.6 最新版安装教程
数据库·其他
JiNan.YouQuan.Soft3 天前
Windows下编译libarchive
其他
zenithdev13 天前
PyCharm安装教程(附加安装包)PyCharm详细安装教程PyCharm 2025 最新版安装教程
ide·python·其他·pycharm
草莓熊Lotso4 天前
【数据结构初阶】--树和二叉树先导篇
c语言·数据结构·经验分享·其他
不爱说话的采儿5 天前
UE5保姆级基础教程(第五章)
经验分享·其他·ue5·游戏引擎·课程设计
Shining05965 天前
Datawhale AI 夏令营-心理健康Agent开发学习-Task1
人工智能·学习·其他·agent
骁的小小站7 天前
The Missing Semester of Your CS Education 学习笔记以及一些拓展知识(三)
开发语言·经验分享·笔记·学习·其他·bash·excel