UPLOAD LABS | PASS 01 - 绕过前端 JS 限制

server/2024/12/26 17:56:40/

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

0x01:过关流程

本关的目标是上传一个 WebShell 到目标服务器上,并成功访问:

我们直接尝试上传后缀为 .php 的一句话木马:

如上,靶场弹窗提示说我们上传的文件类型不对,不允许上传。我们(右击)查看网页源码,发现过滤逻辑其实是写在前端的:

针对这种前端 JS 过滤,我们最简单的方法就是,禁用前端 JS :

禁用完后,再次点击上传,即可上传成功:

此时使用检查,查看我们上传 ”图片“ 的位置,即可知道我们上传木马的位置:

如上,我们上传的木马路径为 ../upload/muma.php,即:

 http://localhost/upload-labs/upload/muma.php

我们使用 ”中国蚁剑“ 连接一下,看看能否 Get Shell(如下,Get Shell 成功,本关结束):

0x02:源码分析

下面是本关的 WAF 源码,主要功能是在客户端使用 JS 对不合法图片进行检测:

 function checkFile() {var file = document.getElementsByName('upload_file')[0].value;if (file == null || file == "") {alert("请选择要上传的文件!");return false;}//定义允许上传的文件类型var allow_ext = ".jpg|.png|.gif";//提取上传文件的类型var ext_name = file.substring(file.lastIndexOf("."));//判断上传文件类型是否允许上传if (allow_ext.indexOf(ext_name + "|") == -1) {var errMsg = "该文件不允许上传,请上传" + allow_ext + "类型的文件,当前文件类型为:" + ext_name;alert(errMsg);return false;}}

对于这种客户端过滤没啥好说的,绕过方式很多。除了笔者上面介绍的那一种外,你还可以提交一张正常图片,当其前端向后端发送 POST 请求时,拦截该请求,然后修改内容。这也是可以的。


http://www.ppmy.cn/server/146253.html

相关文章

鲜花销售管理系统|Java|SSM|VUE| 前后端分离

【重要1⃣️】前后端源码万字文档部署文档 【重要2⃣️】正版源码有问题包售后 【重要3⃣️】可复制品不支持退换货 【包含内容】 【一】项目提供非常完整的源码注释 【二】相关技术栈文档 【三】源码讲解视频 【其它服务】 【一】可…

Day48 | 动态规划 :线性DP 编辑距离

Day48 | 动态规划 :线性DP 编辑距离 动态规划应该如何学习?-CSDN博客 本次题解参考自灵神的做法,大家也多多支持灵神的题解 最长公共子序列 编辑距离_哔哩哔哩_bilibili 动态规划学习: 1.思考回溯法(深度优先遍历…

【青牛科技】电动工具电流反馈型相位控制电路D2010

概述: D2010是一块相位控制集成电路,采用双级工艺。具有负载电流保护、软启动等功能。广泛应用于机床马达的控制。 主要特点: 全波电流感应 主电源可调软启动 防止过流及过高输出程控电流大小, 电压与电流同步 自动触发开关内部电压监控申流…

电机瞬态分析基础(3):空间矢量

1. 空间矢量 空间矢量的概念在交流电机分析与控制中具有非常重要的作用。将各相的电压、电流、磁链等电磁量用空间矢量表达,可以使三相感应电机的动态方程表达更简洁,为电机的分析与控制带来方便,并有助于对交流电机的矢量控制、直接转矩控制…

【Python爬虫五十个小案例】爬取中国天气网城市天气

博客主页:小馒头学python 本文专栏: Python爬虫五十个小案例 专栏简介:分享五十个Python爬虫小案例 引言 天气数据在很多领域都非常重要,比如天气预报、旅游、健康等。通过爬取天气网站的公开数据,可以方便地获取各地的天气情…

GPT分区、格式化与自动挂载

GPT分区、格式化与自动挂载 操作场景前提条件操作步骤 操作场景 云硬盘容量大于2TiB时,只能使用parted工具为磁盘新建GPT分区。 前提条件 云硬盘已挂载到云服务器上。 操作步骤 使用root用户登录进入云服务器;安装parted工具; # 检查pa…

GateWay使用手册

好的&#xff0c;下面是优化后的版本。为了提高可读性和规范性&#xff0c;我对内容进行了结构化、简化了部分代码&#xff0c;同时增加了注释说明&#xff0c;便于理解。 1. 引入依赖 在 pom.xml 中添加以下依赖&#xff1a; <dependencies><!-- Spring Cloud Gate…

路由引入中次优路由和路由环路问题

A公司用的是IS-IS&#xff0c;B公司用的是OSPF&#xff0c;现在这两个公司要合并&#xff0c;网络要相通 项目目标 前期准备 配置IP地址&#xff1a;完成IP地址规划&#xff0c;A公司和B公司内部网络通过路由器R2和R4环回接口模拟。配置路由器接口的IP地址并测试所有直连链路的…