Botti01/eBPF-CVE-exploitation
GitHub: Botti01/eBPF-CVE-exploitation
一个聚焦于 eBPF verifier 漏洞分析的教学研究项目,通过系统拆解近年 CVE 并记录完整的分析方法论来帮助理解内核安全机制。
Stars: 0 | Forks: 0
# eBPF CVE 利用研究
本代码库包含关于 Linux 内核漏洞的学术研究,主要关注 **eBPF verifier** 错误。该项目是安全验证与测试课程的一部分,旨在分析最近的 CVE、探索漏洞利用原语,并开发概念验证。
与标准的漏洞利用代码库不同,本项目非常强调**漏洞分析方法论**。它不仅记录了成功的利用路径,还记录了“失败的方法”——解释了为什么某些技术(如特定的类型混淆或部分写入)会被 verifier 的状态跟踪或缓解机制阻止。
## 项目结构
```
eBPF-CVE-exploitation/
├── buildroot/ ← Shared rootfs build environment (submodule)
├── common/ ← Shared exploit infrastructure (headers, wrappers)
├── CVEs/ ← Analyzed vulnerabilities (one per directory)
│ ├── CVE-2021-33200/
│ ├── CVE-2021-3600/
│ ├── CVE-2023-52452/
│ ├── CVE-2023-52462/
│ ├── CVE-2023-52676/
│ └── CVE-2024-26589/
├── execution/ ← Automation scripts for building and testing
├── output/ ← Generated analysis artifacts and datasets
├── report/ ← Final academic report (LaTeX)
└── README.md
```
## 分析的漏洞
每个 CVE 目录都包含一个用于分析的独立环境,其中包括补丁详细信息、漏洞利用可行性研究,以及按里程碑划分的 PoC 源代码。
**有关详细信息、漏洞具体情况以及执行说明,请参阅每个 CVE 文件夹中专属的 `README.md`。**
目前分析的 CVE 组合包括:
- **CVE-2021-33200**
- **CVE-2021-3600**
- **CVE-2023-52452**
- **CVE-2023-52462**
- **CVE-2023-52676**
- **CVE-2024-26589**
## 测试环境
该项目提供了一个具有高可复现性的、基于 Buildroot 的 QEMU/KVM 实验环境。它没有依赖通用的 Linux 发行版,而是为每个 CVE 编译特定的易受攻击内核版本,并生成最小的自定义 root 文件系统。
漏洞利用程序在主机上静态交叉编译,并使用 Buildroot 的 overlay 机制直接注入到 VM 镜像中,从而确保了一个干净且隔离的测试空间。
### 一般使用说明
要为特定漏洞构建并运行环境,通常需要使用提供的编排脚本。请注意,您应始终先查阅特定 CVE 的 `README.md`。
```
# 1. 为所需的 CVE 编译 PoC
make -C CVEs//poc
# 2. 交互式选择 CVE 和目标内核,配置并构建
bash execution/build.sh
# 3. 启动 QEMU 虚拟机
bash execution/build.sh boot
```
进入 VM 后,编译好的漏洞利用里程碑通常可以在根目录中找到(例如 `/milestone1`、`/milestone2`)。
## 免责声明
本项目仅供教育和学术研究之用。其设计初衷是在受控、隔离的环境中运行,以研究内核安全机制和 verifier 行为。
标签:Buildroot, CISA项目, Cutter, CVE, EDR绕过, Linux内核漏洞, PoC, Web报告查看器, 子域名枚举, 学术研究, 安全验证与测试, 客户端加密, 提权, 数字签名, 暴力破解, 漏洞分析, 漏洞复现, 类型混淆, 系统安全, 网络安全, 路径探测, 隐私保护, 验证器绕过, 高交互蜜罐