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

pikachu文件上传漏洞通关详解

声明:文章只是起演示作用,所有涉及的网站和内容,仅供大家学习交流,如有任何违法行为,均和本人无关,切勿触碰法律底线

目录

  • 概念:什么是文件上传漏洞
  • 一、客户端check
  • 二、MIME type
  • 三、getimagesize()

工具在网盘,自取

通过网盘分享的文件:phpstudy
链接: https://pan.baidu.com/s/1l0jpNGQvYMwRSq3BhDY1EQ 提取码: jay1
–来自百度网盘超级会员v1的分享

在这里插入图片描述

概念:什么是文件上传漏洞

文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像、上传附件等等。当用户点击上传按钮后,后台会对上传的文件进行判断 比如是否是指定的类型、后缀名、大小等等,然后将其按照设计的格式进行重命名后存储在指定的目录。 如果说后台对上传的文件没有进行任何的安全判断或者判断条件不够严谨,则攻击着可能会上传一些恶意的文件,比如一句话木马,从而导致后台服务器被webshell。

常见类型:

  • 文件包含绕过; 前端限制绕过 ; 文件扩展名绕过; ashx上传绕过; 特殊文件名绕过; 00截断绕过上传 ;htaccess解析漏洞; 突破MIME限制上传 解析漏洞绕过; 条件竞争绕过; CONTENT-LENGTH绕过;

一、客户端check

先上传个php文件,发现被过滤了,

尝试上传一个jpg文件,上传成功


这里可以利用bp抓包修改头和类型上传php文件,修改如下,然后放行

可以看到上传成功

源码如下:

二、MIME type

上传一个php文件,发现只能上传以下三种图片


上传这三种类型的文件,即可上传成功


有一种方法,上传php文件利用bp抓包,修改文件类型,即:

Content-Type: image/jpeg


上传成功

三、getimagesize()

这个代码可以获取图片宽高等参数,如果不是真实的图片,则没有信息

上传一个图片

实际情况下,我们可以利用windows命令,制作一个图片马,在这个文件夹下打开命令控制面板


输入:copy 1.php+12.jpg 123.jpg

这样就可以把内容输入到一起,成为一个图片马,然后去上传,即可成功


http://www.kler.cn/a/411305.html

相关文章:

  • 【c语言】文件操作详解 - 从打开到关闭
  • STM32WB55RG开发(5)----监测STM32WB连接状态
  • 软件设计模式分类与总结
  • 累积局部效应 (ALE) 图分析记录
  • qt+opengl 三维物体加入摄像机
  • 解!决!vscode!Path Intellisense 失效!不起作用问题!!
  • 利用 Vue 组合式 API 与 requestAnimationFrame 优化大量元素渲染
  • Paddle Inference部署推理(一)
  • QT-installEventFilter
  • GaussDB高智能--库内AI引擎:模型管理数据集管理
  • 蓝桥杯c++算法秒杀【6】之动态规划【下】(数字三角形、砝码称重(背包问题)、括号序列、异或三角:::非常典型的必刷例题!!!)
  • 前端 Vue 3 后端 Node.js 和Express 结合cursor常见提示词结构
  • C语言解析命令行参数
  • xiaolin coding 图解网络笔记——TCP篇
  • 2686694 - 操作方法:MSEG - DBSQL_REDIRECT_INCONSISTENCY
  • 道路机器人识别交通灯,马路,左右转,黄线,人行道,机器人等路面导航标志识别-使用YOLO标记
  • Python毕业设计选题:基于django+vue的期货交易模拟系统的设计与实现
  • PyTorch3
  • SD-WAN加速是怎么实现的?
  • MODBUS规约的秘密之五-----如何用C++编写MODBUS规约
  • 基于物联网技术的智能家居安全监控体系构建
  • 利用HTML5和CSS来实现一个漂亮的表格样式
  • Spring Boot——统一功能处理
  • Rust学习笔记_01——基础
  • 新能源汽车充电插口类型识别-YOLO标记,可识别Type1,ccs2的充电标准
  • 【机器学习】如何使用Python的Scikit-learn库实现机器学习模型,并对数据进行预处理和特征缩放以提高模型性能?