upload-labs 通关方法

news2024/11/16 18:08:51

目录

Less-1(JS前端验证)

Less-2(MIME验证)

Less-3(黑名单,特殊过滤)

Less-4(黑名单验证,.htaccess)

Less-5(黑名单,点空格点绕过)

Less-6(黑名单,大小写绕过)

Less-7(黑名单,空格绕过)

Less-8(黑名单,点绕过)

Less-9(黑名单,::$DATA)

Less-10(黑名单,点空格点绕过)

Less-11(黑名单,双写绕过)

Less-12-13(白名单,%00截断)

Less-14(图片马绕过unpack)

Less-15(图片马getimagesize)

Less-16(图片马exif_imagetype)

Less-17(二次渲染)

Less-18(条件竞争)

Less-19(条件竞争)

Less-20(图片马,move_uploaded_file)

第一种解法:

第二种解法:

第三种解法:

Less-21


Less-1(JS前端验证)

在前端页面按F12禁用JS

或者删除checkFile()

或者使用burp将 1.jpg 改为 1.php

Less-2(MIME验证)

在这两处修改,1.jpg 改为 1.php

再将内容类型Content-Type改为 image/jpeg、image/png、image/jpg

Less-3(黑名单,特殊过滤)

将 1.php 后缀改为 php2、php3、php5、php7、phtml等绕过(需要php5.3版本)

Less-4(黑名单验证,.htaccess)

相关知识:

.htaccess文件是Apache服务中的一个配置文件,它负责相关目录下的网页配置。

SetHandler application/x-httpd-php  意思是当前目录下,所有文件都以php进行解析

将.htaccess上传之后再随便上传一个带木马的文件即可

或者使用Apache解析漏洞,使用后缀名为.php.aaa.bbb上传

解析时从后往前 .bbb .aaa 不认识 到 .php 开始解析

Less-5(黑名单,点空格点绕过)

使用burp将后缀名后面加上点空格点绕过

Less-6(黑名单,大小写绕过)

源代码过滤了pHp,没有过滤Php、phP等,大小写绕过

Less-7(黑名单,空格绕过)

windows系统搭建的有该漏洞,windows解析时自动去除末尾的空格

在文件后缀名后加上空格即可绕过

Less-8(黑名单,点绕过)

源代码没有过滤点,在末尾加上.即可绕过

Less-9(黑名单,::$DATA)

相关知识:

在window中如果文件名+"::$DATA"会把::$DATA之后的数据当成文件流处理,不会检测后缀名

末尾加上::$DATA绕过即可

Less-10(黑名单,点空格点绕过)

补充知识:

deldot()函数从后向前检测,当检测到末尾的第一个点时会继续它的检测,但是遇到空格会停下来

后缀加上点空格点绕过即可

Less-11(黑名单,双写绕过)

补充知识:

str_ireplace(find,replace,string,count) 函数替换字符串中的一些字符(不区分大小写)

后缀名使用双写绕过

Less-12-13(白名单,%00截断)

%00截断的限制条件是PHP<5.3.29,且GPC关闭

因为当 magic_quotes_gpc 打开时,所有的 ' (单引号), " (双引号), \ (反斜线) and 空字符会自动转为含有反斜线的转义字符。

在POST请求头HTTP之前加上1.php%00进行截断,下面文件为白名单格式(1.png、1.jpg)

Less-14(图片马绕过unpack)

补充知识:

unpack是二进制解包,前两个字节解包分为两个包,然后合并结合switch判断

使用生成的图片马上传即可

Less-15(图片马getimagesize)

补充知识:

getimagesize用于获取图像大小及相关信息,成功返回一个数组,失败则返回 FALSE

与14关相同,上传图片马即可绕过

Less-16(图片马exif_imagetype)

补充知识:

开启模块之后,做法与14关相同

Less-17(二次渲染)

补充知识:

imagejpeg — 输出图象到浏览器或文件。

使用php版本(PHP 4, PHP 5, PHP 7, PHP 8)

上传一张图片马,创建一张画布,重新绘画进行二次渲染

上传成功之后下载下来使用winhex二进制查看

与原来的图片进行对比,在没有改动的地方插入木马

将插入木马的图片再次上传即可

Less-18(条件竞争)

使用木马脚本

上传脚本,在没有被删除之前执行脚本

python代码

