当前位置: 首页 > news >正文

UPLOAD LABS | UPLOAD LABS 靶场初识

关注这个靶场的其它相关笔记:UPLOAD LABS —— 靶场笔记合集-CSDN博客

0x01:UPLOAD LABS 靶场简介

UPLOAD LABS 靶场是一个专门用于学习文件上传漏洞攻击和防御的靶场。它提供了一系列文件上传漏洞的实验环境,用于帮助用户了解文件上传漏洞的原理和防御技术。

该靶场使用 PHP 语言编写,目前一共有 21 关,每一关都包含着不同种类的上传方式。以下是使用该靶场的一些注意事项:

  1. 靶场中的每一关都没有固定的通关方法,所以希望使用者不要思维局限!

  2. 本项目提供的 writeup(通过思路)只是起到一个参考作用。

  3. 如果您在通关时,实在没有思路,推荐点击 查看提示 按钮。(别害怕失败)

  4. 如果在黑盒情况下,您实在无法过关,推荐点击 查看源码 按钮。

0x02:UPLOAD LABS 靶场安装

0x0201:Windows 操作系统安装 UPLOAD LABS 靶场

附件资源

  • 靶场运行环境

    • PhpStudy - CSDN 配套资源:phpstudy_2016.zip

    • PhpStudy - 官网地址:小皮面板(phpstudy) - 让天下没有难配的服务器环境!

  • 靶场资源包

    • UPLOAD LABS 源码包 - CSDN 配套资源:upload-labs.zip - 建议使用 PHP 5.4.45 版本

    • UPLOAD LABS 源码包 - 官网地址:https://github.com/c0ny1/upload-labs

Windows 操作系统安装 UPLOAD LABS 靶场,主要分为以下两步:

  1. 靶场运行环境搭建(PHP 5.4.45 + Apache) - PhpStudy => 参考:PhpStudy 使用手册

  2. 导入 UPLOAD LABS 靶场源码。

这里主要介绍第二步,靶场的运行环境我们采用 PhpStudy 一键集成部署即可,PhpStudy 的安装方法可以参考上面提供的链接(内含:Windows 与 Linux 操作系统安装 PhpStudy 的步骤)。

注意:本关的 PHP 环境需要使用 phpstudy_2016.zip,否则后续很多关卡会无法配置。

1. 导入 UPLOAD LABS 靶场源码

首先,从 “附件资源“ 中下载靶场资源包,并进行解压操作:

然后,我们要将解压后的靶场文件,放到站点根目录下。PhpStudy 中定位站点根目录的方法如下:

打开站点根目录后,直接将解压后的靶场源码拖进去即可:

下面是 upload-labs 文件夹中的内容,直接就是源码(注意不要嵌套多余的文件夹,如果出现了多级文件夹,请删除多余的部分,确保和笔者的目录层级一样):

2. 访问并使用 UPLOAD LABS 靶场

在访问 UPLOAD LABS 靶场之前,一定要先确保自己已经开启了 Apache 服务:

然后,我们就可以访问并使用 UPLOAD LABS 靶场啦。由于我们一开始是将靶场源码放在了 localhost 站点的 upload-labs 文件夹下,所以我们访问靶场的地址如下:

 http://localhost/upload-labs/

0x0202:Linux 操作系统安装 UPLOAD LABS 靶场

 附件资源

  • 靶场运行环境

    • PhpStudy - 官网地址:小皮面板(phpstudy) - 让天下没有难配的服务器环境!

  • 靶场资源包

    • UPLOAD LABS 源码包 - CSDN 配套资源:upload-labs.zip - 建议使用 PHP 5.4.45 版本

    • UPLOAD LABS 源码包 - 官网地址:https://github.com/c0ny1/upload-labs

Linux 操作系统安装 UPLOAD LABS 靶场,主要分为以下两步:

  1. 靶场运行环境搭建(PHP 5.4.45 + Apache) - PhpStudy => 参考:PhpStudy 使用手册

  2. 导入 UPLOAD LABS 靶场源码。

这里主要介绍第二步,靶场的运行环境我们采用 PhpStudy 一键集成部署即可,PhpStudy 的安装方法可以参考上面提供的链接(内含:Windows 与 Linux 操作系统安装 PhpStudy 的步骤)。

