sltcnb/atktimeline

GitHub: sltcnb/atktimeline

自托管的攻击时间线可视化工具,帮助安全分析师将事件映射到 MITRE ATT&CK 阶段以辅助威胁分析和应急响应。

Stars: 0 | Forks: 0

ATK Timeline

## 演示

ATK Timeline demo

# ATK 时间线 一个用于应急响应和威胁分析的自托管攻击时间线构建工具。基于 Flask 和 PostgreSQL 构建,可通过 Docker Compose 或 Kubernetes (Traefik) 进行部署。 将事件映射到 **MITRE ATT&CK 阶段**,在可视化时间线中跟踪源/目标 IP、artifacts 和 IOCs。 ![Python](https://img.shields.io/badge/Python-3.12-blue) ![Flask](https://img.shields.io/badge/Flask-3.x-lightgrey) ![License](https://img.shields.io/badge/License-MIT-green) ## 快速开始 ### 1. 配置 ``` cp config.example.json config.json # 编辑 config.json 以配置你的 hostname、passwords 和 admin credentials ``` ### 2a — Kubernetes ``` ./auto-deploy.sh ``` 需要:Docker、kubectl、jq、Traefik ingress controller。 ### 2b — Docker Compose ``` jq -r '"POSTGRES_PASSWORD=\(.postgres_password)\nSECRET_KEY=\(.flask_secret)"' config.json > .env docker compose up --build docker compose exec app flask create-user \ --username admin --email admin@csirt.lab --password changeme ``` 打开 [http://localhost:8000](http://localhost:8000)。 有关包括本地 Python 开发在内的所有选项,请参阅 [deploy.md](deploy.md)。 ## 功能特性 - **可视化攻击时间线**,带有颜色编码的 MITRE ATT&CK 阶段 - **仅限本地认证** — 无公开注册,账号通过 CLI 创建 - 生产环境持久化使用 **PostgreSQL**;本地开发使用 SQLite - 使用单一配置文件 (`config.json`) 管理所有部署设置 - **支持 Kubernetes**,带有 Traefik ingress 和自动化部署 - 专为 SOC/IR 分析师设计的**简洁深色 UI** - 跟踪每个事件的**源 IP、目标 IP、artifacts 和 IOCs** ## 支持的 MITRE ATT&CK 阶段 | 阶段 | 颜色 | |---|---| | 侦察 | Indigo | | 初始访问 | Amber | | 执行 | Red | | 持久化 | Rose | | 权限提升 | Dark Red | | 防御规避 | Stone | | 凭据访问 | Dark Amber | | 发现 | Sky | | 横向移动 | Violet | | 收集 | Teal | | 数据外传 | Orange | | 命令与控制 | Purple | | 影响 | Deep Red | | 检测 | Green | | 响应 | Blue | ## 项目结构 ``` atktimeline/ ├── config.example.json # Deployment config template (copy to config.json) ├── auto-deploy.sh # Kubernetes deployment script (reads config.json) ├── docker-compose.yml # Local dev with PostgreSQL ├── Dockerfile ├── requirements.txt ├── app.py # Flask application ├── models.py ├── forms.py ├── deploy.md # Full deployment guide ├── templates/ ├── static/ └── k8s/ ├── postgres-pvc.yaml ├── postgres-deployment.yaml ├── postgres-service.yaml ├── app-deployment.yaml └── app-service.yaml ``` ## 用户管理 注册功能已禁用。所有账号均通过 CLI 创建。 ``` # Docker Compose docker compose exec app flask create-user \ --username analyst1 --email analyst1@csirt.lab --password SecurePass123 # Local Python flask create-user --username analyst1 --email analyst1@csirt.lab --password SecurePass123 ``` 有关 Kubernetes 的等效操作,请参阅 [deploy.md](deploy.md)。
标签:Cloudflare, Flask, MITRE ATT&CK, 子域名突变, 安全运营, 库, 应急响应, 扫描框架, 测试用例, 请求拦截, 逆向工具