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代码放到没有被更改的部分,配合包含漏洞,就可以了。

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

相关推荐
数字体验运营官14 小时前
Baklib知识中台高效实践路径
其他
数字体验运营官15 小时前
Baklib构建企业CMS高效协作与安全管控体系
其他
草莓熊Lotso2 天前
【自定义类型-结构体】--结构体类型,结构体变量的创建和初始化,结构体内存对齐,结构体传参,结构体实现位段
c语言·开发语言·经验分享·笔记·其他
charliedev3 天前
Notepad++ 下载与安装教程(小白专属)
其他·notepad++
牛马的人生3 天前
使用亮数据代理IP+Python爬虫批量爬取招聘信息训练面试类AI智能体(手把手教学版)
爬虫·python·tcp/ip·其他
qq_214225873 天前
深入解析 Java GC 调优:减少 Minor GC 频率,优化系统吞吐
java·jvm·其他·性能优化
xiaoqian99974 天前
MySQL高频面试八连问(附场景化解析)
数据库·mysql·其他·面试
小乐爱技术4 天前
使用亮数据代理IP+Python爬虫批量爬取招聘信息训练面试类AI智能体(实战指南)
爬虫·python·tcp/ip·其他
laowangpython4 天前
高频Java面试题深度拆解:String/StringBuilder/StringBuffer三剑客对决(万字长文预警)
java·开发语言·其他
gavin_gxh5 天前
SAP BC 表结构查询
运维·经验分享·其他