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

Nginx 文件名逻辑漏洞(CVE-2013-4547)

漏洞原理:

文件解析漏洞的主要原因是错误的解析了请求的URI🙅,错误的获取用户请求的文件名,将其他格式的文件当作php文件解析,导致出现权限绕过、代码执行。

在CVE-2013-4547漏洞中,通常会有下面类似的配置文件:

location ~ \.php$ {root           html;include        fastcgi_params;fastcgi_pass   php:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  /var/www/html$fastcgi_script_name;fastcgi_param  DOCUMENT_ROOT /var/www/html;}

请求1.png[0x20][0x00].php,这个URI可以匹配上正则\.php$,可以进入这个Location块;但进入后,Nginx却错误地认为请求的文件是1.png[0x20],因为nginx遇到0x00结束标志符就会结束解析文件名。

也就是进入location块的是1.png[0x20]文件

影响范围:

Nginx 0.8.41 ~ 1.4.3 ;1.5.0 ~ 1.5.7

漏洞复现:

启动靶场环境后,上传一个png文件,抓包后在文件名后面添加一个空格👈👈

访问http://your-ip:8080/uploadfiles/1.gif[0x20][0x00].php,即可发现PHP已被解析:

 

 在二进制格式中更改

解析成功

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ESP8266做httpServer提示Header fields are too long for server to interpret
  • 【论文分享精炼版】 sNPU: Trusted Execution Environments on Integrated NPUs
  • NAT技术
  • vue3 +百度地图 实现 地点检索,输入联想,经纬度,逆地理编码,创建标记,label等
  • LAMP+WordPress
  • 15、Python如何获取文件的状态
  • 测试工具笔记
  • 2024.9.15周报
  • ThinkPHP8出租屋管理系统
  • 2011年全国硕士研究生入学统一考试计算机科学与技术
  • 2024_中秋国庆双节来临 祝CSDN所有开发者与网站节日快乐
  • 详解 Pandas 的 rename 函数
  • Linux PTP 测量实操 (IEEE 1588)
  • vscode 链接数据库
  • RLS带遗忘因子的递归最小二乘法
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • Brief introduction of how to 'Call, Apply and Bind'
  • CAP 一致性协议及应用解析
  • ECMAScript6(0):ES6简明参考手册
  • Java新版本的开发已正式进入轨道,版本号18.3
  • leetcode98. Validate Binary Search Tree
  • mysql 5.6 原生Online DDL解析
  • Objective-C 中关联引用的概念
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • Python连接Oracle
  • SQLServer插入数据
  • 服务器从安装到部署全过程(二)
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 通信类
  • 移动端唤起键盘时取消position:fixed定位
  • 译米田引理
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​iOS实时查看App运行日志
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​第20课 在Android Native开发中加入新的C++类
  • # .NET Framework中使用命名管道进行进程间通信
  • #QT(TCP网络编程-服务端)
  • $jQuery 重写Alert样式方法
  • (02)Hive SQL编译成MapReduce任务的过程
  • (1)Nginx简介和安装教程
  • (2024最新)CentOS 7上在线安装MySQL 5.7|喂饭级教程
  • (poj1.2.1)1970(筛选法模拟)
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (篇九)MySQL常用内置函数
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (原創) 如何解决make kernel时『clock skew detected』的warning? (OS) (Linux)
  • (转)创业家杂志:UCWEB天使第一步
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • .NET DevOps 接入指南 | 1. GitLab 安装