MartMbithi/2-22-DFIR-Framework
GitHub: MartMbithi/2-22-DFIR-Framework
一款AI辅助的数字取证与事件响应SaaS平台,专注于自动化日志类网络事件调查,采用规则与语义混合分析模型确保证据完整性与调查可复现性。
Stars: 2 | Forks: 0
# 2:22 DFIR Framework – 自主数字取证与事件响应平台
## 概述
**2:22 DFIR Framework** 是一个 AI 辅助的数字取证与事件响应平台,旨在自动化现代信息系统内基于日志的网络事件调查。该框架是作为一项专注于加强政府信息环境(特别是县政府系统)中网络事件调查能力的研究的一部分而开发的。
名称 **“2:22”** 代表了该框架的调查架构首次被阐述的概念时刻。该框架体现了一种混合分析模型,结合了确定性取证分析与语义智能技术,以提高网络调查的效率、可扩展性和可辩护性。
该系统最初是作为命令行取证管道开发的,现已演变为**安全的多租户 SaaS 后端架构**,同时保留了底层数字取证引擎的完整性。
该框架强调:
- 取证可辩护性与证据完整性
- 混合确定性与语义取证分析
- 自动化工件摄取与分类
- 可扩展的调查工作流
- 多租户安全性与组织隔离
- 可重现的取证报告
## 2:22 DFIR Framework 原则
该框架的设计遵循五个核心取证原则:
1. **证据完整性**
- 所有被摄取的工件保持不变。
- 证据处理遵循数字取证最佳实践。
2. **确定性调查逻辑**
- 基于规则的取证检测确保结果的可重现性。
3. **语义智能支持**
- 机器学习和语言模型辅助上下文推理,而无需修改底层证据。
4. **运营可扩展性**
- 该框架支持异步作业执行和大规模取证数据集的可扩展处理。
5. **组织隔离**
- 多租户架构确保组织间取证数据的严格隔离。
## 核心能力
### 自动化数字取证管道
2:22 DFIR Framework 实施了结构化的取证调查管道,执行:
- 原始取证工件的自动摄取
- 多渠道网络事件检测
- 指标标准化与丰富
- 混合分类分析(基于规则 + 语义)
- 工件关联与情报生成
- 结构化取证报告生成
### SaaS 调查平台
SaaS 后端通过以下功能实现安全的取证操作:
- 多租户组织管理
- 安全认证与授权 (JWT)
- 案件管理与取证证据追踪
- 异步 DFIR 作业执行
- 实时作业进度监控
- 持久化取证报告存储
- 安全报告下载端点
## 系统架构
2:22 DFIR Framework 的架构将 **取证核心引擎** 与 **SaaS 编排层** 分离,以保持调查的可重现性。
Frontend (Future Investigation Dashboard)
|
v
FastAPI Backend (2:22 DFIR SaaS Layer)
├── Authentication & Organizations
├── Case Management
├── Evidence Upload & Ingestion
├── DFIR Job Execution
├── Investigation Tracking
├── Report Retrieval
|
v
2:22 DFIR Core Engine
├── Evidence Ingestion
├── Artifact Normalization
├── Threat Detection
├── Forensic Triage Engine
├── Semantic Investigation Layer
├── Intelligence Correlation
└── Report Generation
DFIR 核心的隔离确保了无论 SaaS 编排层如何,取证分析都保持**确定性、可审计和可重现**。
## 技术栈
### 后端平台
- Python 3.9+
- FastAPI
- SQLAlchemy ORM
- MySQL / MariaDB
- JWT Authentication
- 异步后台任务执行
### DFIR 核心引擎
- 自定义工件摄取检测器
- 确定性分类规则
- 用于语义相似度的 Sentence Transformers
- 可选的 OpenAI Responses API 集成
- 混合评分引擎(规则 + 语义)
- 自动化 PDF 和 TXT 取证报告生成
## 仓库结构
DFIR_AI/
├── backend/ # SaaS backend layer
│ ├── api/ # API endpoints
│ ├── db/ # database session management
│ ├── execution/ # job runners
│ ├── models/ # SQLAlchemy models
│ ├── schemas/ # Pydantic schemas
│ └── main.py # FastAPI application entrypoint
│
├── dfir_core/ # 2:22 DFIR investigation engine
│ ├── ingestion/
│ ├── triage/
│ ├── triage_semantic/
│ ├── narrative/
│ ├── reporting/
│ └── scripts/run_all.py
│
├── uploads/ # Uploaded forensic evidence
├── reports/ # Generated forensic reports
├── requirements.txt
├── .env
└── README.md
## 数据库模型
平台维护支持取证可追溯性和可审计性的结构化数据库模式。
核心实体包括:
- users
- organizations
- cases
- case_uploads
- forensic_artifacts
- triage_results
- jobs
- reports
设计原则:
- 复数表名
- 单数属性名
- 严格的组织隔离
- 完整的取证分类决策审计追踪
## 环境配置
在根目录下创建 `.env` 文件:
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=
DB_NAME=dfir_ai
DATABASE_URL=mysql+pymysql://root:@localhost:3306/dfir_ai
OPENAI_API_KEY=optional
## 运行后端
### 安装依赖
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
### 启动 API 服务器
uvicorn backend.main:app --reload
API 文档 (Swagger):
http://127.0.0.1:8000/docs
## 端到端调查工作流
1. 注册或认证用户
2. 创建组织
3. 创建取证案件
4. 上传取证工件
5. 启动 DFIR 调查作业
6. 监控作业进度和阶段
7. 下载生成的取证情报报告
## 安全报告下载
端点:
GET /reports/{report_id}/download
功能包括:
- 组织范围的授权
- 案件所有权验证
- 安全文件系统访问
- 云存储 (S3 / MinIO) 的可扩展性
## 取证完整性模型
2:22 DFIR Framework 遵循严格的取证完整性原则:
- 证据摄取是确定性的
- 原始证据从不被修改
- 分类评分完全可审计
- 语义推理不改变证据
- LLM 仅用于叙事合成
- 报告可以从存储的工件中重现
## 学术与研究应用
该框架可用于:
- 网络安全研究
- 数字取证实验
- 自动化事件响应研究
- 政府网络安全能力建设
该平台也是 **2:22 Digital Forensic and Incident Response Framework** 的技术实现,旨在加强公共部门信息系统内的网络事件调查。
## 项目状态
当前开发状态:
- 后端基础设施稳定
- DFIR 作业执行管道可用
- 取证报告引擎功能正常
- 安全报告下载端点已实现
- 前端调查仪表板开发中
- DFIR 核心引擎已保留并进行版本控制
## 许可证
本框架严格用于:
- 网络安全研究
- 数字取证调查
- 防御性安全分析
本项目**不用于攻击或恶意用途**。
标签:Apex, DLL 劫持, Petitpotam, SaaS平台, 人工智能, 分类与分级, 取证管道, 可扩展架构, 多租户架构, 大语言模型, 安全编排与自动化, 异步任务处理, 政府网络安全, 数字取证, 机器学习, 混合分析模型, 用户模式Hook绕过, 确定性分析, 网络犯罪调查, 自动化脚本, 自动化调查, 证据完整性, 语义智能, 逆向工具