deepsikhasingh011-hub/InstantResponsePlaybook

GitHub: deepsikhasingh011-hub/InstantResponsePlaybook

一个基于 Python 和 Flask 构建的 SOC 事件响应自动化平台,通过解析安全日志、关联威胁情报并生成标准化响应 Playbook 来减少安全团队的手动分类工作。

Stars: 0 | Forks: 0

# 即时响应 Playbook ![Python](https://img.shields.io/badge/Python-3.x-blue?logo=python) ![Flask](https://img.shields.io/badge/Framework-Flask-black?logo=flask) ![SQLite](https://img.shields.io/badge/Database-SQLite-blue?logo=sqlite) ![Status](https://img.shields.io/badge/Status-Active%20Development-orange) ## 项目状态 **当前状态:** 正在积极开发中 本项目正在增量开发中,旨在模拟现代安全运营中心 (SOC) 如何调查和响应安全事件。 随着新阶段的完成,本代码仓库会持续更新,这使其既是一个学习项目,也是一个实用的网络安全作品集。 ## 概述 安全运营中心 (SOC) 每天都会从防火墙、终端、IDS/IPS 解决方案、Web 应用、身份验证系统和电子邮件网关生成数千个告警。 手动审查每个告警非常耗时,并且经常会延迟事件响应。 **Instant Response Playbook** 展示了如何通过 Python 结合以下内容,实现多个 SOC 流程的自动化: - 安全日志解析 - 基于规则的事件检测 - 严重性分类 - 威胁情报富化 - MITRE ATT&CK 映射 - 事件追踪 - 响应队列管理 - 自动化 playbook 生成 - 威胁报告 - 仪表盘可视化 本项目采用模块化架构,只需进行极少的更改即可添加额外的检测规则、威胁情报提供商和自动化响应操作。 ## 目标 本项目的主要目标是: - 模拟真实的 SOC 事件响应工作流。 - 自动化重复的安全运营任务。 - 减少手动事件分类。 - 根据严重性确定事件优先级。 - 富化失陷标 indicator of compromise (IOC)。 - 通过仪表盘提高分析师的可见性。 - 生成标准化的响应 playbook。 - 构建可扩展、模块化的网络安全自动化平台。 ## 当前功能 ✔ 多源日志解析 ✔ 基于规则的事件检测 ✔ 严重性分类 ✔ MITRE ATT&CK 映射 ✔ AbuseIPDB 威胁情报集成 ✔ SQLite 事件数据库 ✔ 响应队列管理 ✔ 自动化 playbook 生成 ✔ 威胁报告生成 ✔ Flask 仪表盘 ✔ 模块化 Python 架构 ## 技术栈 | 类别 | 技术 | |-----------|------------| | 编程语言 | Python | | Web 框架 | Flask | | 数据库 | SQLite | | 前端 | HTML, CSS, Jinja2 | | 威胁情报 | AbuseIPDB | | 安全框架 | MITRE ATT&CK | | 数据格式 | JSON | | 报告 | 自动化威胁报告 | ## 系统架构 ``` +----------------------+ | Security Logs | +----------+-----------+ | v +----------------------+ | Log Parser | +----------+-----------+ | v +----------------------+ | Detection Engine | +----------+-----------+ | v +----------------------+ | Severity Mapper | +----------+-----------+ | v +----------------------+ | Threat Intelligence | | (AbuseIPDB) | +----------+-----------+ | v +----------------------+ | MITRE Mapper | +----------+-----------+ | v +----------------------+ | Incident Engine | +----------+-----------+ | +-------------------+ | | v v +--------------------+ +--------------------+ | SQLite Database | | Response Queue | +--------------------+ +---------+----------+ | v +----------------------+ | Playbook Generator | +----------+-----------+ | v +----------------------+ | Threat Report | +----------+-----------+ | v +----------------------+ | Flask Dashboard | +----------------------+ ``` ## SOC 工作流 1. 从多个来源收集安全日志。 2. 日志解析器提取有用的安全事件。 3. 检测引擎识别可疑活动。 4. 根据严重性对事件进行分类。 5. 使用 AbuseIPDB 对 IP 地址进行富化。 6. 将技术映射到 MITRE ATT&CK 框架。 7. 将事件存储在 SQLite 数据库中。 8. 事件进入响应队列。 9. 生成自动化 playbook。 10. 生成威胁报告。 11. 分析师通过 Flask 仪表盘监控事件。 ## 项目结构 ``` InstantResponsePlaybook/ │ ├── app.py # Flask application entry point ├── dashboard.py # Dashboard logic ├── detection_engine.py # Rule-based incident detection ├── incident_engine.py # Incident creation and processing ├── log_parser.py # Security log parsing ├── mitre_mapper.py # MITRE ATT&CK mapping ├── playbook_generator.py # Response playbook generation ├── playbook_seed.py # Playbook templates ├── response_dispatcher.py # Response dispatch logic ├── response_engine.py # Response execution engine ├── response_queue.py # Incident response queue ├── severity_mapper.py # Severity classification ├── threat_intelligence.py # Threat intelligence integration ├── threat_report.py # Threat report generation ├── threat_feed.json # Threat intelligence data ├── requirements.txt # Python dependencies │ ├── database/ │ ├── db_manager.py │ ├── incident_db.py │ ├── incidents.db │ └── models.py │ ├── logs/ │ ├── auth.log │ ├── email.log │ ├── security_events.log │ └── web.log │ ├── static/ ├── templates/ └── README.md ``` # ⚙️ 安装说明 ## 克隆代码仓库 ``` git clone https://github.com/deepsikhasingh011-hub/InstantResponsePlaybook.git ``` ## 配置 在运行应用之前,请在项目根目录下创建一个 `.env` 文件,并添加你的 AbuseIPDB API 密钥: ``` ABUSEIPDB_API_KEY=your_api_key_here ``` ## 导航至项目目录 ``` cd InstantResponsePlaybook ``` ## 创建虚拟环境 ### Windows ``` python -m venv venv venv\Scripts\activate ``` ### Linux/macOS ``` python3 -m venv venv source venv/bin/activate ``` ## 安装依赖项 ``` pip install -r requirements.txt ``` ## 运行项目 启动 Flask 应用: ``` python app.py ``` 默认情况下,应用将可以通过以下地址访问: ``` http://127.0.0.1:5000 ``` ## 仪表盘 仪表盘提供了模拟 SOC 环境的集中式视图。 当前功能包括: - 查看检测到的事件 - 监控事件严重性 - 审查生成的响应 playbook - 访问威胁报告 - 追踪事件工作流 ## 示例输入 本项目目前包含用于测试的示例日志文件: - 身份验证日志 - 电子邮件日志 - 安全事件日志 - Web 服务器日志 这些日志位于 `logs/` 目录中,用于模拟真实的 SOC 调查。 ## 示例输出 在处理事件时,本项目会生成如下输出: - 检测到的安全事件 - 严重性分类 - MITRE ATT&CK 映射 - 威胁情报富化结果 - 事件响应 playbook - 威胁报告 **一旦 UI 和报告模块达到稳定版本,将添加示例截图和生成的报告。** ## 展示技能 本项目展示了对以下方面的实践经验: - 安全运营中心 (SOC) 工作流 - 事件检测与分类 - 安全日志分析 - 威胁情报集成 - MITRE ATT&CK 映射 - 事件响应自动化 - Python 应用开发 - Flask Web 开发 - SQLite 数据库管理 - 模块化软件设计 - 网络安全文档编写 - 安全报告 ## 路线图 本项目正在积极完善中。计划中的改进包括: - [x] 日志解析 - [x] 基于规则的事件检测 - [x] 严重性分类 - [x] MITRE ATT&CK 映射 - [x] 威胁情报集成 - [x] 事件管理 - [x] 响应队列 - [x] Playbook 生成 - [x] 威胁报告生成 - [x] Flask 仪表盘 ### 计划功能 - [ ] 电子邮件通知支持 - [ ] 额外的威胁情报提供商 - [ ] REST API - [ ] Docker 部署 - [ ] AI 辅助事件分析 - [ ] 增强的仪表盘分析 - [ ] 自动化响应操作 **作者:** Deepsikha Singh *有志成为 SOC 分析师 | 网络安全爱好者*
标签:Flask, Python, 多模态安全, 威胁情报, 安全运营, 库, 应急响应, 开发者工具, 扫描框架, 无后门, 网络调试, 自动化, 逆向工具