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

文件上传之图片马文件头绕过(upload-labs通关笔记-第14关)

文件上传之图片马文件头绕过(upload-labs通关笔记-第14关)

系列目录

upload-labs通关笔记-第1关 文件上传之前端绕过(3种渗透方法)

upload-labs通关笔记-第2关 文件上传之MIME绕过-CSDN博客

upload-labs通关笔记-第3关 文件上传之黑名单绕过-CSDN博客

upload-labs通关笔记-第4关 文件上传之.htacess绕过-CSDN博客

upload-labs通关笔记-第5关 文件上传之.ini绕过-CSDN博客

upload-labs通关笔记-第6关 文件上传之大小写绕过-CSDN博客

upload-labs通关笔记-第7关 文件上传之空格绕过-CSDN博客

upload-labs通关笔记-第8关 文件上传之点绕过-CSDN博客

upload-labs通关笔记-第9关 文件上传之::$data绕过-CSDN博客

upload-labs通关笔记-第10关 文件上传之点多重过滤(空格点绕过)

upload-labs通关笔记-第11关 文件上传之双写绕过-CSDN博客

upload-labs通关笔记-第12关 文件上传之白名单GET法绕过

upload-labs通关笔记-第13关 文件上传之白名单POST法绕过

upload-labs通关笔记-第14关 文件上传之图片马文件头绕过

upload-labs通关笔记-第15关 文件上传之图片马getimagesize绕过

upload-labs通关笔记-第16关 文件上传之图片马exif_imagetype绕过

upload-labs通关笔记-第17关文件上传之二次渲染-CSDN博客

upload-labs通关笔记-第18关文件上传之条件竞争-CSDN博客

upload-labs通关笔记-第19关文件上传之条件竞争-CSDN博客

upload-labs通关笔记-第20关 文件上传之杠点绕过-CSDN博客

upload-labs通关笔记-第21关 文件上传之数组绕过-CSDN博客

目录

一、图片特点

二、源码分析

1、代码审计

2、渗透思路

三、制作简易图片马

1、制作脚本test14.php

2、制作图片马

(1)制作jpg图片马

(2)制作gif图片马

(3)制作png图片马

四、文件包含与图片马

五、渗透实战

1、jpg渗透

(1)上传jpg图片马

(2)获取图片URL地址

(3)打开文件包含网站

(4)利用文件包含

2、png渗透

3、gif渗透


本文通过《upload-labs靶场通关笔记系列》来进行upload-labs靶场的渗透实战,本文讲解upload-labs靶场第14关图片马之文件头绕过渗透实战。

一、图片特点

在upload-labs靶场的1-13关卡,判断是否为图片或者脚本,基本都是通过文件的扩展名是否在黑名单或者白名单中。然而这种方法并不可靠,判断是否是真实的图片还可以根据图片的文件结构来进行验证,比如说jpg、png和gif图片的文件特征如下所示。

  • JPEG:以 FF D8 开头,以 FF D9 结束
  • PNG:以89 50 4E 47 0D 0A 1A 0A开头
  • GIF:以 GIF89a 或 GIF87a 开头,十六进制以47 49 46 38开头​​
    • GIF89a(较新版本,支持动画和透明色)

      • 十六进制:47 49 46 38 39 61

      • ASCII:GIF89a

    • GIF87a(旧版本,基础功能)

      • 十六进制:47 49 46 38 37 61

      • ASCII:GIF87a

二、源码分析

打开靶场14关,查看源码进行源码分析,发现本小节依旧是白名单绕过,不过判断是否为图片的方法不是根据文件名的后缀,而是根据文件内容的前两个字节判断是否上传类型 为图片,具体源码如下图所示。

1、代码审计

这段代码实现了一个文件上传功能,并且通过读取文件的二进制头部信息来判断文件的真实类型,只允许已知类型(JPEG、PNG、GIF)的文件上传,同时对上传过程中的不同情况给出相应的提示信息。详细注释后的源码如下所示。

相关文章:

  • 使用 find 遍历软链接目录时,为什么必须加 -L
  • 怎样将win11+ubuntu双系统的ubuntu从机械硬盘迁移至固态硬盘(1)
  • Vue.js教学第十七章:Vue 与后端交互(一),Axios 基础
  • 图神经网络在信息检索重排序中的应用:原理、架构与Python代码解析
  • 关于Web安全:7. WebShell 管理与持久化后门
  • 彰显国产力量|暴雨亮相2025 C3安全峰会
  • ipv6与p2p的关系
  • RuoYi前后端分离框架将前端dist资源集成到Jar包中独立部署
  • 【HALCON】 深入解析 select_gray 算子
  • 紫光闪芯发布企业级E5200PCIe 5.0 企业级固态硬盘
  • 如何在python3.8环境中安装pytorch
  • 数据库-算法学习C++(入门)
  • RG3000网关构建5G LAN智慧工厂智能制造
  • OpenCV---Canny边缘检测
  • Flink 核心机制与源码剖析系列
  • day023-网络基础与OSI七层模型
  • SQLite软件架构与实现源代码浅析
  • Linux -- gdb/cgdb的认识和使用
  • 商旅平台排名:十大商旅服务平台解析
  • Linux中的进程控制(下)
  • 广州珠吉网站建设/海外seo是什么
  • 做网站网站加载内容慢怎么解决/搜索引擎有哪些好用
  • wordpress esc_attr/seo系统培训哪家好
  • 企业网站 留言板/品牌推广活动有哪些
  • 中国兼职设计师网/惠州seo怎么做
  • wordpress搜索 文章/seo软件全套