文件上传漏洞-客户端检测

本文章仅供学习参考!!!

靶场环境:upload-labs-master/pass-1

客户端检测

客户端检测一般都是在网页上写一段 javascript 脚本,校验上传文件 的后缀名,有白名单形式也有黑名单形式。
判断方式:在浏览加载文件,点击上传按钮时便弹出对话框,内容如:只允许上传.jpg/.jpeg/.png 后缀名的文件,而此时并没有发送数据包。

绕过技巧

在本地浏览器客户端禁用 JS :可使用火狐浏览器的 Noscript 插件、浏览器禁用JS 等方式实现。

复现过程

法1

上传.php,发现弹框提示,这是因为JavaScript代码中限制了上传文件的类型,那么我们可以禁用掉网页的JavaScript功能,饶过检测上传文件
按f12
勾选禁用JavaScript
再次上传就能上传成功一句话木马了
我们再图像位置右键选择复制录像链接然后使用中国蚁剑。。。等工具既可以进入服务器内部
或者复制链接后在浏览器中打开
提示这个也代表上传成功,我们可以利用此漏洞做其他的操作
可以查看到该网站php的版本,证明成功了
这一次额的前提是客户端检测,他会在前端写一段JavaScript代码。那么我们还可以用另一种方法,直接更改前端页面的源代码。

法2

在关卡页面右键点击查看源代码

会发现这么一段JavaScript代码

可以看到,这个函数的名字(这个函数肯定会在上面调用),这里定义了可上传的文件类型

返回关卡页面

按f12选中这个位置,然后查看底部源代码,可以发现刚刚的函数名

这个的作用就是控制上传文件的类型,我们可以直接把这个属性删掉

然后再上传我们的木马,就能上传成功,这能用一次,上传后还想上传那么就还要在更改一次。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux将未分配空间分配到指定挂载点

lsblk命令查看硬盘,空间有200G,子分区加起来才100个G,有100个G未使用 lsblk给硬盘分配盘符 fidisk /dev/vda n 回车 回车 w将所有未分配的空间分区,这里有100个GB 查看分配的分区 /dev/vda4 fidisk -lpvcreate /dev/vda4查看…

基于多时间尺度滚动优化的多能源微网双层调度模型—论文复现

目录 一、主要内容: 二、程序运行效果: 二、研究内容摘要: 三、多能源微电网: 四、两阶段多时间尺度调度框架: 五、代码数据下载: 一、主要内容: 本代码主要做的是一个多能源微网的优化调…

张驰咨询:用六西格玛管理优化医疗机构成本

医疗行业作为社会的重要组成部分,应对人类健康问题发挥着至关重要的作用。然而,在追求更高水平的医疗服务和患者护理的过程中,医疗机构普遍面临一系列复杂的挑战和痛点。这些痛点不仅影响到医疗服务的效率和效果,还可能对患者的安…

C语言数据结构基础————二叉树学习笔记(四)简单的OJ题目练习

1.单值二叉树 965. 单值二叉树 - 力扣(LeetCode) 建立一个新的函数,用函数传参的方法来记录val的值 如上一篇最后的对称二叉树的习题,建立新的函数来传参 多采用使用反对值的方法,因为如果是相等return true的话&am…

Unity类银河恶魔城学习记录11-6 p108 Equip items on character源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili UI_equipementSlots.cs using System.Collections; using System.Collect…

大型集团公司企业文化知识竞活动赛策划方案

一场高端企业文化知识竞赛活动完整策划书,按诗词大会舞美标准进行设计,竞赛规则新颖,值得收藏。 天纵高端知识竞赛服务商,20多年现场经验和软硬件开发。 专业承办全国高端知识竞赛活动。线上线下各类竞赛活动均可执行,…

ValueError: Cannot load file containing pickled data when allow_pickle=False

问题描述 遇到报错:ValueError: Cannot load file containing pickled data when allow_pickleFalse 解决方案 经过查阅有人说是与numpy的版本有关,但是还是不要轻易改变环境中的版本,不一定哪个地方就会报错。这里放个解决方案:…

JavaScript的学习笔记

<script src"index.js" defer></script>&#xff0c;defer的作用是延迟加载index.js文件 定义变量 变量的类型分为两大类&#xff1a;基本类型和复合类型 JavaScript是一种弱类型语言&#xff0c;所以没有强类型语言所具有的int,float,char等等&#x…

Metasploit Pro 4.22.2-2024031301 (Linux, Windows) 下载 - 专业渗透测试框架

Metasploit Pro 4.22.2-2024031301 (Linux, Windows) 下载 - 专业渗透测试框架 Rapid7 Penetration testing, Release Mar 13, 2024 请访问原文链接&#xff1a;https://sysin.org/blog/metasploit-pro-4/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者…

centos配置natapp 自动配置

步骤 下载客户端 赋值权限 启动测试是否可用配置natapp.service 设置自动启动 natapp.service 配置的文件夹需要跟 natapp的路径一致 下载配置文件 centos 这里 我用的 natapp_autostart-master\natapp_autostart-master\systemd 文件夹下的 natapp.service 上传natapp到服…

对 Transformer 中位置编码 Position Encoding 的理解

目录 什么是位置编码 Position Encoding 一、将绝对位置编码加在 Transformer 的输入端 (Sinusoidal 位置编码或可学习位置编码) 二、将绝对位置编码乘在 q k v (RoPE 位置编码) 三、将相对位置编码加在注意力权重 (ALiBi 位置编码) 什么是位置编码 Position Encoding Tr…

[蓝桥杯 2022 省 A] 求和

[蓝桥杯 2022 省 A] 求和 题目描述 给定 n n n 个整数 a 1 , a 2 , ⋯ , a n a_{1}, a_{2}, \cdots, a_{n} a1​,a2​,⋯,an​, 求它们两两相乘再相加的和&#xff0c;即 S a 1 ⋅ a 2 a 1 ⋅ a 3 ⋯ a 1 ⋅ a n a 2 ⋅ a 3 ⋯ a n − 2 ⋅ a n − 1 a n − 2 ⋅ a…