deepsikhasingh011-hub/InstantResponsePlaybook
GitHub: deepsikhasingh011-hub/InstantResponsePlaybook
一个基于 Python 和 Flask 构建的 SOC 事件响应自动化平台,通过解析安全日志、关联威胁情报并生成标准化响应 Playbook 来减少安全团队的手动分类工作。
Stars: 0 | Forks: 0
# 即时响应 Playbook




## 项目状态
**当前状态:** 正在积极开发中
本项目正在增量开发中,旨在模拟现代安全运营中心 (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, 多模态安全, 威胁情报, 安全运营, 库, 应急响应, 开发者工具, 扫描框架, 无后门, 网络调试, 自动化, 逆向工具