upload-labs

news2024/10/5 21:19:39

01

随便上传个文件

发现对于上传类型有限制

查看页面代码发现是js的过滤直接关闭js

上传成功

右键图片在新建标签页打开文件

这里直接抓包改名字也行

02

抓包修改后缀名

03

发现后端做了检测抓包修改失败

大小写绕过失败,php特性php1等会被当成php执行

这里图片的名称已经不是我们传递进去的名称了在响应里面看到

这里是因为phpstudy的http配置文件中没有允许.php3格式所以显示不了

04

这里和上面的差别在于没有对我们传入的文件名做改变

php3也被过滤了使用.htaccess

htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

我们在htaccess文件中可以添加

AddHandler php5-script .jpg             使用php5-script将特定的拓展文件映射为php文件

AddType application/x-httpd-php .jpg    将特定的拓展文件映射为php文件

Sethandler application/x-httpd-php 将当前目录下所有文件都映射为php文件

上传.htaccess

05

这里没有对我们传入的文件进行大小写转换

访问

06.

这里没有对文件后面的空格进行处理,可以在文件后面加上空格,由于windows特性,文件名后空格会被直接删除

07

这里没有对文件后面的.做处理

08

这里没有对后缀名有没有::$DATA进行判断,利用windows系统NTFS特征可以绕过上传

在window的时候如果文件名+"::$DATA"会把::$DATA之后的数据当成文件流处理,不会检测后缀名,且保持::$DATA之前的文件名,其实和空格绕过点绕过类似

09

这里对于.和空格的检测只进行一次我们使用. .先进行.的处理再到 的处理就可以逃逸最先的.

10

这里的对于后缀名的处理和之前不一样,这里采用将匹配到的后缀名替换为空使用双写绕过

11

这里使用%00截断

利用条件

php版本小于 5.3.4
php.ini 中magic_quotes_gpc设置为off


原理上传 www.xxx.com/xxx.php%00a.jpg --> www.xxx.com/xxx.php
后面是截断后的成果%00后面不加数据也没关系

12.

第12和11不同在于接收方式不同,12是通过post的方式接收的

这里要对%00进行urldecode编码

13.

制作图片码

14.

和上一题的差别在于通过getimagesize函数对目标的十六进制的前几个字符串进行读取。png的文所以这关和第十三关一样,我们只需要用打开图片马,在前面加上GIF89A,保存为14.png,然后和上题一样

15.

用了exif_imagetype() 读取一个图像的第一个字节并检查其签名和13,14关一样。


 

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

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

相关文章

RE2文本匹配调优实战

引言 在RE2文本匹配实战的最后,博主说过会结合词向量以及其他技巧来对效果进行调优,本篇文章对整个过程进行详细记录。其他文本匹配系列实战后续也会进行类似的调优,方法是一样的,不再赘述。 本文所用到的词向量可以在Gensim训练…

如何用CHAT写方案?

问CHAT:帮我写一份航空无动力乐园的可执行方案 CHAT回复: 方案一:概念及地点筛选 航空无动力乐园是指以航空运动为主题,利用自然地形与风力进行滑翔、跳伞等无动力航空运动的户外休闲娱乐乐园。鉴于此,首需要确定乐园…

裸机单片机适用的软件架构

单片机通常分为三种工作模式,分别是 1、前后台顺序执行法 2、操作系统 3、时间片轮询法 1、前后台顺序执行法 利用单片机的中断进行前后台切换,然后进行任务顺序执行,但其实在…

windows错误事件 98、41、7000、55、153解决办法

事件错误:98、55、153 疑难解答清单 在系统事件日志中,搜索新技术文件系统 (NTFS) 和磁盘相关的警告和错误。 例如,事件 ID 55、153 或 98。 管理员身份打开CMD,运行命令 chkdsk /scan 并检查结果。 该 chkdsk /scan 命令是只读…

SpringMVC项目出现404

目录 问题讲解: 解决方案: 1、处理器映射器和处理器适配器以及视图解析器没有配置好 2、Controller的包扫描没有加或者包扫描的配置是错误的 3、当然也有说jar包没有 4、请求地址是错误的 5、还有一种解决办法说web.xml配置DispatcherServlet的时…

有病但合理的 ChatGPT 提示语

ChatGPT 面世一年多了,如何让大模型输出高质量内容,让提示词工程成了一门重要的学科。以下是一些有病但合理的提示词技巧,大部分经过论文证明,有效提高 ChatGPT 输出质量: ​1️⃣ Take a deep breath. 深呼吸 ✨ 作用…

直流电和交流电

直流电(Direct Current,简称DC)和交流电(Alternating Current,简称AC)是电流的两种基本形式。 1. 直流电 直流电是指电流方向始终保持不变的电流。在直流电中,电子只能沿着一个方向移动。直流电…

