Selvawen/dfir-ai-assistant

GitHub: Selvawen/dfir-ai-assistant

一个基于 FastAPI 的自动化数字取证分析平台,能够摄取 Windows 安全日志、自动检测攻击行为、映射 MITRE ATT&CK 技术并生成完整的事件调查报告。

Stars: 0 | Forks: 0

# DFIR AI 助手 ### 自主数字取证与事件响应分析平台 一个自动化的 **DFIR 分析平台**,该平台通过摄取 Windows 安全日志,利用 **基于规则的检测工程** 检测恶意活动,将事件映射到 **MITRE ATT&CK 技术**,对事件严重程度进行评分,并生成 **可直接用于调查的案件报告和时间线**。 该系统模拟了 **安全运营中心 (SOC)** 如何对事件进行分流 —— 将原始遥测数据转化为可操作的情报。 该项目演示了以下内容的集成: - 检测工程 - 威胁搜寻自动化 - 安全数据管道 - 事件响应工具 - 面向安全的后端工程 # 概述 现代 SOC 团队被大量的安全警报和日志数据所淹没。分析师通常需要花费数小时手动进行以下工作: - 解析日志 - 关联事件 - 识别攻击者技术 - 构建调查时间线 - 撰写事件报告 **DFIR AI Assistant** 将此工作流自动化。 分析师无需手动分析原始日志数据,只需摄入日志,即可获得一份 **包含 MITRE ATT&CK 映射和时间线重建的完整分析事件报告。** # 关键特性 ## 自动化日志分析 解析 Windows Security 和 Sysmon 样式的事件,并将其标准化为结构化的调查数据集。 ## 检测引擎 应用基于规则的检测来识别恶意模式,包括: - 暴力破解攻击 - 横向移动 - 可疑的 PowerShell 活动 - 持久化机制 - 钓鱼宏执行链 ## MITRE ATT&CK 映射 每个检测都映射到其对应的 MITRE 技术。 | Detection | MITRE Technique | |---|---| | Brute Force Logons | T1110 | | Remote Service Logon | T1021 | | Encoded PowerShell | T1059.001 | | Service Persistence | T1543.003 | ## 事件风险评分 根据严重程度和行为上下文对事件进行评分,以确定整体的 **案件风险等级**。 示例输出: ` Low Medium High Critical ` ## 自动化事件叙述 系统自动生成人类可读的摘要,描述: - 发生了什么 - 攻击者如何移动 - 使用了什么技术 - 建议的补救措施 ## 调查时间线 所有可疑事件都被重建成一个 **按时间顺序排列的事件时间线**,使调查人员能够了解攻击者的进展。 ## Web 仪表板 一个轻量级的 SOC 风格仪表板允许分析师: - 浏览事件 - 按严重程度过滤 - 搜索事件 - 查看详细的案件报告 # 截图 ## SOC 仪表板 显示检测到的案件、风险评分和调查结果摘要。 dashboard ## 事件案件视图 显示生成的案件报告,包括 MITRE 映射、检测结果和调查摘要。 case-report ## 调查时间线 攻击者活动的可视化时间线重建。 timeline ## 规则检测输出 可疑 PowerShell 执行的示例检测。 detections ## API 接口 (Swagger) 该平台暴露了一个 REST API,允许分析师或安全自动化管道摄入日志并以编程方式触发调查。 Swagger UI 提供了交互式文档和测试功能,用于日志摄入和案件分析等端点。 api # 架构 ``` +----------------------+ | Log Ingestion API | | (FastAPI endpoint) | +----------+-----------+ | v +----------------------+ | Log Normalization | +----------+-----------+ | v +----------------------+ | Detection Engine | | (rules + heuristics)| +----------+-----------+ | v +----------------------+ | MITRE ATT&CK Mapper | +----------+-----------+ | v +----------------------+ | Risk Scoring Engine | +----------+-----------+ | v +----------------------+ | Case Report Builder | +----------+-----------+ | v +----------------------+ | Web UI Dashboard | +----------------------+ ``` # 使用的技术 ## 后端 - **Python** - **FastAPI** — API 框架 - **SQLAlchemy** — 数据库 ORM - **SQLite** — 轻量级存储 - **Pydantic** — 数据验证 ## 安全工程 - **MITRE ATT&CK Framework** - **Detection-as-Code 规则引擎** - **Windows Event Log 分析** - **Sysmon 遥测解析** ## 前端 - **Jinja2 Templates** - **HTML / CSS** - **轻量级 SOC 风格仪表板** ## 数据处理 - JSONL 日志摄入 - 时间线重建 - IOC 提取 - 行为关联 # 示例攻击场景 平台自动检测到的示例攻击: 1. 攻击者尝试密码暴力破解 2. 账户成功通过身份验证 3. 攻击者跳转到另一个系统(横向移动) 4. 执行恶意的 PowerShell 载荷 5. 通过 Windows 服务安装持久化 系统识别: ` Brute Force Attempt → Valid Account Login → Lateral Movement → PowerShell Execution → Persistence Mechanism ` 并自动生成一份 **完整的调查报告。** # 安装 克隆仓库: ``` git clone https://github.com/YOUR_USERNAME/dfir-ai-assistant.git cd dfir-ai-assistant ``` 创建虚拟环境: ``` python -m venv venv ``` 激活环境: Windows ``` venv\Scripts\activate ``` Mac/Linux ``` source venv/bin/activate ``` 安装依赖: ``` pip install fastapi uvicorn sqlalchemy jinja2 pydantic python-multipart pyyaml ``` # 运行平台 启动服务器: ``` uvicorn app.main:app --reload ``` 访问接口: ## API 文档 ` http://127.0.0.1:8000/docs ` ## SOC 仪表板 ` http://127.0.0.1:8000/ui ` # 使用 DFIR Assistant ## 步骤 1 — 上传日志 通过 API 上传 Windows 事件日志。 支持的格式: ` JSONL (one event per line) ` 示例文件: ` samples/mixed_security_sysmon.jsonl ` 通过 Swagger UI 上传: ` POST /ingest ` ## 步骤 2 — 运行检测引擎 运行检测管道: ` POST /cases/analyze ` 这将: -运行规则引擎 -映射 MITRE 技术 -计算风险评分 -生成调查摘要 ## 步骤 3 — 查看案件报告 导航到仪表板: ` /ui ` 点击案件以查看: -检测结果 -MITRE 映射 -IOC 摘要 -调查时间线 -补救建议 # 检测规则 规则使用 Detection-as-Code YAML 规则定义。 ``` name: Encoded PowerShell Execution description: Detects PowerShell commands using encoded payloads mitre: technique: T1059.001 severity: high condition: command_line_contains: - "-enc" - "FromBase64String" ``` 规则可以添加到: ` rules/ ` 并由检测引擎自动加载。 # 示例输出 生成的报告摘要示例: ``` Case risk is CRITICAL (100/100) Indicators suggest a brute force attack against user "employee". The same account later authenticated successfully and accessed multiple hosts indicating possible lateral movement. Subsequent activity shows execution of encoded PowerShell commands downloading external content. A Windows service was created on server-1 indicating potential persistence installation. ``` # 项目结构 ``` dfir-ai-assistant │ ├── app │ ├── api │ ├── core │ │ ├── detections.py │ │ ├── scoring.py │ │ ├── timeline.py │ │ ├── mitre.py │ │ └── summary.py │ ├── db │ └── main.py │ ├── rules │ └── detection rules │ ├── samples │ └── sample Windows logs │ ├── ui │ ├── templates │ └── static │ └── README.md ``` # 项目意义 该项目演示了以下人员使用的实用技能: -SOC 分析师 -检测工程师 -威胁猎手 -DFIR 调查员 -安全自动化工程师 包括: -安全日志分析 -威胁检测工程 -MITRE ATT&CK 映射 -自动化事件分流 -SOC 工具开发 # 未来改进 -未来改进 -计划的增强功能包括: -Elastic / SIEM 集成 -自动化威胁情报富化 -基于 ML 的异常检测 -基于图的攻击路径可视化 -容器化部署 (Docker) -云部署 (AWS) # 许可证 MIT License Copyright (c) 2026 Benjamin Anderson Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
标签:AMSI绕过, Cloudflare, incident response, incident Response, MITRE ATT&CK, OpenCanary, PE 加载器, PowerShell安全, Python, Sysmon, Windows安全日志, 事件调查, 云计算, 免杀技术, 威胁检测, 安全运营, 库, 应急响应, 恶意行为分析, 扫描框架, 持久化检测, 攻击映射, 数字取证, 无后门, 暴力破解检测, 横向移动检测, 渗透测试检测, 网络安全, 网络测绘, 自动化报告, 自动化脚本, 规则引擎, 逆向工具, 隐私保护