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

Apache Httpd 多后缀解析

目录

1.原因

2.环境

3.复现

4.防御


1.Apache Httpd 多后缀解析原因

Apache HTTP Server 在处理文件请求时,通常会根据文件的后缀来确定如何处理该文件。例如,.php文件会被交给 PHP 解释器处理,而.html文件则直接作为静态文件返回。

然而,在某些配置下,如果文件名包含多个后缀(例如 file.php.jpg),Apache 可能会错误地将其解析为 PHP 文件并执行其中的代码,即使文件的后缀是 .jpg。这种行为可能会导致攻击者上传恶意文件并执行任意代码。

如果运维人员给.php后缀增加了处理器:

AddHandler application/x-httpd-php .php

 那么,只要一个文件含有.php后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。

该漏洞的根本原因在于 Apache 的 mod_mime 模块在处理多后缀文件名时的行为。默认情况下,Apache 会从右到左解析文件名的后缀。例如,对于 file.php.jpg,Apache 会首先识别 .jpg,然后识别 .php。如果配置不当,Apache 可能会将文件视为 PHP 文件并执行其中的代码。

2.环境搭建

https://github.com/vulhub/vulhub下载压缩包

ubuntu下解压

安装容器:docker docker-compose

漏洞目录:~/vulhub-master/httpd/apache_parsing_vulnerability

docker-compose up -d 拉取漏洞环境,自动部署

docker ps -a 查看docker状态

然后直接在物理机访问虚拟机的ip

3.Apache Httpd 多后缀解析复现

先上传一个web.php.jpg文件,写入<?php pnpinfo()?>

然后burpsuit抓包,发送

 然后访问

http://虚拟机ip/uploadfiles/web.php.jpg

发现成功解析 

4.Apache Httpd 多后缀解析防御

#限制 PHP 文件的解析
<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

# 禁止多后缀文件的解析
<FilesMatch \.(php\.|php[0-9]?\.|phtml\.|phps\.|php\d\.).+$>
    Order Allow,Deny
    Deny from all
</FilesMatch>

相关文章:

  • 防火墙带宽管理实验
  • 宠物医院台账怎么做,兽医电子处方单模板打印样式,佳易王兽医兽药开方宠物病历填写打印操作教程
  • 蓝桥云客 卡牌
  • unity3d 背景是桌面3d数字人,前面是web的表单
  • 服务器数据恢复—raid5阵列中硬盘出现坏道的数据恢复流程
  • 从CL1看生物计算机的创新突破与发展前景:技术、应用与挑战的多维度剖析
  • 20250307确认荣品PRO-RK3566开发板在Android13下的以太网络共享功能
  • jupyter配置多个核心
  • 每日定投40刀BTC(7)20250303 - 20250306
  • 蜗牛安装黑群晖7.X
  • CentOS7离线部署安装docker和docker-compose
  • Kotlin字符串操作在Android开发中的应用示例
  • 安孚科技携手政府产业基金、高能时代发力固态电池,开辟南孚电池发展新赛道
  • LTC6804、LTC6811、LTC6813的使用
  • 如何判断住宅IP与机房IP的方法
  • 【南华大学机械工程学院主办,澳大利亚莫道克大学支持 | EI、Scoups检索】2025年智慧能源与控制工程国际学术会议(SECE 2025)
  • clickhouse可视化分析工具
  • 亲测解决笔记本触摸板使用不了Touchpad not working
  • IDEA(十一)调整新版本的工具栏显示Git操作(pull、commit、push、revert等)
  • Spring Cloud之注册中心之Nacos的注册中心
  • wordpress设置静态/优化网站关键词优化
  • 021新手学做网站/如何在各大网站发布信息
  • 做佛像在什么网站发贴效果好点/广东vs北京首钢
  • 河北中石化建设网站/全网推广
  • 营销网站制作比较好的/网络营销第三版课本
  • 武汉网络兼职网站建设/中央刚刚宣布大消息