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

文件上传之文件内容检测

一.基本概念

介绍:文件内容检测就是检测上传的文件里的内容。

  • 文件幻数检测

    通常情况下,通过判断前10个字节,基本就能判断出一个文件的真实类型。

  • 文件加载检测

    一般是调用API或函数对文件进行加载测试。常见的是图像渲染测试,再严格点的甚至是进行二次渲染。

二.检测方式

1.文件幻数检测

基本介绍

文件格式幻数(外语:magic number),它可以用来标记文件或者协议的格式,很多文件都有幻数标志来表明该文件的格式。

  • JPG图片文件幻数


  • GIF图片文件幻数


  • PNG图片文件幻数


绕过技巧

靶场:http://127.0.0.1/upload-labs-master/Pass-15/index.php

  • 绕过流程:

    1. 制作图片马

      • 方法一:使用16进制编辑器打开一个图片,在图片后面插入WebShell​

      • 方法二:cmd下执行(必须在当前目录):copy a.jpg/b + post.php/a shell.jpg


    2. 使用文件包含漏洞利用图片马中的恶意代码


2.二次渲染

基本介绍

二次渲染就是根据用户上传的图片,新生成一个图片,将原始图片删除,将新图片添加到特殊的数据库中。比如一些网站根据用户上传的头像生成大中小不同尺寸的图像。

绕过技巧

靶场:http://127.0.0.1/upload-labs-master/Pass-17/index.php

  • 绕过流程:

    1. 制作图片马

      1. 先上传一张正常的图片

      2. 将经过二次渲染的图片保存下来

      3. 拖入16进制编辑器,与原图片进行对比,在相同的地方(00的地方)插入webshell。


      4. 使用文件包含漏洞利用图片马中的恶意代码


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

相关文章:

  • 【STM32-学习笔记-4-】PWM、输入捕获(PWMI)
  • Qt QML专栏目录结构
  • 数字艺术类专业人才供需数据获取和分析研究
  • 【JavaEE】Spring(1)
  • SpringBoot实现定时任务,使用自带的定时任务以及调度框架quartz的配置使用
  • Linux(DISK:raid5、LVM逻辑卷)
  • 项目23:简易网络爬虫 --- 《跟着小王学Python·新手》
  • 突破时间与空间限制的富媒体百宝箱——智能工具箱:让云上内容生产更easy
  • 如何评估并持续优化AI呼入机器人的使用效果
  • ae学习笔记
  • Spring基础分析07-Spring JdbcTemplate
  • 【软件工程复习】
  • Android 解决“Could not resolve all artifacts for configuration ‘:classpath‘方法
  • 白话java设计模式
  • 单片机:实现pwm调光(附带源码)
  • 【人工智能数学基础篇】——深入详解基本概率论之概率分布(正态分布、伯努利分布等)、期望、方差等概念
  • 少样本学习之CAML算法
  • 【DevOps工具篇】SCM之Gitlab
  • 【BUG记录】Apifox 参数传入 + 号变成空格的 BUG
  • Cherno C++学习笔记 P41 运算符与重载
  • Elasticsearch:使用 Open Crawler 和 semantic text 进行语义搜索
  • 华为HarmonyOS帮助应用实现在线认证服务 -- 2 FIDO免密身份认证
  • [Unity]在unity 中输出调试安卓真机日志
  • react Ant Design
  • Next.js搜索引擎优化:静态站点生成的SEO优势详解
  • 【C语言】打牌游戏