7a336e6e/sheetstorm
GitHub: 7a336e6e/sheetstorm
全栈应急响应平台,以攻击图谱可视化、威胁情报富化和 AI 报告生成替代传统的共享 Excel 工作流。
Stars: 0 | Forks: 0
⚡ SheetStorm
终结“末日电子表格”。
全栈 incident response 平台,具备攻击图谱、MITRE ATT&CK、AI 报告和实时协作功能。
因为您的 IR 工作流值得拥有比共享 Excel 文件更好的体验。
API 参考 ·
架构 ·
开发 ·
配置 ·
MCP Server
## 什么是 SheetStorm?
SheetStorm 取代了声名狼藉的“末日电子表格”——即安全团队在 incident response 期间不得不使用的共享 Excel 工作簿——取而代之的是一个覆盖完整 IR 生命周期的专用平台:
```
Preparation → Identification → Containment → Eradication → Recovery → Lessons Learned
```
|
### 🔍 调查
- 跟踪受损主机、账户和 IOC
- 映射 MITRE ATT&CK 战术与技术
- 从 Excel/CSV 电子表格导入证据
- 取证工件的保管链
|
### 🕸️ 可视化
- 基于事件数据自动生成攻击图谱
- 11 种节点类型 · 12 种边类型 · 交互式布局
- 团队成员间实时图谱同步
- 导出为 PNG
|
|
### 🤖 报告
- AI 驱动的报告(OpenAI GPT-4 / Google Gemini)
- 执行摘要、指标、IOC 分析和趋势报告
- 使用带样式的 HTML 生成 PDF
- 自动保存到 Google Drive 案例文件夹
|
### 🛡️ 安全
- 6 种 RBAC 角色,包含 40+ 项细粒度权限
- MFA/TOTP 及备用恢复码
- SSO 配置(SAML/OIDC)
- Fernet 加密的凭证存储
- 完整的审计追踪
|
|
### 🔎 威胁情报
- CVE 查询(含 CISA KEV + CVSS 评分)
- IP、域名、邮箱信誉查询
- 勒索软件受害者搜索(ransomware.live)
- IOC 防护/还原,以便安全共享
- 配置集成后自动富化
|
### 📚 知识库
- LOLBAS — 借花献佛二进制文件与脚本
- 65+ 个安全相关的 Windows 事件 ID
- MITRE D3FEND 防御对策
- D3FEND ↔ ATT&CK 建议引擎
|
|
### 🤖 MCP Server — AI 助手集成
- 跨 17 个模块的 **70+ 个工具**,可通过自然语言完全控制平台
- Claude、Cursor 和自定义 AI agent 可以查询事件、富化 IOC、构建攻击图谱并生成报告
- SSE 传输,支持 OAuth 2.1 认证和基于 Redis 的客户端持久化
- 5 个聚焦 IR 的 prompt 模板(事件分析、时间线摘要、MITRE 映射、横向移动、执行摘要)
- 5 个参考数据资源(IR 阶段、严重程度、状态、MITRE 战术与技术)
|
## 快速开始
```
git clone https://github.com/7a336e6e/sheetstorm.git && cd sheetstorm
chmod +x start.sh && ./start.sh
```
就是这样。该脚本会生成密钥、构建 6 个 Docker 容器、运行迁移并创建一个管理员用户。
| Service | URL |
|------------|----------------------------------|
| Frontend | http://127.0.0.1:3000 |
| API | http://127.0.0.1:5000/api/v1 |
| MCP Server | http://127.0.0.1:8811/sse |
## 技术栈
| Layer | Stack |
|----------------|-------|
| **Frontend** | Next.js 14 · TypeScript · Tailwind CSS · Zustand · React Flow · Radix UI · Framer Motion |
| **Backend** | Flask 3.0 · SQLAlchemy · Flask-SocketIO · Flask-JWT-Extended · WeasyPrint · pandas |
| **MCP Server** | Python 3.12 · FastMCP SDK · httpx · SSE transport · OAuth 2.1 |
| **Database** | PostgreSQL 16 · Redis 7 |
| **AI** | OpenAI GPT-4 · Google Gemini Pro |
| **Infra** | Docker Compose · Nginx · S3 · Google Drive · Slack |
## 项目状态
跨 15 个 Epic 已完成 **76 / 84** 项任务。
| Epic | Status |
|------|--------|
| 关键 Bug 修复 | ✅ 6/6 |
| 攻击图谱自动链接 | ✅ 2/2 |
| WebSocket 实时通信 | ✅ 3/3 |
| Frontend 功能(工件、报告、通知、管理) | ✅ 7/7 |
| 代码质量(hooks、错误边界、验证、stores) | ✅ 8/8 |
| 安全性(MFA、SSO、清洗、速率限制、OAuth MFA) | ✅ 6/6 |
| Backend 文档 | ✅ 1/1 |
| AI 报告与 Google Drive | ✅ 4/4 |
| 集成扩展(25 种类型、测试按钮、DB 配置) | ✅ 4/4 |
| RBAC 与基于团队的访问控制 | ✅ 2/2 |
| 威胁情报(VT, MISP, CVE, IP/域名/邮箱, 勒索软件, defang) | ✅ 10/10 |
| 知识库(LOLBAS, 事件 ID, D3FEND) | ✅ 4/4 |
| 自动富化与软回退 | ✅ 1/1 |
| MCP Server(70+ 工具、5 个 prompts、5 个资源、OAuth、Docker) | ✅ 20/20 |
| 测试 | 🔜 0/4 延期 |
## MCP 服务器
SheetStorm 包含一个完全可操作的 **Model Context Protocol (MCP) server**,使 AI 助手(Claude、Cursor、自定义 agent)能够通过自然语言与 incident response 平台进行交互。
```
AI Client ◄──── MCP Protocol (SSE) ────► SheetStorm MCP Server ──── REST + JWT ────► Flask Backend
```
### 能力
| Module | Tools | Description |
|--------|-------|-------------|
| **auth** | 3 | 登录、登出、会话信息 |
| **incidents** | 7 | 完整的事件 CRUD + 搜索 |
| **timeline** | 6 | 时间线事件 + MITRE 战术/技术查询 |
| **tasks** | 7 | 带评论的任务管理 |
| **assets** | 8 | 受损主机 + 账户 |
| **iocs** | 9 | 网络 IOC、主机 IOC、恶意软件 |
| **artifacts** | 5 | 证据上传/下载 + 保管链 |
| **attack_graph** | 9 | 节点、边、自动生成 |
| **reports** | 3 | PDF + AI 报告生成 |
| **admin** | 5 | 用户、通知、审计日志 |
| **case_notes** | 5 | 案例笔记 CRUD |
| **threat_intel** | 7 | VT, MISP, CVE, IP/域名/邮箱, 勒索软件 |
| **knowledge_base** | 4 | LOLBAS, 事件 ID, D3FEND |
| **defang** | 2 | IOC 防护/还原 |
| **prompts** | 5 | IR 分析模板 |
| **resources** | 5 | 参考数据(阶段、严重程度、MITRE) |
**传输:** SSE 于端口 8811 · **认证:** OAuth 2.1 搭配 Redis 支持的客户端持久化 · **运行时:** Python 3.12 + FastMCP SDK
## 路线图
| Priority | Feature | Status |
|----------|---------|--------|
| P0 | OAuth 流程上的 MFA 强制执行(GitHub/Supabase) | ✅ 已完成 |
| P0 | 基于团队的事件访问限制 | ✅ 已完成 |
| P0 | 角色管理管理员页面 | ✅ 已完成 |
| P1 | 22 种集成类型,含测试按钮与 DB 优先配置 | ✅ 已完成 |
| P1 | 案例笔记与每个事件的杀伤链阶段 | ✅ 已完成 |
| P1 | VirusTotal 查询 & MISP IOC 推送 | ✅ 已完成 |
| P1 | 用于 AI 助手集成的 MCP Server(70+ 工具) | ✅ 已完成 |
| P1 | 测试套件 — pytest · Vitest · Playwright | 🔜 计划中 |
| P1 | CI/CD — GitHub Actions | 🔜 计划中 |
| P1 | CVE 查询(CISA KEV + NVD) | ✅ 已完成 |
| P1 | IP / 域名 / 邮箱信誉查询 | ✅ 已完成 |
| P1 | 用于安全共享的 IOC defanging | ✅ 已完成 |
| P1 | 勒索软件受害者查询(ransomware.live) | ✅ 已完成 |
| P1 | LOLBAS 知识库 | ✅ 已完成 |
| P1 | Windows 事件 ID 知识库 | ✅ 已完成 |
| P1 | MITRE D3FEND 防御对策映射 | ✅ 已完成 |
| P1 | 带软回退的自动富化服务 | ✅ 已完成 |
| P2 | MITRE ATT&CK 导航器热力图 | 🔜 计划中 |
| P2 | 横向移动图谱可视化 | 🔜 计划中 |
| P2 | 事件模板(勒索软件、钓鱼、内部威胁) | 🔜 计划中 |
| P3 | VERIS 事件分类与报告 | 🔜 计划中 |
| P3 | 仪表板分析与 MTTR 图表 | 🔜 计划中 |
| P3 | STIX 2.1 导出 | 🔜 计划中 |
| P3 | 活动分布图 | 🔜 计划中 |
## 文档
| Doc | Description |
|-----|-------------|
| [架构](docs/architecture.md) | 系统设计、技术栈、项目结构、设计系统 |
| [API 参考](docs/api-reference.md) | 所有 REST 端点及其方法和描述 |
| [WebSocket 事件](docs/websocket-events.md) | Socket.IO 事件负载(客户端 ↔ 服务端) |
| [配置](docs/configuration.md) | 环境变量和数据库模式 |
| [开发](docs/development.md) | 设置指南、常用命令、迁移工作流 |
| [MCP Server 路线图](docs/mcp-server-roadmap.md) | MCP Server 工具、prompts、资源及未来阶段 |
## 许可证
MIT — 详见 [LICENSE](LICENSE)。
标签:API 集成, CISA KEV, CISA项目, CVE 查询, Go语言工具, GPT, GPT-4, IOC 管理, MFA, MITRE ATT&CK 映射, OIDC, PDF 生成, PE 加载器, Python, RBAC 权限控制, React, SAML, SOAR, SSO, Syscalls, TypeScript, 事件响应平台, 人工智能报告, 单点登录, 多因素认证, 威胁情报, 安全事件管理, 安全团队, 安全工作流, 安全插件, 实时协作, 审计日志, 库, 应急响应, 开发者工具, 搜索引擎查询, 攻击图谱, 数字取证, 无后门, 替代 Excel, 测试用例, 漏洞管理, 自动化报告, 自动化攻击, 自动化脚本, 证据保全, 请求拦截, 责任链, 逆向工具