MysticXTharun/mitre-attack-coverage-dashboard
GitHub: MysticXTharun/mitre-attack-coverage-dashboard
一款以 SOC 检测工程为核心的 Web 应用,用于可视化衡量和分析 MITRE ATT&CK 框架的检测覆盖率与盲区。
Stars: 0 | Forks: 0
# MITRE ATT&CK 覆盖率仪表板
一个以 SOC 为核心的 Web 应用程序,用于衡量跨 MITRE ATT&CK Enterprise 战术和技术的检测覆盖率。
该仪表板可帮助安全团队记录检测规则、识别覆盖盲区、追踪数据源,并导出覆盖率证据以用于报告。
## 功能
- 交互式 MITRE ATT&CK 技术矩阵
- 已覆盖、部分覆盖和未覆盖分类
- 加权覆盖率得分计算
- 战术级别准备度分析
- 按战术或覆盖状态进行搜索和过滤
- 检测规则和数据源文档记录
- 分析师笔记和持久化 SQLite 存储
- 导出 CSV 证据
- 带有 Swagger 文档的 REST API
- 自动化 API 测试
- Docker 部署
- 响应式暗黑 SOC 界面
## 仪表板预览
### 覆盖率概述

### 技术覆盖率详情

### 交互式 API 文档

## 技术栈
| 组件 | 技术 |
|---|---|
| Backend | FastAPI |
| Database | SQLite 和 SQLAlchemy |
| Validation | Pydantic |
| Frontend | HTML, CSS 和 JavaScript |
| Templates | Jinja2 |
| Testing | Pytest 和 FastAPI TestClient |
| Deployment | Docker 和 Docker Compose |
## 覆盖率计算
仪表板使用加权得分:
```
Coverage Score = (Covered + (Partial × 0.5)) / Total Techniques × 100
```
- 已覆盖贡献 100%
- 部分覆盖贡献 50%
- 未覆盖贡献 0%
## 项目结构
```
mitre-attack-coverage-dashboard/
├── app/
│ ├── api/
│ │ └── routes.py
│ ├── database/
│ │ ├── database.py
│ │ ├── models.py
│ │ └── schemas.py
│ ├── services/
│ │ └── mitre_service.py
│ ├── static/
│ │ ├── css/style.css
│ │ └── js/dashboard.js
│ ├── templates/
│ │ └── index.html
│ └── main.py
├── tests/
│ └── test_api.py
├── Dockerfile
├── docker-compose.yml
├── requirements.txt
└── README.md
```
## 使用 Docker 运行
克隆代码库:
```
git clone https://github.com/MysticXTharun/mitre-attack-coverage-dashboard.git
cd mitre-attack-coverage-dashboard
```
构建并启动:
```
docker compose up -d --build
```
打开:
```
http://localhost:8000
```
停止应用程序:
```
docker compose down
```
## 本地开发
创建并激活虚拟环境:
```
python3 -m venv venv
source venv/bin/activate
```
安装依赖项:
```
pip install -r requirements.txt
```
启动开发服务器:
```
python -m uvicorn app.main:app --reload
```
## API 端点
| 方法 | 端点 | 描述 |
|---|---|---|
| GET | `/api/health` | 应用程序健康检查 |
| GET | `/api/techniques` | 列出和过滤技术 |
| GET | `/api/techniques/{technique_id}` | 检索某项技术 |
| PUT | `/api/techniques/{technique_id}` | 更新覆盖率信息 |
| GET | `/api/summary` | 总体覆盖率摘要 |
| GET | `/api/tactics` | 列出可用的战术 |
| GET | `/api/analytics/tactics` | 战术级别分析 |
| GET | `/api/export/csv` | 导出覆盖率证据 |
交互式 Swagger 文档:
```
http://localhost:8000/docs
```
## 运行测试
```
pytest -v
```
当前的测试覆盖范围包括:
- 健康检查
- 技术列表和搜索
- 覆盖状态过滤
- 技术更新
- 无效状态验证
- 缺失技术处理
- 覆盖率得分计算
## SOC 用例
- 检测工程盲区评估
- SIEM 用例映射
- EDR 和数据源覆盖率审查
- 紫队演练准备
- 审计证据和控制报告
- SOC 成熟度评估
## 未来增强功能
- 导入完整的 MITRE ATT&CK STIX 数据集
- 用户身份验证和基于角色的访问控制
- 检测规则版本历史记录
- 导出 JSON 和 ATT&CK Navigator 图层
- 支持 PostgreSQL
- 使用 GitHub Actions 实现 CI/CD
## 免责声明
本项目仅用于教育和防御性安全目的。MITRE ATT&CK 是由 The MITRE Corporation 维护的知识库。本项目不附属于 MITRE,也未获得其认可。
## 作者
**Sai Tharun Kalidindi**
- GitHub: [MysticXTharun](https://github.com/MysticXTharun)
- 研究方向:SOC 运营、威胁情报和检测工程
标签:AV绕过, Cloudflare, FastAPI, MITRE ATT&CK, 多模态安全, 安全运营, 扫描框架, 数据可视化, 网络测绘, 覆盖度分析, 请求拦截, 逆向工具