力扣17. 电话号码的字母组合(java 回溯法)

Problem: 17. 电话号码的字母组合 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 题目给定一串数字,要求我们找出所有可能的字母组合,即我们可以穷举出所有可能的结果,而涉及到穷举我们自然可以想到利用回溯来解决问题&#xff0c…

Win10操作系统安装Python

1 Python解释器下载 1.1 安装环境 Windows 10 专业工作站版22H2 python-3.9.6-amd64.exe 1.2 下载地址 Python官网:Welcome to Python.org Python镜像:CNPM Binaries Mirror 2 Python解释器安装 2.1 Install Python 3.9.6 (64-bit)界面 双击运行下…

1个电子书模板网站!分分钟制作出精美电子书

随着互联网的发展,电子书已经成为了越来越多人的选择。想要制作一本精美的电子书,却苦于没有专业的技能和工具?别担心,小编向大家推荐一个电子书模板网站,让你分分钟制作出精美电子书! 这个网站叫做[FLBOOK…

.net 安装Postgresql驱动程序ngpsql

.net 安装Postgresql驱动程序ngpsql 最近搞一个物联网项目,需要采集fanuc数控机床的数据,厂家提供的API只支持windows,所以就决定C#开发,数据库用postgresql, 安装数据库驱动一波三折。 作为一个讨厌微软的老程序猿&…

宝塔面板部署Apache服务器搭建本地站点发布到公网可访问【内网穿透】

文章目录 前言1. 环境安装2. 安装cpolar内网穿透3. 内网穿透4. 固定http地址5. 配置二级子域名6. 创建一个测试页面 正文开始前给大家推荐个网站,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家…

CTF比赛中web安全题型讲解

在CTF(Capture The Flag)竞赛中,Web安全题目是测试参赛者对Web应用漏洞利用和防御能力的重要环节。以下是30道Web类题型及其标准答案,对初次打比赛的网安人员来说,还是有一些帮助的,喜欢可以收藏。 题目及…

六级高频词组1

目录 词组 参考链接 词组 1. abide by(be faithful to ;obey)忠于;遵守。 2. be absent from… 缺席,不在 3. absence or mind(being absent-minded) 心不在焉 4. absorb(take …

POJ - 2528 Mayor‘s posters

本题注意离散化的时候可能会出现区间串联情况&#xff0c;比如 [1,10] [5,10] [1,4] 和 [1,10] [6,10] [1,4] 直接离散化的话两者一样&#xff0c;但是实际上是不一样的 解决办法是你在相邻的差不是1的数对中再插一个数就好了 离线区间染色 查询根节点 #include<iostrea…

LeetCode力扣每日一题(Java):21、合并两个有序链表

一、题目 二、解题思路 1、我的思路 两个有序链表的合并已经是老生常谈的话题了&#xff0c;大家肯定并不陌生 依次比较两链表结点的值&#xff0c;将值小的添加到新链表的末尾&#xff0c;并将指针后移&#xff08;因为之前学C语言说说惯了指针&#xff0c;不知道在java中…

【Android开发-25】Android中多线程编程用法介绍

1&#xff0c;线程基本用法 在Android中&#xff0c;线程的使用主要有两种方法&#xff1a;一种是扩展java.lang.Thread类&#xff0c;另一种是实现Runnable接口。 1.1以下是一个简单的Android线程继承Thread的用法示例&#xff1a; public class MyThread extends Thread {…

ffmpeg过滤器filter理论与实战

文章目录 前言一、DirectShow1、简介2、程序基本结构3、架构 二、过滤器1、视频过滤器 -vf2、音频过滤器 -af3、过滤器链&#xff08;Filterchain&#xff09;4、过滤器图&#xff08;Filtergraph&#xff09;①、基本语法②、Filtergraph 的分类 5、结构体间的关系图 三、过滤…

手动搭建Magento电商网站

Magento是一个用PHP编写的开源电子商务平台。它的架构是可扩展和模块化的&#xff0c;使其成为构建大中型网站的绝佳选择。Magento支持从5.6到7.1的PHP版本&#xff0c;并利用MySQL数据库进行数据存储。本文将为您介绍如何在CentOS 7操作系统的ECS实例上搭建Magento电商网站。 …

如何优雅使用 vue-html2pdf 插件生成pdf报表

使用 vue-html2pdf 插件 业务背景&#xff0c;老板想要一份能征服客户的pdf报表&#xff0c;传统的pdf要手撕&#xff0c;企业中确实有点耗费时间&#xff0c;于是github上面看到开源的这个插件就…废话不多说&#xff0c;直接上教程 1.使用下面命令安装 vue-html2pdf npm i…