使用burp配合python,上传到burp拦截,然后使用burp进行爆破

python先开启,一直访问这个url,当执行代码没来得及删除的时候python访问到,执行代码

执行之后会写入一个shelltest.php文件,如下所示

执行shelltest.php文件即可

Less-19(条件竞争)

文件名改为白名单,条件竞争在改名之前访问到url生成木马,与18关相同

python代码有所更改

也可以使用非预期解,直接上传图片马,文件包含

Less-20(图片马,move_uploaded_file)

第一种解法:

补充知识:

本关用move_uploaded_file函数执行上传动作,该函数会忽略文件末尾的 ' /. '

因此可以在文件名后加/.这两个符号来绕过黑名单的限制。

使用burp抓包,在高亮处加上/.即可绕过

第二种解法:

上传图片马,文件包含

第三种解法:

直接上传文件,大小写绕过

Less-21

本关请参考另一篇博客

upload-labs 21关解析-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1684519.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

「项目」负载均衡在线OJ(ONLINE_JUDGE)系统

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C&#xff0c;linux &#x1f525;座右铭&#xff1a;“不要等到什么都没有了…

Unity 开发Hololens,制作面板跟随眼镜一起移动,(面板跟踪)

Hololens滑动框以及面板跟踪 创建空物体&#xff0c;并添加组件 SolverHandler、RedialView、FollowMeToggle 创建按钮&#xff0c;控制停止/开始跟踪 创建一个Hololens自带的按钮放到右上角&#xff0c;并添加事件 创建蓝色背景板 创建空物体Backplate&#xff0c;下面再…

专题汇编 | ChatGPT引领AIGC新浪潮(一)

ChatGPT的产生与迭代 2022年11月末,美国人工智能研究实验室OpenAI推出ChatGPT。上线的ChatGPT只用了2个月,活跃用户数就突破了1亿,创造了应用增速最快的纪录。 ChatGPT是什么 ChatGPT是一种人工智能技术驱动的自然语言处理(Natural Language Processing,NLP)工具,使用的…

【Linux学习】进程基础API

下面是有关进程基础API的相关介绍&#xff0c;希望对你有所帮助&#xff01; 小海编程心语录-CSDN博客 目录 1. 僵尸进程与孤儿进程 1.1 孤儿进程 1.2 僵尸进程 2. 监视子进程 2.1 wait() 2.2 waitpid() 3. 执行新程序 exec族函数 4. 守护进程 1. 僵尸进程与孤儿进程…

PHP报错 Notice: Undefined index: action in

upload靶场PHP报错 Notice: Undefined index: action in 修改 php.ini 中的 error配置下错误显示方式&#xff1a;将error_reporting E_ALL 修改为 error_reporting E_ALL & ~E_NOTICE 修改后重启下APCHE服务即可。

Java方法的基本用法

Java方法的基本用法 前言一、什么是方法方法存在的意义示例 二、方法定义语法基本语法代码示例注意事项 三、方法调用的执行过程基本规则代码示例计算两个整数相加计算 1! 2! 3! 4! 5! 四、实参和形参的关系代码示例交换两个整型变量原因分析解决办法 五、没有返回值的方法…

SWM190系列应用

一、SWM190系列IO端口应用 1.1、SWM19SCBT6 B0端口引起的漏电流 SWM19S的IAP升级必须上拉B0&#xff0c;但B0会漏电&#xff0c;B0接高对方不止需要改版还会增加大概50ua的功耗。由于芯片内置的ROMCode默认B0脚切下拉。所以说接高电平会漏电。 在APP应用中&#xff0c;测试了直…

【C语言】strstr函数的使用和模拟

前言 今天给大家带来一个字符串函数&#xff0c;strstr()的使用介绍和模拟实现。 模拟实现这个函数&#xff0c;可以帮助我们更深刻地理解这个函数的功能和提高解决字符串相关问题的能力&#xff0c;有兴趣的话就请往下看吧。 strstr函数介绍 函数功能&#xff1a; strstr函…

CentOS 服务器系统常用命令

本文系统centos 8.5 1 w 显示当前登录到系统的用户信息,比如IP &#xff0c;执行程序等 2 who 用于显示当前登录到系统的用户列表 3 last 显示最近登录到系统的用户列表. 4 df -h 查看磁盘信息 5 fdisk -l 查看机器所挂硬盘个数及分区情况. 6 passwd 修改密码 7 find …

