【vulhub】nginx解析漏洞(nginx_parsing_vulnerability)

1. nginx解析漏洞原理

fastcgi 在处理’.php’文件时发现文件并不存在,这时 php.ini 配置文件中cgi.fix_pathinfo=1 发挥作用,这项配置用于修复路径,如果当前路径不存在则采用上层路径
(1)由于 nginx.conf的配置导致 nginx把以’.php”结尾的文件交给 fastcgi 处理,为此可以构造http://ip/uploadfiles/test.png/.php(ur! 结尾不一定是’.php”,任何服务器端不存在的 php 文件均可,比如’a.php”),其中 test.png,是我们上传的包含 PHP 代码的照片文件。
(2)但是fastcgi在处理’.php’文件时发现文件并不存在,这时 php.ini 配置文件中cgi.fix_pathinfo=1 发挥作用,这项配置用于修复路径,如果当前路径不存在则采用上层路径。为此这里交由 fastcgi 处理的文件就变成了’/test.png
(3)最重要的一点是 php-fpm.conf中的security.limit extensions 配置项限制了 fastcgi 解析文件的类型(即指定什么类型的文件当做代码解析),此项设置为空的时候才允许 fastcgi 将’.png"等文件当做代码解析。

2.复现过程

首先进入该目录文件夹中
image.png
使用docker开启靶场环境

查看靶场端口开放情况
image.png
访问靶场:192.168.187.135:80
image.png
上传一个图片
image.png
点击提交,并使用Burp抓取数据包,在图片内容的最后加上php代码
image.png
点击发送
image.png
使用上传的路径进行访问
image.png
在url后面再加上/.php,进行访问,图片被解析为php代码
image.png

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

谈谈Spring的常见基础概念

文章是对Spring一些基础的底层概念进行分析,后续再遇到这些问题的时候,可以采用这些步骤进行详细解释。 一.谈谈SpringIOC的理解,原理与实现? 总: 1.控制反转: (1)原来的对象是由使用者来进行控制,有了S…

Apple Vision Pro开发001-开发配置

一、Vision Pro开发硬件和软件要求 硬件要求软件要求 1、Apple Silicon Mac(M系列芯片的Mac电脑) 2、Apple vision pro-真机调试 XCode15.2及以上,调试开发和打包发布Unity开发者账号&&苹果开发者账号 二 、开启无线调试 1、Apple Vision Pro和Mac连接同…

沸蛇鼠标,多功能智慧AI,重新定义生产力

随着人工智能的快速发展,AI的应用落地已成为当下除大模型外竞争最为激烈的红海之一。手机、汽车、家居等产品都在AI加持下,衍生出了更多使用场景。AI鼠标便是其中一项热门产品。 云决科技作为在互联网数据领域的领军者,始终将用户需求作为首位,为用户提供全方位、高价值的AIGC…

设计模式:4、命令模式(双重委托)

目录 1、命令模式包括四种角色 2、命令模式的UML类图 3、代码示例 1、命令模式包括四种角色 接收者(Receiver):接收者是一个类的实例,该实例负责执行与请求相关的操作。命令(Command)接口:命…

(udp)网络编程套接字Linux(整理)

源IP地址和目的IP地址 唐僧例子1 在IP数据包头部中, 有两个IP地址, 分别叫做源IP地址, 和目的IP地址.思考: 我们光有IP地址就可以完成通信了嘛? 想象一下发qq消息的例子, 有了IP地址能够把消息发送到对方的机器上,但是还需要有一个其他的标识来区分出, 这个数据要给哪个程序进…

【Pikachu】SSRF(Server-Side Request Forgery)服务器端请求伪造实战

尽人事以听天命 1.Server-Side Request Forgery服务器端请求伪造学习 SSRF(服务器端请求伪造)攻击的详细解析与防范 SSRF(Server-Side Request Forgery,服务器端请求伪造) 是一种安全漏洞,它允许攻击者通…

STM32 Nucleo-64 boards板卡介绍

目录 概述 1 板卡介绍 2 板卡硬件架构 3 扩展接口介绍 4 ST-LINK接口 4.1 Pin引脚定义 4.2 框图结构 4.3 硬件原理图 概述 本文主要介绍STM32 Nucleo-64 boards的相关内容,包括硬件架构,支持的STM32类型,重点介绍了STM32 Nucleo-64 …

文件上传-阿里云OSS

使用 安装SDK <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.17.4</version> </dependency> 如果使用的是Java 9及以上的版本&#xff0c;则需要添加JAXB相关依赖。添加…

实验三:构建园区网(静态路由)