1. 导入 UPLOAD LABS 靶场源码

首先,我们需要准备靶场的源码包,直接从附件资源中下载即可(不需要解压):

然后我们需要定位网站的根目录,并把靶场压缩包上传至站点根目录下,定位流程如下:

打开站点根目录后,点击 ”文件上传“,将 UPLOAD LABS 的压缩包进行上传:

上传完毕后,我们需要解压 upload-labs.zip 文件,直接在小皮面板中操作即可(这里最好创建一个 upload-labs 文件夹来存放解压后的文件):

解压成功后的样式如下图所示,至此我们已经成功导入了靶场源码了:

2. 访问并使用 UPLOAD LABS 靶场

在访问 UPLOAD LABS 靶场之前,一定要先确保自己已经开启了 nginx 服务:

然后,我们就可以访问并使用 UPLOAD LABS 靶场啦。由于我们一开始是将靶场源码放在了 localhost 站点的 upload-labs 文件夹下,所以我们访问靶场的地址如下:

 http://localhost/upload-labs/

相关文章:

UPLOAD LABS | UPLOAD LABS 靶场初识

关注这个靶场的其它相关笔记:UPLOAD LABS —— 靶场笔记合集-CSDN博客 0x01:UPLOAD LABS 靶场简介 UPLOAD LABS 靶场是一个专门用于学习文件上传漏洞攻击和防御的靶场。它提供了一系列文件上传漏洞的实验环境,用于帮助用户了解文件上传漏洞的…...

Samba服务器常见问题处理

指定的网络文件夹目前是以其他用户名和密码进行映射的。要用其他用户名和密码进行连接,首先请断开所有现有的连接到网络共享的映射 解决方案 单击“开始”菜单,选择“运行…”。 在弹出的窗口中,输入cmd 进入命令行模式,并输入…...

Java基础 设计模式——针对实习面试

目录 Java基础 设计模式单例模式工厂模式观察者模式策略模式装饰器模式其他设计模式 Java基础 设计模式 单例模式 单例模式(Singleton Pattern) 定义:确保一个类只有一个实例,并提供一个全局访问点来访问这个实例。适用场景&…...

最大公约数和最小公倍数-多语言

目录 C 语言实现 Python 实现 Java 实现 Js 实现 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 程序分析: 最小公倍数输入的两个数之积除于它们的最大公约数,关键是求出最大公约数; 求最大公约数用辗转…...

第三方数据库连接免费使用和安装

是强大的一体化数据库开发解决方案,可从单一应用程序无缝连接多个数据库,包括 MySQL、PostgreSQL、MongoDB、MariaDB、SQL Server、Oracle、SQLite 和 Redis。 下载:https://download.csdn.net/download/mo3408/90045937 升级特性 模型&…...

水库大坝安全监测之量水堰计应用

量水堰计是水库大坝安全监测系统中的一种关键设备,主要用于测量水库水位、流量等水力参数。以下是量水堰计在水库大坝安全监测中的应用及注意事项: 一、量水堰计的工作原理 量水堰计是一种专门用于测量水流流量的仪器,其工作原理主要基于水流…...

算法笔记:滑动窗口

前言 滑动窗口作为一个考点较高的算法,广泛应用于子串问题中,本文将进行详细讲解。 一、滑动窗口是什么 滑动窗口是双指针算法的一种,基本思路为维护一个窗口,然后从前往后遍历元素进行运算。 二、滑动窗口算法和其他双指针算…...

Ubuntu下的Graphviz的基础使用方法

一、Graphviz介绍 graphviz是贝尔实验室开发的一个开源的工具包,它使用一个特定的DSL(领域特定语言):dot作为脚本语言,然后使用布局引擎来解析此脚本,并完成自动布局 1、什么是Graphviz 官网地址,https://www.graphviz.org/ Gr…...

微积分复习笔记 Calculus Volume 1 - 6.8 Exponential Growth and Decay

6.8 Exponential Growth and Decay - Calculus Volume 1 | OpenStax...

React的ts文件中通过createElement拼接一段内容出来

