drplagash/cve-lab-pocs
GitHub: drplagash/cve-lab-pocs
一个以防御和教育为目的的 CVE 漏洞分析实验室框架,提供标准化的漏洞复现、检测验证和缓解指南模板。
Stars: 0 | Forks: 0
# CVE 实验室 PoC
仅在受控实验室环境中测试的 CVE 分析和概念验证代码。
## 目的
本仓库包含用于教育和防御目的的 CVE 分析。
所有测试必须在隔离、授权且可复现的实验室环境中进行。
其目的是为了理解漏洞、记录影响、验证检测思路并提供缓解指南。本仓库并非用于不受控的漏洞利用代码堆积,因为互联网上已经有足够多的人在毫无根据的自信中制造灾难了。
## 结构
```
cve-lab-pocs/
├── CVE-YYYY-NNNN-product-name/
│ ├── README.md
│ ├── lab/
│ ├── exploit/
│ ├── detection/
│ ├── mitigation/
│ ├── screenshots/
│ └── notes.md
├── docs/
├── examples/
└── templates/
```
## 分类
- `templates`:可复用的 CVE 分析模板。
- `docs`:通用方法论、笔记和参考资料。
- `examples`:安全示例和仅限实验室的演示。
- `CVE-YYYY-NNNN-product-name`:每个被分析的 CVE 对应一个文件夹。
## 模板
推荐的模板:
- `templates/cve-analysis-template.md`
用于记录 CVE 分析、实验室范围、影响、检测和缓解的标准模板。
如果模板尚不存在,请在以下位置创建:
```
cve-lab-pocs/templates/cve-analysis-template.md
```
## CVE 文件夹格式
每个 CVE 应尽可能使用以下结构:
```
CVE-YYYY-NNNN-product-name/
├── README.md
├── lab/
│ ├── docker-compose.yml
│ └── setup.md
├── exploit/
│ └── poc.py
├── detection/
│ ├── sigma.yml
│ ├── yara.yar
│ └── iocs.md
├── mitigation/
│ └── hardening.md
├── screenshots/
└── notes.md
```
## CVE README 格式
每个 CVE 分析应包含:
```
# CVE-YYYY-NNNN - Product / Component
## 摘要
Brief description of the vulnerability.
## 状态
CVE ID, vendor, product, affected version, tested version, CVSS, EPSS, KEV status, patch status and exploit status.
## 范围
Controlled lab only.
## 受影响 Product
Product, version and component tested.
## Lab 环境
Operating system, Docker/VM details, network, tested version and date.
## 影响
What the vulnerability allows in the controlled lab.
## 复现
Safe reproduction steps.
## Proof of Concept
PoC usage and expected output.
## 检测
Logs, Sigma/YARA/Suricata rules, IOCs or behavioral indicators.
## 缓解
Patch, workaround or hardening recommendation.
## 参考
Official advisories, NVD, vendor notes, CISA KEV or trusted research.
## 免责声明
Educational, defensive and authorized lab use only.
```
## 必需的状态字段
尽可能包含:
```
CVE:
Vendor:
Product:
Affected version:
Tested version:
CVSS:
EPSS:
CISA KEV:
Patch available:
Exploit status:
Lab status:
Confidence:
```
## 参考资料原则
优先使用主要或受信任的来源:
- 厂商安全公告。
- NVD。
- CISA KEV。
- MITRE CVE 记录。
- GitHub Security Advisory。
- CERT 安全公告。
- 受信任的安全研究。
- 官方补丁说明。
避免使用随意的漏洞利用转载作为主要参考。是的,Google 的第一个搜索结果可能确实存在,但它依然可能是垃圾,这是现代的悲剧。
## 规则
- 仅限授权实验室。
- 仅限受控环境。
- 严禁攻击第三方系统。
- 严禁使用真实目标。
- 严禁窃取凭证。
- 严禁使用持久化或规避工具。
- 严禁包含真实的恶意软件二进制文件。
- 严禁包含凭证、token、转储数据或敏感数据。
- 严禁不必要的武器化。
- 严禁无上下文的漏洞利用代码。
- 尽可能包含缓解措施。
- 尽可能包含检测方法。
- 优先使用可复现的实验室环境,而非盲目的漏洞利用代码。
## 安全 PoC 指南
允许:
- 仅限实验室的概念验证。
- 针对本地脆弱服务的复现步骤。
- 防御性验证。
- 检测逻辑。
- 缓解说明。
- 脱敏的截图。
- 安全的漏洞利用解释。
不允许:
- 硬编码的公开目标。
- 批量漏洞利用逻辑。
- 隐蔽或规避行为。
- 持久化机制。
- 凭证收集。
- 真实的恶意软件。
- 破坏性 payload。
- 来源不明的漏洞利用代码堆砌。
## 检测思路
使用 `detection/` 文件夹存放:
```
Sigma rules
YARA rules
Suricata rules
IOCs
Log queries
Behavioral indicators
Network indicators
```
建议的文件:
```
detection/
├── sigma.yml
├── yara.yar
├── suricata.rules
├── iocs.md
└── log-queries.md
```
## 缓解思路
使用 `mitigation/` 文件夹存放:
```
Patch guidance
Workarounds
Configuration changes
Hardening notes
Monitoring recommendations
Validation steps
```
建议的文件:
```
mitigation/
├── hardening.md
├── patch-notes.md
└── validation.md
```
## 推荐命令
### 创建 CVE 工作区
```
mkdir -p CVE-YYYY-NNNN-product-name/{lab,exploit,detection,mitigation,screenshots}
touch CVE-YYYY-NNNN-product-name/README.md
touch CVE-YYYY-NNNN-product-name/notes.md
```
### 计算文件哈希
```
sha256sum file
```
### 检查运行中的容器
```
docker ps
```
### 启动实验室
```
docker compose up -d
```
### 停止实验室
```
docker compose down
```
### 捕获服务版本
```
nmap -sC -sV -p -oN lab/service-scan.txt
```
## 发布检查清单
在发布 CVE 分析之前:
- [ ] CVE ID 正确无误。
- [ ] 已记录厂商/产品/版本。
- [ ] 实验室范围明确。
- [ ] 未包含真实目标。
- [ ] 未包含机密信息。
- [ ] 未包含敏感截图。
- [ ] PoC 仅限于实验室使用。
- [ ] 已解释影响。
- [ ] 包含检测思路。
- [ ] 包含缓解指南。
- [ ] 包含参考资料。
- [ ] 包含免责声明。
- [ ] 如果分析不完整,需说明置信度级别。
## 免责声明
本仓库仅用于教育、防御和授权实验室目的。
请勿将本仓库中的任何材料用于您不拥有或未获得明确测试许可的系统。
请勿将这些材料用于未经授权的访问、中断、凭证窃取、持久化、规避或滥用。
**少吹牛,多看证据。**
标签:CVE, Go语言工具, Metaprompt, PoC, XXE攻击, 实验环境, 数字签名, 暴力破解, 漏洞分析, 请求拦截, 路径探测, 逆向工具