目录 一、实验简介 二、实验目的 三、实验需求 四、实验拓扑 五、实验任务及要求 1、任务 1&#xff1a;完成网络部署 2、任务 2&#xff1a;设计全网 IP 地址 3、任务 3&#xff1a;实现全网各主机之间的互访 六、实验步骤 1、在 eNSP 中部署网络 2、配置各主机 IP …

【linux】线程概念与控制

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Linux 目录 一&#xff1a;&#x1f525; 线程基本概念 &#x1f98b; 1-1 什么是线程&#x1f98b; 1-2 分⻚式存储管理1-2-1 虚拟地址和⻚表的由来1-2-2 ⻚表1-2-3 ⻚⽬录结构1-2-4 两级⻚表的地…

Flutter:AnimatedIcon图标动画,自定义Icon通过延时Interval,实现交错式动画

配置vsync&#xff0c;需要实现一下with SingleTickerProviderStateMixinclass _MyHomePageState extends State<MyHomePage> with SingleTickerProviderStateMixin{// late延迟初始化 AnimationControllerlate AnimationController _controller;overridevoid initStat…

深入解析小程序组件:view 和 scroll-view 的基本用法

深入解析小程序组件:view 和 scroll-view 的基本用法 引言 在微信小程序的开发中,组件是构建用户界面的基本单元。两个常用的组件是 view 和 scroll-view。这两个组件不仅功能强大,而且使用灵活,是开发者实现复杂布局和交互的基础。本文将深入探讨这两个组件的基本用法,…

Ubuntu问题 -- 设置ubuntu的IP为静态IP (图形化界面设置) 小白友好

目的 为了将ubuntu服务器IP固定, 方便ssh连接人在服务器前使用图形化界面设置 设置 找到自己的网卡名称, 我的是 eno1, 并进入设置界面 查看当前的IP, 网关, 掩码和DNS (注意对应eno1) nmcli dev show掩码可以通过以下命令查看完整的 (注意对应eno1) , 我这里是255.255.255.…

【数据结构与算法】快速排序:让数据排序变得飞快!

大家好&#xff0c;我是小卡皮巴拉 文章目录 目录 引言 一. 快速排序的基本思想 二. 快速排序实现主框架 三.寻找基准值的几种方法 hoare版本 挖坑法 前后指针版本 兄弟们共勉 &#xff01;&#xff01;&#xff01; 每篇前言 博客主页&#xff1a;小卡皮巴拉 咱的口…

【贪心算法】贪心算法四

贪心算法四 1.最长回文串2.增减字符串匹配3.分发饼干4.最优除法 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你的支持是对我最大的鼓励&#xff0c;我们一起努力吧!&#x1f603;&#x1f603; 1.最长回文串 题目链接&…

网络安全,文明上网(1)享科技,提素养

前言 在这个信息化飞速发展的时代&#xff0c;科技的快速进步极大地丰富了我们的生活&#xff0c;并为我们提供了无限的可能性。然而&#xff0c;随着网络世界的不断扩张&#xff0c;增强我们的网络素养成为了一个迫切需要解决的问题。 与科技同行&#xff0c;培育网络素养 技术…

Redis | 第3章 对象《Redis设计与实现》

前言 参考资料&#xff1a;《Redis设计与实现 第二版》&#xff1b; 本篇笔记按照书里的脉络&#xff0c;将知识点分为四个部分。其中第一部分数据结构与对象分为上中下篇&#xff0c;上篇包括&#xff1a;SDS、链表和字典&#xff1b;中篇包括跳跃表、整数集合和压缩列表&…

国标GB28181设备管理软件EasyGBS国标GB28181视频平台:RTMP和GB28181两种视频上云协议的区别

在当今信息化高速发展的社会中&#xff0c;视频监控技术已经成为各行各业不可或缺的一部分。无论是城市安全、交通管理&#xff0c;还是企业安全、智能家居&#xff0c;视频监控都发挥着至关重要的作用。然而&#xff0c;随着监控点数量的急剧增加&#xff0c;海量视频数据的存…

Elasticsearch:如何部署文本嵌入模型并将其用于语义搜索

你可以按照这些说明在 Elasticsearch 中部署文本嵌入模型&#xff0c;测试模型并将其添加到推理提取管道。它使你能够生成文本的向量表示并对生成的向量执行向量相似性搜索。示例中使用的模型在 HuggingFace上公开可用。 该示例使用来自 MS MARCO Passage Ranking Task 的公共…

MFC图形函数学习10——画颜色填充矩形函数

一、介绍绘制颜色填充矩形函数 前面介绍的几个绘图函数填充颜色都需要专门定义画刷&#xff0c;今天介绍的这个函数可以直接绘制出带有填充色的矩形。 原型1&#xff1a;void FillSolidRect(int x,int y,int cx,int cy,COLORREF color); 参数&#xff1a;&a…