dev0558/sentinel-tip

GitHub: dev0558/sentinel-tip

开源全栈威胁情报平台,聚合多源 IOC 并通过丰富化和评分算法辅助安全团队进行威胁分析与狩猎。

Stars: 4 | Forks: 1

``` ███████╗███████╗███╗ ██╗████████╗██╗███╗ ██╗███████╗██╗ ██╔════╝██╔════╝████╗ ██║╚══██╔══╝██║████╗ ██║██╔════╝██║ ███████╗█████╗ ██╔██╗ ██║ ██║ ██║██╔██╗ ██║█████╗ ██║ ╚════██║██╔══╝ ██║╚═╝ ██║ ██║ ██║██║╚═╝ ██║██╔══╝ ██║ ███████║███████╗██║ ╚████║ ██║ ██║██║ ╚████║███████╗███████╗ ╚══════╝╚══════╝╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═══╝╚══════╝╚══════╝ ``` **开源威胁情报平台,从多个源聚合、丰富并评分 IOC。** ![Next.js](https://img.shields.io/badge/Next.js-14-black?logo=next.js) ![FastAPI](https://img.shields.io/badge/FastAPI-0.109-009688?logo=fastapi) ![PostgreSQL](https://img.shields.io/badge/PostgreSQL-16-336791?logo=postgresql) ![Redis](https://img.shields.io/badge/Redis-7-DC382D?logo=redis) ![Docker](https://img.shields.io/badge/Docker-Compose-2496ED?logo=docker) ![TypeScript](https://img.shields.io/badge/TypeScript-5-3178C6?logo=typescript) ![Python](https://img.shields.io/badge/Python-3.11-3776AB?logo=python) ![License](https://img.shields.io/badge/License-MIT-green) SENTINEL 是一个生产级的全栈威胁情报平台 (TIP),专为 SOC 分析师、威胁猎手和网络安全专业人员设计。它从 10 多个开源威胁源聚合失陷指标 (IOC),利用 WHOIS/DNS/GeoIP/Shodan 数据对其进行丰富,使用加权算法计算综合威胁评分,将指标映射到 MITRE ATT&CK 框架,并通过使用 Next.js 14 和 TypeScript 构建的战术深色主题 SOC 仪表板呈现所有内容。 ## 功能 | Feature | Status | |---------|--------| | 多源 IOC 获取(10 个连接器) | Implemented | | 支持高级过滤的 IOC 搜索 | Implemented | | 综合威胁评分 (0-100) | Implemented | | IOC 丰富(WHOIS, DNS, GeoIP) | Implemented | | MITRE ATT&CK 热力图矩阵 | Implemented | | 带有统计数据的实时仪表板 | Implemented | | Feed 健康监控 | Implemented | | IOC 关联分析 | Implemented | | 威胁狩猎工作区 | Implemented | | 报告生成(每日简报 + 自定义) | Implemented | | STIX 2.1 / CSV / JSON 导出 | Implemented | | Celery 后台任务处理 | Implemented | | Docker 单命令部署 | Implemented | | 地理威胁分布 | Implemented | ## 架构 ``` FRONTEND (Next.js 14) Dashboard | IOC Search | Feed Manager | Reports | ATT&CK Map | REST API | BACKEND (FastAPI) Feed Ingestion | Enrichment Engine | Scoring | Correlation | | | | PostgreSQL Redis Cache Celery External + indexes + pub/sub Workers Threat Feeds ``` ## 技术栈 | Layer | Technology | |-------|-----------| | Frontend | Next.js 14, TypeScript, Tailwind CSS, Recharts, D3.js | | Backend | FastAPI, Python 3.11, SQLAlchemy, Pydantic | | Database | PostgreSQL 16 with JSONB and GIN indexes | | Cache | Redis 7 | | Task Queue | Celery with Redis broker | | Containerization | Docker + Docker Compose | ## 快速开始 ``` # 克隆 repository git clone https://github.com/dev0558/sentinel-tip.git cd sentinel-tip # 复制 environment file cp .env.example .env # 启动所有服务 docker-compose up -d # 填充 feed sources docker-compose exec backend python /app/../scripts/seed_feeds.py # 加载 MITRE ATT&CK 数据 docker-compose exec backend python /app/../scripts/seed_mitre.py # 生成 sample data(可选,用于演示) docker-compose exec backend python /app/../scripts/generate_sample_data.py ``` 访问应用程序: - **仪表板**: http://localhost:3000 - **API 文档**: http://localhost:8000/docs - **API ReDoc**: http://localhost:8000/redoc ## 环境变量 | Variable | Description | Required | |----------|-------------|----------| | `DATABASE_URL` | PostgreSQL connection string | Yes | | `REDIS_URL` | Redis connection string | Yes | | `SECRET_KEY` | Application secret key | Yes | | `OTX_API_KEY` | AlienVault OTX API key | No | | `ABUSEIPDB_API_KEY` | AbuseIPDB API key | No | | `VT_API_KEY` | VirusTotal API key | No | | `SHODAN_API_KEY` | Shodan API key | No | | `PHISHTANK_API_KEY` | PhishTank API key | No | | `GEOIP_DB_PATH` | Path to MaxMind GeoLite2 DB | No | 所有 Feed API 密钥均为可选。该平台支持 6 个无需 API 密钥的免费源(URLhaus、ThreatFox、MalwareBazaar、Feodo Tracker、Blocklist.de、Emerging Threats)。 ## API 文档 FastAPI 自动生成交互式 API 文档: - **Swagger UI**: http://localhost:8000/docs - **ReDoc**: http://localhost:8000/redoc ### 关键端点 ``` GET /api/v1/iocs # List IOCs (paginated) GET /api/v1/iocs/:id # IOC detail with enrichment POST /api/v1/iocs/search # Advanced search POST /api/v1/iocs/bulk # Bulk IOC lookup POST /api/v1/iocs/export # Export (STIX/CSV/JSON) GET /api/v1/feeds # List feeds POST /api/v1/feeds/:id/sync # Trigger feed sync GET /api/v1/dashboard/stats # Dashboard statistics GET /api/v1/attack/matrix # ATT&CK matrix GET /api/v1/attack/heatmap # ATT&CK heatmap POST /api/v1/reports/generate # Generate report GET /api/v1/reports/daily-brief # Daily threat brief ``` ## 威胁源 | Feed | Type | Free | IOC Types | |------|------|------|-----------| | URLhaus | CSV | Yes (no key) | URL, Domain | | ThreatFox | API | Yes (no key) | IP, Domain, URL, Hash | | MalwareBazaar | API | Yes (no key) | Hash | | Feodo Tracker | CSV | Yes (no key) | IP | | Blocklist.de | CSV | Yes (no key) | IP | | Emerging Threats | CSV | Yes (no key) | IP | | AlienVault OTX | API | Yes (API key) | IP, Domain, Hash, URL | | AbuseIPDB | API | Yes (API key) | IP | | PhishTank | API | Yes (API key) | URL | | VirusTotal | API | Yes (API key) | Hash, IP, Domain, URL | ## 评分算法 SENTINEL 使用加权因子计算综合威胁评分 (0-100): ``` Score = Base Reputation (30%) + Source Diversity (20%) + Recency (15%) + Sighting Frequency (15%) + Enrichment Risk (10%) + Context (10%) ``` | Score Range | Category | Color | |-------------|----------|-------| | 76-100 | Critical | Red | | 51-75 | High | Orange | | 26-50 | Medium | Yellow | | 0-25 | Low | Green | ## 开发 ``` # Backend 开发 cd sentinel/backend pip install -r requirements.txt uvicorn app.main:app --reload --port 8000 # Frontend 开发 cd sentinel/frontend npm install npm run dev ``` ## 许可证 本项目根据 MIT 许可证授权。 ## 作者 由 **Bhargav Raj Dutta**, **Taha Nagdawala** & **Uphar** 构建 — 阿联酋迪拜 - Bhargav Raj Dutta — [GitHub](https://github.com/dev0558) | [LinkedIn](https://www.linkedin.com/in/bhargav-raj-dutta-80251a1b4/) - Taha Nagdawala — [GitHub](https://github.com/techtrail42) | [LinkedIn](https://www.linkedin.com/in/taha-nagdawala/) - Uphar Jaiswal — [GitHub](https://github.com/uph3r) | [LinkedIn](https://www.linkedin.com/in/uphar-jaiswal/) 如果你觉得这个项目有用,请在 GitHub 上给它一个 Star!
标签:AV绕过, Cloudflare, DNS 分析, Docker, FastAPI, IOC 聚合, masscan, MITRE ATT&CK, nuclei, PostgreSQL, Python, Redis, TIP, TypeScript, WHOIS 查询, 失陷指标, 威胁情报, 威胁情报平台, 威胁源, 威胁评分, 安全仪表盘, 安全插件, 安全运营中心, 安全防御评估, 开发者工具, 开源安全工具, 搜索引擎查询, 无后门, 测试用例, 生产级, 网络威胁情报, 网络安全, 网络映射, 自动化 enrichment, 自动化攻击, 请求拦截, 逆向工具, 逆向工程平台, 隐私保护