漏洞学习篇:CVE 漏洞复现
漏洞原理
Apache HTTP Server 是 Apache 基础开放的流行的 HTTP 服务器。在其 2.4.49 版本中,引入了一个路径体验,满足下面两个条件的 Apache 服务器将受到影响:
版本等于 2.4.49
<Directory />Require all granted</Directory>
(默认情况下是允许被访问的)。
攻击者利用这个漏洞,可以读取到 Apache 服务器 Web 目录以外的其他文件,或者读取 Web 中的脚本源码,或者在开启 cgi 或 cgid 的服务器上执行任意命令。
影响版本
Apache HTTP Server 2.4.49
漏洞复现
这里用 vulhub 环境
【一>所有资源获取<一】1、200 份很多已经买不到的绝版电子书 2、30G 安全大厂内部的视频资料 3、100 份 src 文档 4、常见安全面试题 5、ctf 大赛经典题目解析 6、全套工具包 7、应急响应笔记 8、网络安全学习路线
可以看见,apache 是 49 版本的
使用如下 CURL 命令来发送 Payload(其中/icons/
必须是一个存在且可访问的目录):
在服务端开启了 gi 或 cgid 这两个 mod 的情况下,这个路径穿越漏洞将可以执行任意 cg 命令:
修复方法
升级到 Apache HTTP Server 最新安全版本,或使用 Apache HTTP Server 非 2.4.49 版
CVE-2021-42013
漏洞原理
Apache HTTP Server 2.4.50 中对 CVE-2021-41773 的修复不够充分。攻击者可以使用路径遍历攻击将 URL 映射到由类似别名的指令配置的目录之外的文件。如果这些目录之外的文件不受通常的默认配置 “要求全部拒绝” 的保护,则这些请求可能会成功。如果还为这些别名路径启用了 CGI 脚本,则可以允许远程代码执行。
影响版本
Apache 2.4.49 和 Apache 2.4.50
漏洞复现
启动漏洞环境
在服务器上启用 mods cgi 或 cgid 后,此路径遍历漏洞将允许任意命令执行:
修复方法
升级到 Apache HTTP Server 安全版本。
github 上已经有这两个漏洞的检测工具
评论