jason-allen-oneal/sentry-flow

GitHub: jason-allen-oneal/sentry-flow

一款轻量级社区威胁情报共享平台,提供 IOC 采集、丰富化、评分及 STIX/JSON 格式导出。

Stars: 0 | Forks: 0

# SentryFlow **SentryFlow** 是一个社区驱动的威胁情报共享平台。 它负责收集、规范化、丰富化以及对入侵指标 (IOC) 进行评分,并通过 JSON 和 STIX 2.1 分发精选的数据源 (Feeds)。 项目包含一个 FastAPI 后端和一个现代化的 Next.js 前端,专为研究人员、蓝队和 SOC 设计。 ## ✨ 功能特性 - 🔍 **IOC 采集** – 通过 API 或 UI 提交单个或批量 IOC (CSV/JSON) - 🧩 **规范化与丰富化** – GeoIP (ASN, 国家)、标签、类型解析 - ⚖️ **评分** – 基于规则的精准评分,结合来源信誉、目击记录 (Sightings) 和丰富化命中情况 - 📡 **数据源 (Feeds)** – 导出精选的 JSON 或 STIX 2.1 包(包含指标、目击记录、观测数据、作为报告的情报包) - 🔑 **API 密钥** – 基于角色的访问控制(针对 indicators/feeds 的权限范围) - 📦 **情报包 (Intel Packages)** – 包含 ATT&CK 技术 + 分组 IOC 的迷你威胁报告 - ⚡ **警报** – 针对高置信度 IOC 定义 webhook/email/Discord 警报 - 📊 **指标** – Prometheus `/metrics` + `/health` 端点用于运维监控 - 🌐 **前端** – Next.js (App Router) + Tailwind 提供简洁的 UX:提交表单、指标搜索、情报包浏览器、数据源配置器、密钥管理、警报设置 ## 📂 Monorepo 结构 ``` sentry-flow/ ├── backend/ # FastAPI + SQLAlchemy backend │ └── app/ │ ├── lib/ # Database, models, schemas, scoring, enrichment │ ├── routes/ # Indicators, feeds, packages, auth, alerts │ └── main.py # FastAPI entrypoint │ ├── frontend/ # Next.js (App Router) + Tailwind frontend │ └── app/ │ ├── submit/ # IOC submission form │ ├── indicators/ # Browse/search indicators │ ├── packages/ # Intel packages view │ ├── feeds/ # Feed configurator │ ├── apikeys/ # API key management │ └── alerts/ # Alerts management │ ├── .gitignore # Monorepo ignores (Python, Node, env, logs) ├── README.md # This file └── docker-compose.yml (planned) # Containerized deploy ``` ## 🚀 快速开始 ## 后端 (FastAPI) ``` cd backend python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt PYTHONPATH=backend uvicorn app.main:app --reload ``` 运行于 http://127.0.0.1:8000 端点: /indicators – 提交/批量上传 IOC /feeds – JSON 数据源 /feeds/stix – STIX 2.1 包 /packages – 情报包 /apikeys/create – 生成 API 密钥 /health + /metrics – 监控 ## 前端 (Next.js) ``` cd frontend npm install npm run dev ``` 运行于 http://localhost:3000 页面: /submit – IOC 提交表单 /indicators – 浏览/搜索表格 /packages – 查看情报包 /feeds – 生成 JSON/STIX 数据源 URL /apikeys – 创建/管理 API 密钥 /alerts – 定义警报规则 ## 🔒 认证 所有提交和数据源端点都需要 API 密钥 (X-API-Key header)。 密钥通过 /apikeys/create?owner= 创建,并可指定权限范围: ``` indicators:write feeds:read ``` 前端将密钥存储在 localStorage 中用于 API 调用。 ## 🛠 路线图 [x] IOC 采集 + 丰富化 [x] 评分 + 去重 [x] JSON + STIX 数据源 [x] 情报包 → STIX 报告 [x] 警报 (email/webhook/discord) [x] Prometheus 指标 + 健康检查 [x] Next.js 前端 (App Router) [ ] Docker Compose 一键部署 [ ] TAXII 2.1 服务器用于企业互操作 [ ] 基础设施复用的图形视图 [ ] ML 辅助的 IOC 聚类 ## 📜 许可证 Apache 2.0(推荐用于推广采用) 或 AGPL-3.0(如果您希望强制要求开源贡献)。 ## 🌊 为什么选择 SentryFlow? MISP 功能强大但过于臃肿。商业 TIP(威胁情报平台)价格昂贵。 SentryFlow 旨在做到: 轻量级 – 合理的默认配置,简单的设置,快速的 API 易用 – 整洁的前端,移动端友好的提交界面 精准 – 固执己见的评分 → 减少垃圾情报 开放 – JSON + STIX 数据源,Prometheus 指标,可扩展的丰富化 **把它看作是轻量版的 MISP (MISP-lite),但拥有现代化的 UX 且不搞虚的。**
标签:API安全, AV绕过, CISA项目, FastAPI, Full Stack, Go语言工具, HTTP/HTTPS抓包, IOC共享, IP 地址批量处理, JSON输出, Python, SOC工具, STIX, Typescript, 信标管理, 威胁情报, 安全运营, 开发者工具, 态势感知, 情报源, 扫描框架, 指标提取, 无后门, 漏洞发现, 自动化响应, 自定义请求头, 逆向工具