fnti888/Security-Operations-Platform

GitHub: fnti888/Security-Operations-Platform

开源的企业级安全运营中心平台,集成事件管理、威胁情报、数字取证、漏洞扫描等核心SOC功能,采用现代Web技术栈构建。

Stars: 0 | Forks: 0

# Defense Terminal - 安全运营平台 ![License](https://img.shields.io/badge/license-MIT-blue.svg) ![Version](https://img.shields.io/badge/version-1.0.0-green.svg) ![React](https://img.shields.io/badge/React-18.3.1-61dafb.svg) ![TypeScript](https://img.shields.io/badge/TypeScript-5.5.3-3178c6.svg) ![Supabase](https://img.shields.io/badge/Supabase-Powered-3ecf8e.svg) 一个综合性的安全运营中心 (SOC) 平台,用于事件管理、威胁情报、取证分析和安全监控。 ## 在线演示 **[查看在线应用](https://your-deployment-url.netlify.app)** ## 截图 ### 仪表板概览 ![Dashboard](https://raw.githubusercontent.com/fnti888/Security-Operations-Platform/main/docs/screenshots/dashboard.png) *具备威胁情报源和事件跟踪功能的实时安全运营仪表板* ### 事件管理 ![Incidents](https://raw.githubusercontent.com/fnti888/Security-Operations-Platform/main/docs/screenshots/incidents.png) *基于 MITRE ATT&CK 映射的事件跟踪和调查工作流* ### 威胁情报 ![Threats](https://raw.githubusercontent.com/fnti888/Security-Operations-Platform/main/docs/screenshots/threats.png) *地理威胁可视化和攻击模式分析* ### 取证工具 ![Forensics](https://raw.githubusercontent.com/fnti888/Security-Operations-Platform/main/docs/screenshots/forensics.png) *包含网络监控和证据管理的数字取证套件* ## 快速开始 5 分钟内启动并运行: ``` # Clone repository git clone https://github.com/fnti888/Security-Operations-Platform.git cd Security-Operations-Platform # 安装依赖 npm install # Copy environment template cp .env.example .env # Edit .env with your Supabase credentials (see Setup section below) # Start development server npm run dev ``` 访问 `http://localhost:5173` 并创建您的第一个账户以探索该平台。 ## 目录 - [概述](#overview) - [截图](#screenshots) - [快速开始](#quick-start) - [核心功能](#core-features) - [技术架构](#technical-architecture) - [安装说明](#installation) - [项目结构](#project-structure) - [数据库模式](#database-schema) - [API 文档](#api-documentation) - [安全注意事项](#security-considerations) - [部署指南](#deployment) - [分类功能](#features-by-category) - [路线图](#roadmap) - [贡献指南](#contributing) - [常见问题](#faq) - [许可证](#license) - [更新日志](#changelog) ## 概述 Defense Terminal 是一个功能齐全的 SOC 平台,采用现代 Web 技术构建,展示了企业级安全运营能力,包括实时威胁监控、事件响应工作流、数字取证工具和安全自动化。 ### 为什么选择 Defense Terminal? | 功能特性 | Defense Terminal | 传统 SOC 平台 | |---------|-----------------|---------------------------| | **部署** | Serverless,即时设置 | 需要复杂的基础设施 | | **成本** | 提供免费层级,按需付费 | 高昂的许可费用 | | **实时性** | 内置 WebSocket 订阅 | 通常需要额外工具 | | **可定制性** | 开源,完全可定制 | 供应商锁定,灵活性有限 | | **学习曲线** | 现代 Web 技术栈 (React/TypeScript) | 专有语言/框架 | | **集成** | RESTful API,18 个边缘函数 | 有限的 API 访问 | | **安全性** | 345+ RLS 策略,端到端加密 | 因供应商而异 | | **更新** | 社区驱动,快速迭代 | 供应商发布周期缓慢 | ## 核心功能 ### 安全运营 - **事件管理** - 结合 MITRE ATT&CK 框架集成,跟踪、调查和管理安全事件 - **威胁情报** - 具有地理可视化和攻击模式分析的实时威胁源 - **安全分析** - 安全运营的指标、趋势和 KPI 跟踪 - **实时监控** - 实时安全事件可视化和告警 ### 取证与调查 - **网络监控器** - 数据包捕获和协议分析 - **系统监控器** - 进程、文件系统和注册表监控 - **时间线分析** - 事件关联和重构 - **内存取证** - RAM 分析和工件提取 - **证据柜** - 具有加密验证的监管链和证据管理 ### 安全工具套件 - **网络扫描器** - 端口扫描、服务发现和网络映射 - **漏洞扫描器** - 具有 CVE 跟踪和严重性评分的安全评估 - **SSL/TLS 分析器** - 证书验证和加密配置分析 - **数据包分析器** - 深度包检测和协议分析 - **WHOIS 查询** - 域名和 IP 调查及威胁情报增强 - **IP 信誉评分** - 多源威胁情报聚合与评分 ### 专业发展 - **安全作品集** - 记录安全分析工作、调查和研究 - **事件响应剧本** - 常见安全场景的结构化程序 - **技能实验室** - 跟踪工具熟练度、认证和培训进度 ### 企业功能 - **自动化中心** - 工作流自动化和编排 - **威胁狩猎** - 主动威胁检测和假设驱动的调查 - **智能告警** - AI 增强的告警关联和降噪 - **异常检测** - 行为分析和偏差检测 - **安全态势仪表板** - 组织安全指标的集中视图 ## 技术架构 ### 技术栈 - **前端**: React 18 with TypeScript - **样式**: Tailwind CSS - **后端**: Supabase (PostgreSQL, Authentication, Real-time, Edge Functions) - **数据库**: PostgreSQL with Row Level Security (RLS) - **实时**: Supabase Real-time subscriptions - **认证**: Supabase Auth with email/password - **构建工具**: Vite - **图标**: Lucide React ### 安全特性 - 跨越 47 个数据库迁移的 345+ 行级安全 (RLS) 策略 - 具有适当搜索路径隔离的函数安全性 - 基于角色的访问控制 (管理员/分析师/查看者) - 用户注册时自动创建配置文件 - 带有身份验证检查的实时数据同步 - 全面的审计日志记录 ### 架构亮点 - 具有关注点分离的组件化架构 - 用于实时威胁监控的实时数据流 - 用于安全运营的 Serverless 边缘函数 - 使用 TypeScript 的类型安全开发 - 响应式设计,支持桌面和移动端 有关详细的架构文档,请参阅 [ARCHITECTURE.md](docs/ARCHITECTURE.md)。 ## 安装说明 ### 前置条件 - Node.js 18 或更高版本 - npm 或 yarn - Supabase 账户 ### 设置步骤 1. **克隆仓库** git clone https://github.com/fnti888/Security-Operations-Platform.git cd Security-Operations-Platform 2. **安装依赖项** npm install 3. **配置环境变量** 复制示例环境文件并添加您的 Supabase 凭证: cp .env.example .env 然后使用您的 Supabase 项目详细信息编辑 `.env`: VITE_SUPABASE_URL=your_supabase_project_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key 获取您的 Supabase 凭证: - 在 [supabase.com](https://supabase.com) 创建一个免费账户 - 创建一个新项目 - 在以下位置查找凭证:Settings → API 4. **运行开发服务器** npm run dev 5. **构建生产版本** npm run build ## 项目结构 ``` src/ ├── components/ │ ├── Dashboard/ # Main SOC dashboard │ ├── Incidents/ # Incident management │ ├── Threats/ # Threat intelligence │ ├── Analytics/ # Security analytics │ ├── Forensics/ # Forensic tools suite │ ├── NetworkScanner/ # Network scanning │ ├── VulnerabilityScanner/ # Vulnerability assessment │ ├── SSLAnalyzer/ # SSL/TLS analysis │ ├── PacketAnalyzer/ # Packet analysis │ ├── WhoisLookup/ # WHOIS investigation │ ├── IPScore/ # IP reputation │ ├── Portfolio/ # Security portfolio │ ├── Playbooks/ # IR playbooks │ ├── Skills/ # Skills tracking │ ├── Automation/ # Workflow automation │ ├── ThreatHunting/ # Threat hunting │ ├── Alerts/ # Smart alerts │ └── SecurityPosture/ # Security dashboard ├── contexts/ │ ├── AuthContext.tsx # Authentication state │ └── ThemeContext.tsx # Theme management ├── lib/ │ ├── supabase.ts # Supabase client │ ├── mitreMappings.ts # MITRE ATT&CK data │ ├── activityTracking.ts # User activity tracking │ ├── realtime.ts # Real-time subscriptions │ └── exportUtils.ts # Data export utilities └── main.tsx # Application entry point supabase/ ├── migrations/ # Database schema migrations (47 files) └── functions/ # Edge functions (18 functions) ├── simulate-attacks/ # Attack simulation ├── threat-intelligence/ # Threat feed ingestion ├── network-scanner/ # Network scanning ├── vulnerability-scanner/ # Vulnerability scanning ├── ssl-tls-analyzer/ # SSL/TLS analysis ├── whois-lookup/ # WHOIS queries ├── ip-score-lookup/ # IP reputation ├── packet-capture/ # Packet analysis ├── correlation-engine/ # Event correlation ├── anomaly-detector/ # Anomaly detection ├── threat-enrichment/ # Threat enrichment ├── threat-hunter/ # Threat hunting ├── alert-processor/ # Alert processing ├── workflow-executor/ # Workflow automation ├── audit-logger/ # Audit logging ├── compliance-reporter/ # Compliance reporting ├── integration-sync/ # External integrations └── scheduled-scanner/ # Scheduled scanning ``` ## 数据库模式 该平台使用 PostgreSQL,具有全面的模式,用于: - 用户配置文件和身份验证 - 事件管理和跟踪 - 威胁情报数据 - 取证证据和工件 - 网络扫描结果 - 漏洞评估 - SSL/TLS 分析结果 - 安全作品集条目 - 事件响应剧本和程序 - 技能和认证跟踪 - 自动化工作流 - 告警关联数据 - 审计日志 有关完整的模式定义,请参阅 `/supabase/migrations/`。 ### 迁移概览 | 迁移类别 | 数量 | 用途 | |-------------------|-------|---------| | 核心模式 | 5 | 用户配置文件、事件、威胁 | | 取证 | 5 | 证据、时间线、监控 | | 扫描工具 | 10 | 网络、漏洞、SSL/TLS 分析 | | 高级功能 | 15 | 作品集、自动化、告警 | | 安全加固 | 12 | RLS 策略、管理员角色、访问控制 | | **总计** | **47** | **完整的 SOC 平台** | ## 安全注意事项 ### 数据库安全 - 所有表均受行级安全 (RLS) 保护 - 345+ 项安全策略强制执行访问控制 - 具有隔离搜索路径的函数安全性 - 系统表上的服务角色限制 ### 应用安全 - 所有敏感操作都需要身份验证 - 基于角色的访问控制 - 安全的会话管理 - XSS 和注入保护 - 边缘函数上的 CORS 配置正确 ### 数据保护 - 到数据库的加密连接 - 取证证据的监管链 - 证据完整性的加密验证 - 所有安全相关操作的审计日志记录 有关详细的安全信息,请参阅 [SECURITY.md](SECURITY.md)。 ## 部署指南 有关 Netlify 和 Vercel 的详细部署说明,请参阅 [DEPLOYMENT.md](./DEPLOYMENT.md)。 快速部署到 Netlify: ``` npm run build # Deploy the /dist directory ``` ## 分类功能 ### 事件响应 - 事件创建和跟踪 - MITRE ATT&CK 技术映射 - 严重性分类和优先级排序 - 状态工作流 (新建 → 调查中 → 已遏制 → 已解决) - 证据链接和关联 - 时间线重构 - 事件响应剧本 ### 威胁情报 - 实时威胁源可视化 - 地理攻击映射 - IP 信誉评分 - 域名和 URL 分析 - 威胁行为者跟踪 - IOC (入侵指标) 管理 - 国家/地区级别的威胁统计 ### 数字取证 - 网络数据包捕获和分析 - 进程监控和分析 - 文件系统时间线重构 - 内存转储分析 - 注册表分析 - 浏览器工件提取 - 电子邮件头分析 - 具有监管链的证据保全 ### 安全评估 - 网络端口扫描 - 服务版本检测 - 漏洞识别 - CVE 数据库集成 - SSL/TLS 配置分析 - 证书过期监控 - 安全态势评分 ### 自动化与编排 - 剧本自动化 - 工作流创建和执行 - 告警关联和丰富 - 自动化威胁响应 - 与外部工具集成 - 计划安全任务 ## API 文档 该平台包含 18 个 serverless 边缘函数,提供全面的安全运营 API。 ### 可用端点 #### 安全运营 - **`POST /simulate-attacks`** - 生成用于测试和训练的模拟威胁数据 - **`POST /threat-intelligence`** - 获取和处理威胁情报源 - **`POST /correlation-engine`** - 关联多个来源的安全事件 - **`POST /anomaly-detector`** - 检测行为异常和偏差 - **`POST /alert-processor`** - 处理和丰富安全告警 #### 评估与扫描 - **`POST /network-scanner`** - 执行网络端口扫描和服务发现 - **`POST /vulnerability-scanner`** - 执行带有 CVE 映射的漏洞评估 - **`POST /ssl-tls-analyzer`** - 分析 SSL/TLS 证书和配置 - **`POST /packet-capture`** - 捕获和分析网络数据包 - **`POST /scheduled-scanner`** - 运行计划安全扫描 #### 威胁情报与调查 - **`POST /whois-lookup`** - 查询域名和 IP 的 WHOIS 数据 - **`POST /ip-score-lookup`** - 从多个来源获取 IP 信誉评分 - **`POST /threat-enrichment`** - 用外部情报丰富威胁指标 - **`POST /threat-hunter`** - 执行威胁狩猎查询和调查 #### 自动化与集成 - **`POST /workflow-executor`** - 执行自动化安全工作流 - **`POST /integration-sync`** - 与外部安全工具同步数据 - **`POST /audit-logger`** - 记录安全审计事件 - **`POST /compliance-reporter`** - 生成合规性报告 ### 示例 API 调用 ``` const response = await fetch( `${SUPABASE_URL}/functions/v1/ip-score-lookup`, { method: 'POST', headers: { 'Authorization': `Bearer ${SUPABASE_ANON_KEY}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ ip: '8.8.8.8' }) } ); const result = await response.json(); console.log(result.reputation_score); ``` ### 身份验证 所有边缘函数都需要 Supabase 身份验证。请在 Authorization 头中包含您的 anon key 或用户 JWT token。 ### 速率限制 边缘函数受 Supabase 速率限制的约束。企业版计划为生产工作负载提供更高的限制。 有关详细的 API 文档和模式,请参阅 [API 参考指南](docs/API.md)。 ## 献指南 欢迎贡献!本项目遵循标准的开源贡献指南。 ### 如何贡献 1. Fork 本仓库 2. 创建一个功能分支 (`git checkout -b feature/amazing-feature`) 3. 提交您的更改 (`git commit -m 'Add amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 打开一个 Pull Request ### 开发指南 - 遵循现有的代码风格和约定 - 为新功能添加测试 - 根据需要更新文档 - 在提交前确保所有测试通过 - 遵循安全最佳实践 有关详细的贡献指南,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。 ## 路线图 ### 已完成 ✅ - [x] 核心事件管理系统 - [x] 实时威胁情报源 - [x] 数字取证工具包 - [x] 网络和漏洞扫描 - [x] 自动化和工作流引擎 - [x] 安全作品集管理 - [x] 行级安全 (345+ 策略) - [x] 18 个 serverless 边缘函数 - [x] MITRE ATT&CK 框架集成 ### 进行中 🚧 - [ ] 基于机器学习的异常检测 - [ ] 高级威胁狩猎查询 - [ ] 移动应用 - [ ] 增强的报告和仪表板 ### 计划中 📋 - [ ] GraphQL API 层 - [ ] 针对 MSP 的多租户支持 - [ ] 集成市场 - [ ] SOAR 剧本库扩展 - [ ] 威胁情报共享 (STIX/TAXII) - [ ] Kubernetes 部署选项 - [ ] 高级 AI/ML 威胁检测 ### 社区请求 💡 有功能请求?[提交一个 issue](https://github.com/fnti888/Security-Operations-Platform/issues) 或发起一个 [讨论](https://github.com/fnti888/Security-Operations-Platform/discussions)! ## 许可证 MIT License - 详情请参阅 [LICENSE](./LICENSE) ## 常见问题 ### 一般问题 **问:这个是免费的吗?** 答:是的,Defense Terminal 是开源的 (MIT License)。Supabase 后端有宽裕的免费层级,只有在超出这些限制进行扩展时才需要付费。 **问:我可以在生产环境中使用吗?** 答:可以,但需要经过适当的加固和合规控制。该平台包含企业级安全功能,但在生产部署前请审查安全注意事项并进行您自己的安全审计。 **问:这需要编码知识吗?** 答:基本设置需要极少量的编码(复制/粘贴环境变量)。定制化需要 React/TypeScript 知识。 **问:设置需要多长时间?** 答:初始设置需要 5-10 分钟。完全定制取决于您的需求。 ### 技术问题 **问:我可以自托管吗?** 答:前端可以在任何地方自托管。后端使用 Supabase,它为企业客户提供自托管选项。 **问:支持的最大数据量是多少?** 答:Supabase 可以高效处理数百万行数据。对于超大规模部署(每天 1000 万+ 事件),请考虑使用企业版或数据归档策略。 **问:我可以与我现有的 SIEM 集成吗?** 答:可以,使用 API 端点和边缘函数与 Splunk、Sentinel、QRadar、Elastic 或自定义工具集成。 **问:有带样本数据的演示吗?** 答:有,实时演示包含模拟的安全数据。您也可以运行 `simulate-attacks` 函数来生成测试数据。 ### 安全问题 **问:数据有多安全?** 答:数据在传输 和静态 时均经过加密。345+ RLS 策略强制执行访问控制。所有身份验证均使用行业标准 JWT token。 **问:谁可以访问我的数据?** 答:只有经过身份验证且具有适当权限的用户。RLS 策略确保用户只能看到他们被授权访问的数据。 **问:是否包含审计日志?** 答:是的,全面的审计日志记录跟踪所有安全相关操作,以用于合规和调查。 **问:它支持合规框架吗?** 答:compliance-reporter 函数生成针对 NIST、ISO27001、PCI-DSS、HIPAA 和 GDPR 框架的报告。 ## 技术联系 由 Frank NTI 构建 **LinkedIn**: https://www.linkedin.com/in/frank-nti-/ ## 致谢 - MITRE ATT&CK Framework 提供威胁情报分类法 - Supabase 提供后端基础设施 - React 和 TypeScript 社区 - 安全研究社区 ## 更新日志 有关更改和发布的详细历史记录,请参阅 [CHANGELOG.md](CHANGELOG.md)。 ## 支持本项目 如果您觉得 Defense Terminal 有用: - ⭐ Star 本仓库 - 🐛 报告错误和问题 - 💡 提出新功能建议 - 🔀 提交 pull request - 📢 与安全社区分享 **注意**:该平台专为教育和演示目的而设计。对于生产 SOC 环境,应实施额外的加固、合规控制和 enterprise 集成。
标签:Beacon Object File, CISA项目, Cloudflare, DNS通配符暴力破解, IP 地址批量处理, MITRE ATT&CK, React, SOC平台, Supabase, Syscalls, TypeScript, WSL, 企业安全, 地理可视化, 域环境安全, 威胁情报, 子域名变形, 安全仪表盘, 安全态势感知, 安全插件, 安全编排与自动化, 安全运营中心, 库, 应急响应, 开发者工具, 态势大屏, 插件系统, 数字取证, 测试用例, 网络安全, 网络安全监控, 网络映射, 网络资产管理, 自动化攻击, 自动化脚本, 证据管理, 隐私保护, 驱动开发