IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> CTFHub-文件上传 -> 正文阅读

[PHP知识库]CTFHub-文件上传

CTFHub-文件上传

无验证
前端验证
.htaccess
MIME绕过
文件头检查
00截断
双写后缀

无验证

  • 打开靶场获取信息,为无限制的文件上传,随便写入一个.php的一句话木马上传
    在这里插入图片描述
  • 上传成功并获取上传文件的相对路径
    在这里插入图片描述
  • 用post传参检测木马能否连接,测试连接成功。
    在这里插入图片描述
  • 使用蚁剑连接
    在这里插入图片描述
  • 在目录中获取flag
    在这里插入图片描述

前端验证

  • 打开靶场检查源码发现只允许我们上传.png .jpg .gif文件
    在这里插入图片描述

  • 考虑到为前端验证,且.php文件无法上传,我们可以上传一个带有一句话木马的.png然后在bp中修改后缀为.php
    在这里插入图片描述

  • 上传成功并获得相对路径
    在这里插入图片描述

  • 用post传参检查木马能否连接,连接成功
    在这里插入图片描述

  • 连接蚁剑
    在这里插入图片描述

  • 在目录中查找flag
    在这里插入图片描述

.hatsccess

  • 根据提示了解一下.htaccess
    .htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过.htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。那么根据.htaccess文件的特性,我们可以先上传一个.htaccess文件将原文件替换掉,该内容如下,作用为将所有文件解析为.php文件。
    在这里插入图片描述

  • 打开靶场,检查源代码,我们观察到.php文件时无法直接直接上传的
    在这里插入图片描述

  • 先上传.htaccess文件替换原文件后,再上传.png文件,在.htaccess文件的作用下,我们上传的.png文件会被解析为.php文件,上传成功后获得相对路径。
    在这里插入图片描述

  • 用post传参检查木马能否连接,连接成功
    在这里插入图片描述

  • 连接蚁剑
    在这里插入图片描述

  • 获取flag
    在这里插入图片描述

MIME绕过

  • 了解一下MIME是什么
    MIME类型校验就是我们在上传文件到服务端的时候,服务端会对客户端也就是我们上传的文件的Content-Type类型进行检测,如果是白名单所允许的,则可以正常上传,否则上传失败。
    也就时说,我们需要修改我们的Content-Type为白名单的内容

  • 直接上传.php文件时显示文件类型不正确
    在这里插入图片描述

  • 这时我们使用bp来修改上传文件Content-Type.
    在这里插入图片描述

  • 上传成功,获的相对路径,然后进行post传参检查木马能否连接,连接成功
    在这里插入图片描述

  • 连接蚁剑
    在这里插入图片描述

  • 获取flag
    在这里插入图片描述

文件头检查

  • 文件头检查
    顾名思义,其实就是是指当浏览器上传到服务器的时候,白名单进行的文件头检测,符合,则允许上传,否则不允许上传。先上传一个.php文件,给出提示,表名文件类型不正确,只允许上传.jpeg .png .gif类型文件
    在这里插入图片描述

  • 因为允许图片类型的文件上传,选择做一个图片木马
    在这里插入图片描述

  • 上传成功,并获得相对路径
    在这里插入图片描述

  • post传参检验木马能否连接,连接成功
    在这里插入图片描述

  • 连接蚁剑
    在这里插入图片描述

  • 获取flag
    在这里插入图片描述

00截断

  • 我们需要去了解一下php5.2 00截断的原理
    PHP的00截断是5.2.x版本的一个漏洞,当用户输入的url参数包含%00经过浏览器自动转码后截断后面字符。
    简单来说,当我们输入 cmd.php时候,输出的就是cmd.php
    但是当我们输入cmd.png%00.php,输出的是cmd.png
    • 打开靶场检查源码可知,可通过的文件后缀有.png .jpg .gif 在这里插入图片描述
    • 这时候通过bp使用 00截断 的方式上传.php文件
      在这里插入图片描述
  • 上传成功,此时文件上传路径为road=/var/www/html/upload/cmd.php%00,相对路径也就是/upload/cmd.php,然后通过post传参检查木马能否连接,连接成功
    在这里插入图片描述
  • 连接蚁剑
    在这里插入图片描述
  • 获取flag
    在这里插入图片描述

双写后缀

  • 了解一下双写后缀
    有些站点判断方式会把文件后缀名替换为空字符,通过双写后缀的方法,服务器把后缀名进行替换,替换成空字符之后为被替换的剩余字符组成了符合白名单的后缀名
  • 打开靶场检查源码,获得到可以通过的后缀名
    在这里插入图片描述
  • 直接上传.php文件后获得的相对路径没有后缀名,考虑到双写绕过

在这里插入图片描述在这里插入图片描述

  • 上传成功后获取正确的相对路径
    在这里插入图片描述

  • post传参检查木马能否连接,连接成功
    在这里插入图片描述

  • 连接蚁剑
    在这里插入图片描述

  • 获取flag
    在这里插入图片描述

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-07-14 00:17:35  更:2021-07-14 00:17:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/30 18:11:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码