bemaru/mitre-study
GitHub: bemaru/mitre-study
一份面向检测工程的 MITRE ATT&CK 学习与研究示例集合,帮助理解 ATT&CK 覆盖与数据查询。
Stars: 0 | Forks: 0
# MITRE ATT&CK 学习研究
面向检测工程视角的 MITRE ATT&CK 企业数据小型研究示例。
本仓库有意保持轻量:它是一组用于学习、实验和快速分析的示例(基于 [`mitreattack-python`](https://github.com/mitre-attack/mitreattack-python)),**并非**生产库或 ATT&CK 数据的维护镜像。
## 包含内容
- ATT&CK 数据的基础加载与查询
- 基于 ATT&CK 技术的示例组分析
- 简单的 EDR 覆盖缺口分析
- 威胁组间的技术频率分析
## 环境准备
推荐使用 Python 3.11+。
使用 `uv`:
```
uv sync
```
手动使用虚拟环境:
```
python3.11 -m venv .venv
source .venv/bin/activate
pip install "mitreattack-python>=5.3.0"
```
## 准备 ATT&CK 数据
不应将大型的 ATT&CK JSON 文件提交到 Git。请单独下载企业版 ATT&CK 数据包并作为本地工作数据保留。
推荐流程:
```
uv run python examples/download_enterprise_attack.py
```
或者从官方 ATT&CK STIX 源下载企业版 ATT&CK JSON 数据包并放置到示例所期望的位置。
选择与当前仓库匹配的包格式:
- 示例使用 `mitreattack.stix20`,因此它们期望企业版 ATT&CK STIX 2.0 JSON 数据包
推荐本地路径:
```
data/enterprise-attack.json
```
## 运行示例
在 ATT&CK 数据文件本地可用后,从仓库根目录运行示例。
```
uv run python examples/basic_usage.py
uv run python examples/apt_group_profiling.py
uv run python examples/edr_coverage_analysis.py
uv run python examples/technique_statistics.py
```
各示例的作用:
- `examples/basic_usage.py`:加载 ATT&CK 数据并检查技术、战术和组等基础实体
- `examples/apt_group_profiling.py`:对特定威胁组进行画像并输出其使用的技术
- `examples/edr_coverage_analysis.py`:将小型样本覆盖集与 ATT&CK 技术进行对比
- `examples/technique_statistics.py`:汇总各组中出现频率最高的技术
这些示例有意保持小型化,并可能使用硬编码的样本值(如目标组名称或模拟覆盖集)。请将它们视为探索的起点,而非成品工具。
## 参考资源
- [mitreattack-python GitHub](https://github.com/mitre-attack/mitreattack-python)
- [mitreattack-python 文档](https://mitreattack-python.readthedocs.io/en/latest/)
- [MITRE ATT&CK 数据与工具](https://attack.mitre.org/resources/attack-data-and-tools/)
- [MITRE ATT&CK STIX 数据](https://github.com/mitre-attack/attack-stix-data)
标签:ATT&CK 数据分析, Cloudflare, EDR, mitreattack-python, MITRE ATT&CK, Python, STIX, URL发现, 企业安全, 威胁情报, 威胁组分析, 安全学习, 安全检测, 开发者工具, 开源安全工具, 技术频率分析, 数据查询, 无后门, 漏洞分析, 组剖析, 网络资产管理, 脆弱性评估, 覆盖分析, 路径探测, 逆向工具, 逆向工程平台