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

文件下载和文件上传漏洞

任意文件下载漏洞

漏洞描述

前提:下载链接为动态链接,可传参

payload: http://10.0.0.149/pikachu/vul/unsafedownload/execdownload.php?
filename=../../../index.php

payload: http://10.0.0.149/pikachu/vul/unsafedownload/execdownload.php?
filename=../../../inc/config.inc.php

payload: http://10.0.0.200/pikachu/vul/unsafedownload/execdownload.php?
filename=../../../../../../../../../../etc/passwd

漏洞的危害

1.下载源代码文件
2.下载系统文件

防御方法

1.前端隐藏文件的扩展名,后端添加文件扩展名.png
2.过滤../,将../替换为_ _/

任意文件上传漏洞

漏洞描述:

上传文件的地方,没有做过滤,可以直接上传webshell

防御方法:

1.使用白名单过滤,不使用黑名单过滤
2.获取的尺寸,来检测图片的真实性
3.使用二次渲染
4.随机生成文件名
5.使用bash64编码进行图片的存储和展示

6.使用图片和主站,动静分离
主站只放后端代码,静态资源全部存储到阿里云对象存储oss

靶场案例1:

客户端检测,浏览器检测
选中文件的时候,没有向后端发起请求,就被检测出来,文件不符号要求

查看网页源代码,发现证据

<script>
   function checkFileExt(filename)
  {
       var flag = false; //状态
       var arr = ["jpg","png","gif"];
       //取出上传文件的扩展名
       var index = filename.lastIndexOf(".");
       var ext = filename.substr(index+1);
       //比较
&nb
http://www.xdnf.cn/news/1346851.html

相关文章:

  • LeetCode第1695题 - 删除子数组的最大得分
  • CSS自定义属性(CSS变量)
  • Jenkins发布spring项目踩坑——nohup java -jar发布后显示成功,但实际jps查询并未运行
  • kubernetes中pod的管理及优化
  • Python打卡Day49 CBAM注意力
  • Apache Ozone 2.0.0集群部署
  • 微信原生下载互联网oss资源保存到本地
  • CCleaner v1.2.3.4 中文解锁注册版,系统优化,隐私保护,极速清理
  • Unreal Engine Class System
  • 图数据库(neo4j)基础: 分类/标签 节点 关系 属性
  • 蓝牙部分解析和代码建构
  • set_disable_timing应用举例
  • OpenCV 图像边缘检测
  • 从“配置化思维”到“前端效率革命”:xiangjsoncraft 如何用 JSON 简化页面开发?
  • k8s 简介及部署方法以及各方面应用
  • 子类(派生类)使用父类(基类)的成员
  • 快速了解神经网络
  • AI赋能体育训练突破:AI动作捕捉矫正精准、战术分析系统提效率,运动员破瓶颈新路径
  • 数据结构之深入探索归并排序
  • go 常见面试题
  • NLP学习之Transformer(2)
  • 网络编程6(JVM)
  • 保护 PDF 格式:禁止转换为其他格式文件
  • html基本元素
  • C#_接口设计:角色与契约的分离
  • HTML5详篇
  • 自定义单线通信协议解析
  • Yapi中通过MongoDB修改管理员密码与新增管理员
  • 【Java后端】 Spring Boot 集成 Redis 全攻略
  • 软件设计师——计算机网络学习笔记