bb1nfosec/vuln-corpus
GitHub: bb1nfosec/vuln-corpus
Stars: 0 | Forks: 0
# Exploitarium 漏洞语料库
## 概述
本语料库是一个结构化、机器可读的数据集,包含从 [Exploitarium](https://github.com/bikini/exploitarium) 仓库分析的 23 个真实世界漏洞。每个条目都包含目标元数据、漏洞分类、根因分析、漏洞利用原语和发现方法。
**规模:** 涵盖 14 个漏洞类别的 23 个条目
**覆盖范围:** C/C++、PHP、Go、Java、Rust、TypeScript、JavaScript —— Windows、Linux、macOS
**CVE:** 已分配 1 个 (CVE-2026-55200)
## 数据文件
| 文件 | 格式 | 描述 |
|------|--------|-------------|
| [`corpus.yaml`](corpus.yaml) | YAML | 包含所有字段完整结构的语料库 |
| [`corpus.json`](corpus.json) | JSON | 用于程序化提取的机器可读版本 |
| [`CROSS-REFERENCE.md`](CROSS-REFERENCE.md) | Markdown | 按类型、严重程度、语言、名称等进行交叉引用 |
| [`extraction-schema.yaml`](extraction-schema.yaml) | YAML | 漏洞提取格式的 schema 定义 |
## 漏洞摘要
| 严重程度 | 数量 | 条目 |
|----------|-------|---------|
| Critical | 7 | EX-004, EX-006, EX-010, EX-012, EX-015, EX-018, EX-019 |
| High | 14 | EX-001, EX-003, EX-005, EX-007, EX-008, EX-009, EX-011, EX-013, EX-014, EX-016, EX-017, EX-020, EX-021, EX-023 |
| Medium | 2 | EX-002, EX-022 |
### 漏洞类别
| 类型 | 数量 | 条目 |
|------|-------|---------|
| RCE / ACE | 7 | 4, 5, 8, 15, 18, 20, 23 |
| UAF → Calc | 2 | 6, 19 |
| OOB-W → Calc/RCE | 2 | 10, 12 |
| LPE | 2 | 1, 16 |
| Priv Esc | 1 | 13 |
| Auth Bypass | 1 | 11 |
| Container Escape | 1 | 14 |
| HTTP Smuggling | 1 | 9 |
| Info Leak | 1 | 21 |
| Parser Bug / DoS | 2 | 2, 22 |
| Defender Bypass | 1 | 7 |
| TOCTOU / Race | 1 | 3 |
| Hijack (Search Path) | 1 | 17 |
### 目标语言
| 语言 | 数量 |
|----------|-------|
| C / C++ | 8 (EX-005, EX-006, EX-010, EX-012, EX-016, EX-017, EX-019, EX-022) |
| PHP | 2 (EX-004, EX-013) |
| JavaScript / TypeScript / Electron | 3 (EX-018, EX-021, EX-023) |
| Go | 2 (EX-003, EX-014) |
| Java | 2 (EX-008, EX-015) |
| Rust | 1 (EX-011) |
| C++ (multi-stack) | 2 (EX-001, EX-020) |
| C# | 1 (EX-017) |
## 条目格式
语料库中的每个条目包含:
```
- id: "EX-XXX"
title: "Brief vulnerability title"
cve: "CVE-XXXX-YYYYY" # or null
target:
product: "Product Name"
version: "Affected version"
language: "Implementation language"
os: ["Affected OSes"]
component: "Affected module"
classification:
type: "Vulnerability type"
severity: "Critical / High / Medium"
cwe: "CWE-XXX"
root_cause: "Concise root cause description"
exploit_primitive: "Exploitation primitive"
discovery: ["Discovery methods with HIGH confidence"]
```
## 方法论
本语料库使用**结构化研究重建**方法论构建:
1. **阶段 1 — 事实:** 仅从源代码、动态 trace、PoC 输出中提取可观察、有证据支撑的事实
2. **阶段 2 — 研究过程:** 假设研究人员可能发现 bug 的过程
3. **阶段 3 — 时间线:** 构建逐步的发现叙述
4. **阶段 4 — 替代路径:** 按置信度对多种发现方法进行评分
5. **阶段 5 — 启发式规则:** 提取可复用的挖掘模式
6. **阶段 6 — 置信度:** 将每条陈述标记为 FACT / INFERENCE / SPECULATION
## 与 Exploitarium 的关系
```
exploitarium/ (PoC exploits)
│
▼
vuln-corpus/ (structured data)
├── corpus.yaml ← Machine-readable extract
├── corpus.json ← Same data in JSON
├── CROSS-REFERENCE.md ← Human-readable lookup
├── extraction-schema.yaml ← Schema definition
└── README.md ← This file
```
Exploitarium 仓库包含实际的 PoC 漏洞利用代码。本语料库提供了在其中发现的漏洞的结构化、可搜索索引。
## 用法
```
# Python: 加载语料库
import json
with open('corpus.json') as f:
data = json.load(f)
for entry in data['corpus']['entries']:
print(f"{entry['id']}: {entry['classification']['severity']} {entry['title']}")
```
```
# YAML: 按 severity 查询
entries:
filter: classification.severity == "Critical"
count: 7
```
## 许可证
本语料库仅供研究和教育目的提供。相关漏洞已在适用的 CVE 记录和供应商公告中进行了记录。
标签:内存安全, 漏洞数据集