文件包含+文件上传漏洞(图片马绕过)

目录

  • 一.文件包含
  • 二.文件上传
  • 三.图片马
  • 四.题目

一.文件包含

将已有的代码以文件形式包含到某个指定的代码中,从而使用其中的代码或者数据,一般是为了方便直接调用所需文件,文件包含的存在使得开发变得更加灵活和方便(若对用户输入的数据不严格的过滤,会导致信息泄露,getshell等风险)

常见文件包含函数
include():当文件发生错误时,提出警告,脚本继续执行
include_once():如果文件被包含过,那将不再被包含
require():当文件发生错误时,提出警告,脚本停止执行
require_once():确保文件只被包含一次,但如果文件不存在或发生错误,脚本会停止执行

二.文件上传

文件上传是指:用户将本地的文件上传到目标服务器的过程(若对用户上传的文件,不经过严格的审核,会造成getshell,服务器被控等风险)

三.图片马

copy 正常图片.jpg /b + muma.php hack.jpg就是将正常图片和木马文件合并成新的图片(带有木马的图片)
/b选项告诉copy命令以二进制模式处理这些文件

木马文件里面一句话木马前,要带空格
在这里插入图片描述
合并之后,记事本打开,出现完整的一句话木马,说明成功
在这里插入图片描述

四.题目

点击题目链接,空白页面,查看源代码,发现include.php
在这里插入图片描述
include.php的源代码,有一个upload.php,且告诉参数是file
在这里插入图片描述
访问upload,是文件上传页面,上传木马文件发现不行
在这里插入图片描述
通过文件包含,查看upload.php的源代码,(php伪协议)

?file=php://filter/read=convert.base64-encode/resource=upload.php

在这里插入图片描述base64解码
在这里插入图片描述代码分析,只是一个白名单过滤,对文件的后缀和文件类型进行判断

<form action="" enctype="multipart/form-data" method="post" 
name="upload">file:<input type="file" name="file" /><br> 
<input type="submit" value="upload" /></form><?php
if(!empty($_FILES["file"]))
{echo $_FILES["file"];$allowedExts = array("gif", "jpeg", "jpg", "png");@$temp = explode(".", $_FILES["file"]["name"]);$extension = end($temp);if (((@$_FILES["file"]["type"] == "image/gif") || (@$_FILES["file"]["type"] == "image/jpeg")|| (@$_FILES["file"]["type"] == "image/jpg") || (@$_FILES["file"]["type"] == "image/pjpeg")|| (@$_FILES["file"]["type"] == "image/x-png") || (@$_FILES["file"]["type"] == "image/png"))&& (@$_FILES["file"]["size"] < 102400) && in_array($extension, $allowedExts)){move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]);echo "file upload successful!Save in:  " . "upload/" . $_FILES["file"]["name"];}else{echo "upload failed!";}
}
?>

上传图片马,上传成功
在这里插入图片描述
文件包含图片马

?file=upload/j.jpg
看不到一句话木马,说明被解析了,通过蚁剑连接

在这里插入图片描述蚁剑连接
在这里插入图片描述根目录下发现flag
在这里插入图片描述

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

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

相关文章

网络安全-pikachu之文件上传漏洞1

文件上传漏洞是危害极大的&#xff0c;一旦成功&#xff0c;可以获取服务器的最高权限。 pikachu介绍&#xff1a; 文件上传功能在web应用系统很常见&#xff0c;比如很多网站注册的时候需要上传头像、上传附件等等。当用户点击上传按钮后&#xff0c;后台会对上传的文件进行判…

☀️将大华摄像头画面接入Unity 【1】配置硬件和初始化摄像头

一、硬件准备 目前的设想是后期采用网口供电的形式把画面传出来&#xff0c;所以这边我除了大华摄像头还准备了POE供电交换机&#xff0c;为了方便索性都用大华的了&#xff0c;然后全都连接电脑主机即可。 二、软件准备 这边初始化摄像头需要用到大华的Configtool软件&#…

【知识点】CNN中concat与add的区别

cat操作经常用于将特征联合&#xff0c;多个卷积特征提取框架提取的特征融合或者是将输出层的信息进行融合&#xff1b;而add层更像是信息之间的叠加。 add是在一个特征上增加其语义信息&#xff0c;对最终的图像的分类是有益&#xff1b;cat导致的结果改进可能是由于cat操作通…

工业自动化部署选择主板的关键因素

**在构建任何计算机时&#xff0c;选择合适的主板至关重要。**对于游戏台式机&#xff0c;您需要选择能够支持您玩的游戏类型而不会出现任何问题的最新和最佳规格。当涉及工业应用时&#xff0c;影响您决策的变量变得更加重要。作为任何基于计算的应用中最关键的组件之一&#…

搜维尔科技:分析OptiTrack光学动作捕捉应用领域!

虚拟制作 当今虚拟制作阶段低延迟、超精确摄像机跟踪的事实上的标准。 用于运动科学的 OptiTrack OptiTrack 系统提供世界领先的测量精度和简单易用的工作流程&#xff0c;为研究人员和生物力学师的研究提供理想的 3D 跟踪数据。对所有主要数字测力台、EMG 和模拟设备的本机即…

trojan 突然无法上网

[ERROR] 2024/02/19 18:14:45 github.com/p4gefau1t/trojan-go/tunnel/tls.(*Server).acceptLoop.func1:server.go:140 tls handshake failed | remote error: tls: bad certificate 报证书问题&#xff0c;更新证书发现无法解决 最后突然客户端有一个配置 验证证书&#xf…