AWS容器之Amazon ECS

Amazon Elastic Container Service&#xff08;Amazon ECS&#xff09;是亚马逊提供的一种完全托管的容器编排服务&#xff0c;用于在云中运行、扩展和管理Docker容器化的应用程序。可以理解为Docker在云中对应的服务就是ECS。

RPC原理技术

RPC原理技术 背景介绍起源组件实现工作原理 背景 本文内容大多基于网上其他参考文章及资料整理后所得&#xff0c;并非原创&#xff0c;目的是为了需要时方便查看。 介绍 RPC&#xff0c;Remote Procedure Call&#xff0c;远程过程调用&#xff0c;允许像调用本地方法一样调…

VLAN创建及配置

V-- 虚拟 LAN ---局域网 ---地理覆盖范围较小的网络 MAN ---城域网 WAN ---广域网 VLAN ---虚拟局域网 --- 交换机和路由器协同工作后&#xff0c;将原先的一个广播域&#xff0c;逻辑上切分为多个 第一步:创建VLAN [Huawei]display vlan---查看VLAN信息 VID -- VLAN ID ----…

专为汽车内容打造的智能剪辑解决方案

汽车内容创作已成为越来越多车主和汽车爱好者热衷的活动。然而&#xff0c;如何高效、便捷地将行车途中的精彩瞬间转化为高质量的视频作品&#xff0c;一直是困扰着广大用户的一大难题。美摄科技凭借其深厚的视频处理技术和智能分析能力&#xff0c;推出了专为汽车内容记录而生…

C#Csharp,SharpPcap网络抓包程序及源码(适合网络分析直接使用或源码二次开发)

目录 1.程序简介2.程序截图3.程序源码 1.程序简介 C#Csharp,SharpPcap网络抓包程序及源码&#xff08;适合网络分析直接使用或源码二次开发&#xff09; 2.程序截图 3.程序源码 https://download.csdn.net/download/xzzteach/89325817

【Unity学习笔记】第十七 Quaternion 中 LookRotation、Lerp、Slerp、RotateTowards等方法辨析与验证

转载请注明出处: https://blog.csdn.net/weixin_44013533/article/details/138909256 作者&#xff1a;CSDN|Ringleader| 目录 Quaternion API 速览FromToRotation在Transform中的应用LookRotation 中upwards取Vector3.up和 transform.up的区别旋转时如何保持Y轴不变&#xff…

软管的高速非接触外径测量方案!单双轴测径仪多种类型!

一、传统测量方式的局限 在软管外径的测量领域&#xff0c;传统方式往往面临多重挑战&#xff1a; 1、挤压变形&#xff1a;传统的测量方式可能导致软管因挤压而变形&#xff0c;进而影响测量数据的准确性。 2、人为误差&#xff1a;测量结果常因人为因素而有所差异&#xff0c…

文本转语音软件-TTSMaker

一、TTSMaker介绍 TTSMaker&#xff08;马克配音&#xff09;是一款免费的文本转语音工具&#xff0c;提供语音合成服务&#xff0c;支持多种语言&#xff0c;包括中文、英语、日语、韩语、法语、德语、西班牙语、阿拉伯语等50多种语言&#xff0c;以及超过300种语音风格。 可…

春秋云境CVE-2023-50564

简介 Pluck-CMS v4.7.18 中的 /inc/modules_install.php 组件&#xff0c;攻击者可以通过上传一个精心制作的 ZIP 文件来执行任意代码。 正文 1.进入靶场 2.弱口令进入 admin123 3.找上传点 4.将木马打包&#xff0c;上传一句话木马 5.蚁剑连接6.得到flag

前端 CSS 经典:filter 滤镜

前言&#xff1a;什么叫滤镜呢&#xff0c;就是把元素里的像素点通过一套算法转换成新的像素点&#xff0c;这就叫滤镜。而算法有 drop-shadow、blur、contrast、grayscale、hue-rotate 等。我们可以通过这些算法实现一些常见的 css 样式。 1. drop-shadow 图片阴影 可以用来…

程序包org.springframework.boot不存在

springBoot项目启动报错 程序包org.springframework.boot不存在 1、检查依赖 首先检查pom文件判断依赖是否存在 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><version>2.4.5…