Girlweb/ads-framework-platform

GitHub: Girlweb/ads-framework-platform

基于 Palantir ADS 框架构建的检测工程管理系统,逐步演进为 SOAR 平台,旨在解决 SOC 团队告警疲劳、检测规则缺乏标准化以及事件响应手动化等核心痛点。

Stars: 1 | Forks: 0

# ADS 框架至 SOAR 平台文档 ## 执行摘要 成功设计并实现了一个 **检测工程管理系统**,该系统随后演进为一个 **安全编排、自动化与响应 (SOAR) 平台**,旨在解决现代安全运营中心 (SOC) 面临的关键挑战。 ### 问题陈述 SOC 团队面临: - **告警疲劳:** 高达 95% 的误报率让分析师不堪重负 - **检测质量不一致:** 缺乏标准化的检测规则开发流程 - **手动事件响应:** 耗时且容易出错的手动工作流 - **工具碎片化:** 15-20 个安全工具缺乏统一管理 - **人才短缺:** 网络安全专业人员不足以应对庞大的工作量 ### 提供的解决方案 结合了以下功能的企业级平台: 1. **结构化检测工程** (Palantir 的 ADS 框架) 2. **多工具集成** (通用连接器架构) 3. **自动化 Playbook 执行** (事件响应自动化) 4. **威胁情报编排** (多源 TI 聚合) 5. **机器学习驱动的分析** (告警优先级排序与评分) ## 技术架构 ### 技术栈 ``` ┌─────────────────────────────────────────────────────────────┐ │ FRONTEND (Planned) │ │ React + TypeScript + Tailwind CSS │ └─────────────────────────────────────────────────────────────┘ ↕ REST API ┌─────────────────────────────────────────────────────────────┐ │ BACKEND (Implemented) │ │ │ │ Framework: FastAPI (Python 3.12) │ │ Authentication: JWT Tokens + Bcrypt │ │ API Documentation: OpenAPI/Swagger │ │ │ │ Components: │ │ ├── Detection Rule Management │ │ ├── User Authentication & Authorization │ │ ├── Integration Framework (Connectors) │ │ ├── Alert Management System │ │ └── Playbook Data Models │ └─────────────────────────────────────────────────────────────┘ ↕ SQLAlchemy ORM ┌─────────────────────────────────────────────────────────────┐ │ DATABASE LAYER │ │ │ │ PostgreSQL 15: │ │ ├── Users & Authentication │ │ ├── Detection Rules (ADS Framework) │ │ ├── Security Tool Integrations │ │ ├── Alerts & Incidents │ │ ├── Playbooks & Executions │ │ └── Validation Tests │ │ │ │ Redis 7: │ │ └── Caching & Task Queue │ └─────────────────────────────────────────────────────────────┘ ``` ### 关键技术 | 层级 | 技术 | 版本 | 用途 | |-------|-----------|---------|---------| | **后端 (Backend)** | FastAPI | 0.104.1 | 高性能 API 框架 | | **数据库 (Database)** | PostgreSQL | 15 | 关系型数据存储 | | **缓存 (Cache)** | Redis | 7 | 会话管理,任务队列 | | **ORM** | SQLAlchemy | 2.0.23 | 数据库抽象 | | **认证 (Auth)** | JWT + Bcrypt | 最新版 | 安全身份验证 | | **机器学习/分析 (ML/Analytics)** | Scikit-learn | 1.7.2 | 告警优先级排序 | | **数据处理 (Data Processing)** | Pandas | 2.3.3 | 数据分析 | | **异步任务 (Async Tasks)** | Celery | 5.3.4 | 后台作业处理 | | **容器 (Container)** | Docker | 29.1.0 | 部署与隔离 | ## 快速开始 ### 前置条件 - Ubuntu 22.04+ LTS 或 WSL2 - Python 3.12+ - Docker & Docker Compose - Git ### 安装 ``` # 1. Clone repository git clone https://github.com/Girlweb/ads-framework-platform.git cd ads-framework-platform # 2. Configure environment cp .env.example .env # Edit .env with your settings # 3. Start infrastructure docker compose up -d database redis # 4. Install dependencies python3 -m venv venv source venv/bin/activate pip install -r backend/requirements.txt pip install -r backend/requirements-soar.txt # 5. Run application cd backend uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload # 6. Access API # Docs: http://localhost:8000/docs # Health: http://localhost:8000/health ``` ## 功能特性 ### 阶段 1:ADS 框架平台 (已完成) **检测规则管理** - 检测规则的完整 CRUD 操作 - 9 阶段 ADS 框架强制执行 - MITRE ATT&CK 分类 - 检测规则版本控制 - 规则状态跟踪 **认证与授权** - 带有验证的用户注册 - 基于 JWT 的身份验证 - Bcrypt 密码哈希 - 基于角色的访问控制 **API 端点** ``` Authentication: POST /auth/register - User registration POST /auth/login - User login Detection Rules: POST /detection-rules - Create detection rule GET /detection-rules - List all rules GET /detection-rules/{id} - Get specific rule PUT /detection-rules/{id} - Update rule System: GET /health - Health check GET /docs - API documentation ``` ### 阶段 2:SOAR 集成框架 (进行中) **连接器架构** - 用于安全工具集成的基础连接器系统 - Splunk SIEM 连接器 (已实现) - 计划中:Elastic, QRadar, Sentinel, CrowdStrike, Palo Alto **告警管理** - 多源告警接入 - 告警规范化与富化 - 威胁评分 (0-100) - 状态跟踪与分配 **Playbook 系统** (已设计) - 自动化事件响应工作流 - 预构建的 Playbook 模板 - 逐步执行引擎 - 审批工作流集成 ## 数据库 Schema ### 核心数据表 **users** - id (UUID), username, email - hashed_password - is_active, is_admin - created_at **detection_rules** - id (UUID), name, version - current_stage (ADS 枚举) - goal, mitre_tactics, mitre_techniques - strategy_abstract, technical_context - blind_spots, false_positives - validation_steps (JSONB) - priority_level, response_procedures - sigma_rule, splunk_query, elastic_query **integrations** - id, name, integration_type - connector_class, config (JSONB) - is_active, last_sync - created_by (外键) **alerts** - id, external_id, source_integration_id - severity, title, description - raw_data, normalized_data (JSONB) - status, assigned_to - enrichment_data, threat_score - mitre_tactics, mitre_techniques **playbooks** - id, name, description - trigger_conditions, steps (JSONB) - is_active, requires_approval - execution_count, success_rate ## 业务价值 ### 关键指标 | 指标 | 行业基准 | SOAR 目标 | 提升 | |--------|------------------|------------------|-------------| | **误报率** | 95% | 15% | **降低 84%** | | **平均响应时间 (MTTR)** | 4 小时 | 15 分钟 | **快 93%** | | **每日处理告警数** | 500 | 5,000+ | **提升 10 倍** | | **手动任务** | 80% | 20% | **75% 自动化** | | **SOC 效率** | 基线 | 3-4x | **提升 300-400%** | ### 预计成本节省 对于中型组织 (500-1000 名员工): - 节省分析师工时:每年 $120,000 - 避免数据泄露损失:每年 $500,000+ - 工具整合:每年 $50,000 - 更快的响应速度:每年 $200,000 - **总计:每年节省 $870,000+** ## 架构亮点 ### 安全特性 - 带有 30 分钟过期的 JWT 身份验证 - Bcrypt 密码哈希 - CORS 保护 - 速率限制就绪 - API 密钥管理 - 审计日志功能 ### 可扩展性 - 异步请求处理 - 连接池 - Redis 缓存层 - 水平扩展就绪 - Kubernetes 部署准备 - 兼容负载均衡器 ### 集成能力 - 用于所有操作的 RESTful API - 用于实时事件的 Webhook 支持 - 自定义连接器框架 - 多 SIEM 查询转换 - 威胁情报聚合 - MITRE ATT&CK 映射 ## 开发状态 ### 已完成 - [x] 用户认证系统 - [x] 检测规则 CRUD 操作 - [x] ADS 框架数据模型 - [x] 数据库 Schema 设计 - [x] API 文档 - [x] Docker 容器化 - [x] 基础连接器架构 - [x] Splunk 连接器实现 ### 进行中 - [ ] 集成端点调试 - [ ] 额外的 SIEM 连接器 - [ ] Playbook 执行引擎 - [ ] 前端仪表盘 ### 计划中 - [ ] 基于机器学习的告警优先级排序 - [ ] 威胁情报聚合 - [ ] 案例管理系统 - [ ] 实时告警流 - [ ] MITRE ATT&CK 热力图 - [ ] 自动化报告 ## 已知问题 - 集成端点存在 `get_current_user` 的 FastAPI 依赖注入问题 - 临时解决方案:直接数据库操作暂时绕过身份验证 - 修复计划在下一个 Sprint 中进行 ## 项目结构 ``` ads-framework-platform/ ├── README.md ├── .env.example ├── .gitignore ├── docker-compose.yml │ ├── backend/ │ ├── app/ │ │ ├── main.py │ │ ├── api/ │ │ │ └── integrations.py │ │ ├── core/ │ │ │ └── security.py │ │ ├── db/ │ │ │ └── database.py │ │ ├── models/ │ │ │ ├── ads_framework.py │ │ │ └── integrations.py │ │ ├── schemas/ │ │ │ └── ads_schemas.py │ │ └── integrations/ │ │ ├── connector_base.py │ │ └── splunk_connector.py │ ├── requirements.txt │ ├── requirements-soar.txt │ └── Dockerfile │ └── frontend/ (planned) └── src/ ``` ## 展示的技能 **后端开发** - RESTful API 设计 - 异步编程 - 数据库设计与 ORM - 认证与授权 - API 文档 **安全工程** - 检测工程 - MITRE ATT&CK 框架 - 威胁情报 - SIEM 集成 - 事件响应自动化 **软件架构** - 微服务设计 - 连接器模式 - 依赖注入 - 抽象基类 - SOLID 原则 **DevOps** - Docker 容器化 - 环境管理 - CI/CD 概念 - 版本控制 **数据科学** - 机器学习模型 - 特征工程 - 分类算法 - 数据预处理 ## 许可证 本项目基于 MIT 许可证授权。 ## 资源 - **GitHub 仓库:** https://github.com/Girlweb/ads-framework-platform - **API 文档:** http://localhost:8000/docs - **MITRE ATT&CK:** https://attack.mitre.org/ - **Palantir ADS 框架:** https://github.com/palantir/alerting-detection-strategy-framework ## 联系方式 如有问题或合作机会,请在 GitHub 上提交 issue。 **由检测工程师构建,为检测工程师服务** *最后更新:2025 年 11 月 29 日
标签:AMSI绕过, Apex, Palantir ADS, React, REST API, SecOps, SOAR, Syscalls, Tailwind CSS, TI聚合, TypeScript, 事件响应自动化, 云安全架构, 企业级平台, 告警优先级, 告警疲劳, 多工具集成, 威胁情报, 威胁检测, 安全插件, 安全数据融合, 安全运营, 安全运营中心, 开发者工具, 扫描框架, 搜索引擎查询, 机器学习, 测试用例, 网络安全, 网络映射, 自动化剧本, 规则管理, 评分系统, 误报率, 请求拦截, 逆向工具, 通用连接器架构, 隐私保护