淘宝、1688以图搜图api使用示例

识图&#xff1f;当我们不知道图片内的信息时&#xff0c;可以通过以图识图的方式&#xff0c;找到对应的图片&#xff0c;以及对该图片的介绍。 识图工具是通过AI技术实现的&#xff0c;但其实识图并不需安装任何软件&#xff0c;在搜索引擎中就可以完成。“以图搜图”也可以…

组态软件行业分析:预计2025年市场空间可达数千亿元

组态软件可以对从控制系统得到的以及自身产生的数据进行记录存储。在系统发生事故和故障的时候&#xff0c;利用记录的运行工况数据和历史数据&#xff0c;可以对系统故障原因等进行分析定位&#xff0c;责任追查等。通过对数据的质量统计分析&#xff0c;还可以提高自动化系统…

[office] Excel中DCOUNT函数在复杂的数据中统计应用图解教程 #职场发展#其他#媒体

Excel中DCOUNT函数在复杂的数据中统计应用图解教程 Excel中DCOUNT函数返回数据库或数据区域的列中满足指定条件并且包含数字的单元格的个数。 在Excel中使用DCOUNT函数可以轻松地从数据库或数据区域中查找符合指定条件并且是数字的单元格的数量。 Excel中DCOUNT函数在复杂的…

佳能2580的下载手册

凡是和电子产品有关的产品其内部都开始不断地进行内卷&#xff0c;在不断地内卷背后&#xff0c;意味着科技更新和换代&#xff0c;自己也入手了一台佳能2580的打印机&#xff0c;一台相对比较老式的打印机&#xff0c;以此不断地自己想要进行打印的需要。 下载的基础步骤&…

Eureka注册中心:实现微服务架构下的服务发现与治理的艺术(一)

本系列文章简介&#xff1a; 在本系列文章中&#xff0c;我们将深入探讨Eureka注册中心在微服务架构中的应用和实践。我们将介绍Eureka的基本原理、关键特性以及配置和优化方法。同时&#xff0c;我们还将分享如何通过监控和日志分析来保障Eureka注册中心的稳定运行。希望通过本…

【ansible】认识ansible,了解常用的模块

目录 一、ansible是什么&#xff1f; 二、ansible的特点&#xff1f; 三、ansible与其他运维工具的对比 四、ansible的环境部署 第一步&#xff1a;配置主机清单 第二步&#xff1a;完成密钥对免密登录 五、ansible基于命令行完成常用的模块学习 模块1&#xff1a;comma…

【附代码】Python Excel合并单元格(OpenPyXL) Pandas.DataFrame groupby样式保存xlsx

文章目录 相关文献Excel合并单元格并居中Pandas.DataFrame groupby样式保存Excel 作者&#xff1a;小猪快跑 基础数学&计算数学&#xff0c;从事优化领域5年&#xff0c;主要研究方向&#xff1a;MIP求解器、整数规划、随机规划、智能优化算法 如有错误&#xff0c;欢迎指…

解释 C++ 中的静态成员变量和静态成员函数。

解释 C 中的静态成员变量和静态成员函数。 在C中&#xff0c;静态成员变量和静态成员函数都与类本身相关联&#xff0c;而不是与类的各个实例相关联。这意味着无论创建了多少个类的对象&#xff0c;静态成员变量和静态成员函数的存储空间只分配一次&#xff0c;并且它们可以被…

Bert基础(二)--多头注意力

多头注意力 顾名思义&#xff0c;多头注意力是指我们可以使用多个注意力头&#xff0c;而不是只用一个。也就是说&#xff0c;我们可以应用在上篇中学习的计算注意力矩阵Z的方法&#xff0c;来求得多个注意力矩阵。让我们通过一个例子来理解多头注意力层的作用。以All is well…

在本地计算机上运行Python程序

在本地计算机上运行Python程序的详细步骤&#xff1a; 第一步&#xff1a;安装Python解释器 Python解释器是运行Python程序所必需的。你可以从Python的官方网站&#xff08;https://www.python.org/downloads/&#xff09;下载最新版本的Python解释器。下载完成后&#xff0c…

linux监控系统资源命令

当前CPU内核版本 [rootVM-12-12-centos ~]# cat /proc/version Linux version 3.10.0-1160.11.1.el7.x86_64 (mockbuildkbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Fri Dec 18 16:34:56 UTC 2020 当前系统版本 [rootVM-12-1…

Python六级考试笔记

Python六级考试笔记【源源老师】 六级标准 一、 掌握文件操作及数据格式化。 二、 掌握数据可视化操作。 三、 理解类与对象的概念&#xff0c;初步掌握类与对象的使用。 四、 掌握SQLite数据库基础编程。 五、 掌握简单的使用tkinter的GUI设计。 ​ 1. 文件操作 &#xff0…

3、安装插件

以下插件请按需安装 Mask Passwords 使用此插件可以将在console中出现的password加密&#xff0c;以防止密码泄露。 Job Import Plugin 支持从其他的Jenkins上远程导入job Extended E-mail Notification 在job构建后发送邮件 Python Adds the ability to execute python scrip…

2024面试offer收割宝典百度篇

1.JAVA 中的几种基本数据类型是什么,各自占用多少字节。 byte: 占用 1 个字节(8位),取值范围是-128到127。 short:占用 2 个字节(16位),取值范围是-32,768到32,767。int : 占用 4 个字节(32位),取值范围是 2^{31} (-2,147,483,648) 到 2^{31-1} (2,147,483,647)。 l…