比如接口返回一个值 const values [23.00, 40.00/kg];想做到如下效果, 如果单纯的用render渲染会很简单, 但是在ts文件中处理,所以采用了createElement拼接 代码如下: format: (values: string[]) > {if (!values || !val…...

Pinia之1:介绍Pinia、项目中引入Pinia

欢迎来到“雪碧聊技术”CSDN博客! 在这里,您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者,还是具有一定经验的开发者,相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导,我将…...

Python双向链表、循环链表、栈

一、双向链表 1.作用 双向链表也叫双面链表。 对于单向链表而言。只能通过头节点或者第一个节点出发,单向的访问后继节点,每个节点只能记录其后继节点的信息(位置),不能向前遍历。 所以引入双向链表,双…...

5G基础学习笔记

功能软件化 刚性网络:固定连接、固定功能、固化信令交互 柔性网络:网元拆解成服务模块,基于API接口调用 服务化架构(SBA) Service based Architecture (SBA): 借鉴了业界成熟的SOA、微服务架…...

Python plotly库介绍

一、引言 在数据可视化领域,Python提供了众多强大的库。其中,plotly是一个功能强大、交互式的可视化库,可以创建各种类型的图表,包括线图、散点图、柱状图、饼图、3D图表等。它不仅提供了美观的可视化效果,还支持交互式…...

go编程中yaml的inline应用

下列代码,设计 Config 和 MyConfig 是为可扩展 Config,同时 Config 作为公共部分可保持变化。采用了匿名的内嵌结构体,但又不希望 yaml 结果多出一层。如果 MyConfig 中的 Config 没有使用“yaml:",inline"”修饰,则读取…...

手机实时提取SIM卡打电话的信令声音-智能拨号器的双SIM卡切换方案

手机实时提取SIM卡打电话的信令声音 --智能拨号器app的双SIM卡切换方案 一、前言 在蓝牙电话的方案中,由于采用市场上的存量手机来做为通讯呼叫的载体,而现在市面上大部分的手机都是“双卡双待单通”手机,简称双卡双待手机。即在手机开机后…...

探索Python WebSocket新境界:picows库揭秘

文章目录 探索Python WebSocket新境界:picows库揭秘第一部分:背景介绍第二部分:picows库概述第三部分:安装picows库第四部分:简单库函数使用方法第五部分:场景应用第六部分:常见Bug及解决方案第…...

2024年11月24日Github流行趋势

项目名称:FreeCAD 项目维护者:wwmayer, yorikvanhavre, berndhahnebach, chennes, WandererFan等项目介绍:FreeCAD是一个免费且开源的多平台3D参数化建模工具。项目star数:20,875项目fork数:4,117 项目名称&#xff1…...

NewStar CTF week5 Crypto wp

easy_ecc ecc的模板题,稍加推理就会发现c1mc2*k因此做一个减法就行,需要注意的点是c1,c2必须放到ecc里面过一道才能出正确结果 k 86388708736702446338970388622357740462258632504448854088010402300997950626097 p 644088904089909773124499208053…...

vue3+antd注册全局v-loading指令

文章目录 1. 创建指令文件2. 全局注册3. 使用 1. 创建指令文件 src/directives 在directives中创建如下文件 src│─directives│ index.ts└─loadingindex.tsindex.vuedirectives/ index.ts export * from ./loadingdirectives/loading/index.ts import { createApp } f…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

【机器视觉】单目测距——运动结构恢复

ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛&#xf…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...

【决胜公务员考试】求职OMG——见面课测验1

2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)

前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块&#xff0c…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...

Sklearn 机器学习 缺失值处理 获取填充失值的统计值

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...

链式法则中 复合函数的推导路径 多变量“信息传递路径”

非常好,我们将之前关于偏导数链式法则中不能“约掉”偏导符号的问题,统一使用 二重复合函数: z f ( u ( x , y ) , v ( x , y ) ) \boxed{z f(u(x,y),\ v(x,y))} zf(u(x,y), v(x,y))​ 来全面说明。我们会展示其全微分形式(偏导…...

js 设置3秒后执行

如何在JavaScript中延迟3秒执行操作 在JavaScript中,要设置一个操作在指定延迟后(例如3秒)执行,可以使用 setTimeout 函数。setTimeout 是JavaScript的核心计时器方法,它接受两个参数: 要执行的函数&…...