dfirvault/DFIRVault
GitHub: dfirvault/DFIRVault
一款为数字取证与事件响应(DFIR)设计的统一控制台应用,整合案件管理与多工具扫描以简化调查流程。
Stars: 1 | Forks: 0
# DFIRVault





**统一的数字取证与事件响应操作控制台**
[安装](#installation) • [功能](#features) • [快速开始](#quick-start) • [文档](#documentation) • [贡献](#contributing)
## 🚀 概述
**DFIRVault** 是一个全面的、一体化控制台应用程序,专为数字取证与事件响应(DFIR)专业人员设计。它将多个核心 DFIR 工具整合到单一统一界面中,简化调查流程并消除在不同应用之间切换的需求。
由 DFIR 实践者为 DFIR 实践者开发,DFIRVault 将案件管理、威胁扫描、日志分析、数据摄取与同步能力集成到一个强大的平台中。
### 为什么要使用 DFIRVault?
- **🚀 统一工作流**:无需在多个工具间切换——所有功能集中一处
- **🔒 取证安全性**:遵循取证最佳实践与证据链管理
- **📊 全面报告**:生成详细的 HTML、CSV 和 JSON 报告用于文档记录
- **⚡ 性能优化**:多线程扫描与高效数据处理
- **🔧 企业就绪**:支持与 Splunk、Elasticsearch 集成及计划任务自动化
## 📋 功能特性
### 1. 📁 DFIR 案件管理器
- **创建结构化案件文件夹**,包含预定义的证据目录层次结构
- **归档案件**(支持可选的 AES-256 加密,集成 7-Zip)
- **案件元数据追踪**与关键词管理
- **一键访问文件夹**与备份位置管理
### 2. 🔍 Hayabusa 扫描器
- **EVTX 日志扫描**,支持 Sigma 规则检测
- **CSV 时间线生成**,采用 ISO-8601 时间戳
- **HTML 报告创建**,便于分享与文档记录
- **递归文件夹扫描**,适用于挂载的镜像与驱动器集合
### 3. ⛓️ Chainsaw 扫描器
- **基于 Sigma 规则的狩猎**,针对 EVTX 文件
- **事件日志关联**与模式检测
- **CSV 输出**,便于在 Splunk/ELK 中进一步分析
- **自定义规则支持**,满足组织特定威胁需求
### 4. 🦁 Thor 扫描器
- **跨多驱动器的文件系统 IOC 扫描**
- **MD5 哈希提取**,用于威胁情报匹配
- **多线程扫描**,实现最高性能
- **HTML 与 CSV 报告**,提供详细发现
### 5. 📊 Splunk 索引管理器
- **程序化创建/删除 Splunk 索引**
- **监控文件夹并自动摄取日志**
- **备份/恢复索引**(支持密码保护)
- **Web 界面启动器**,实现快速访问
### 6. 📈 CSV → Elasticsearch(CSV2ELK)
- **批量 CSV 上传**到 Elasticsearch 集群
- **自动索引创建**,采用基于日期的命名
- **时间戳检测**与字段映射
- **分块上传**,带进度追踪
### 7. 🔄 SFTP/FTP 监控
- **本地与远程文件夹之间的双向同步**
- **实时文件监控**,使用 Watchdog
- **远程文件夹浏览器**,支持 GUI 选择
- **完整日志记录**,用于审计追踪
### 8. 💾 VaultMirror
- **安全的计划同步**,使用 Windows 任务计划程序
- **优雅删除处理**,提供 30 天恢复窗口
- **双向同步选项**,用于镜像操作
- **已删除文件保险库**,支持自动清理
## 🖥️ 系统要求
- **操作系统**:Windows 10/11、Windows Server 2016+
- **Python**:3.8 或更高版本(如从源码运行)
- **磁盘空间**:应用程序约 500MB,证据存储按需分配
- **内存**:最低 4GB,建议 8GB 或更高
- **管理员权限**:Thor 扫描器与 VaultMirror 需要
### 可选依赖
- **7-Zip**:用于加密的案件归档(https://www.7-zip.org/)
- **Hayabusa**:用于 EVTX 扫描(https://github.com/Yamato-Security/hayabusa)
- **Chainsaw**:用于 Sigma 规则狩猎(https://github.com/WithSecureLabs/chainsaw)
- **Thor Lite**:用于 IOC 扫描(https://www.nextron-systems.com/thor-lite/)
- **Splunk**:用于日志管理(https://www.splunk.com/)
- **Elasticsearch**:用于 CSV 摄取(https://www.elastic.co/)
## 📥 安装指南
### 选项 1:预编译可执行文件(推荐)
1. 从 [发布页面](https://github.com/dfirvault/DFIRVault/releases) 下载最新的 `DFIRVault.exe`
2. 将可执行文件放置到你的工具目录(例如 `C:\Tools\DFIRVault\`)
3. 双击运行——无需安装!
### 选项 2:从源码运行
```
# 克隆仓库
git clone https://github.com/dfirvault/DFIRVault.git
cd DFIRVault
# 安装依赖
pip install -r requirements.txt
# 运行应用程序
python dfirvault.py
```
## 🚦 快速开始指南
### 首次启动
1. **以管理员身份运行** `DFIRVault.exe`(以获得完整功能)
2. 主菜单将显示所有可用模块
3. 根据提示配置工具路径(Hayabusa、Chainsaw、Thor 等)
4. 在案件管理器中设置案件文件夹与备份位置
### 典型工作流程
1. **新建案件**:使用案件管理器创建结构化的案件文件夹
2. **收集证据**:将磁盘镜像、EVTX 文件及其他证据复制到案件文件夹
3. **威胁扫描**:对证据运行 Hayabusa、Chainsaw 与 Thor 扫描器
4. **分析结果**:查看扫描器生成的 HTML/CSV 报告
5. **数据摄取**:将 CSV 报告上传至 Splunk 或 Elasticsearch 以进行深度分析
6. **归档案件**:使用密码保护并归档已完成案件至冷存储
7. **同步备份**:使用 VaultMirror 维护异地备份
## 📚 详细模块文档
### DFIR 案件管理器
案件管理器为每次调查创建标准化的文件夹结构:
```
[Case Name]/
├── 01 - Evidence/ # Raw evidence, disk images, memory dumps
├── 02 - Case/ # Case notes, interview transcripts, legal docs
├── 03 - Malware/ # Captured malware samples (password protected)
└── 04 - Extracted Evidence/
├── 01 - Axiom/ # Magnet Axiom exports
├── 02 - XWays/ # X-Ways Forensics exports
├── 03 - Thor/ # Thor scanner results
├── 04 - Hayabusa/ # Hayabusa CSV/HTML reports
└── 05 - Chainsaw/ # Chainsaw detection results
```
**实用提示**:在案件根目录中存储 `Keywords.txt`,供调查员记录笔记与搜索词。
### 扫描器配置
#### Hayabusa 设置
1. 从 [GitHub](https://github.com/Yamato-Security/hayabusa) 下载 Hayabusa
2. 解压至 `C:\Tools\Hayabusa\`
3. 首次扫描将提示选择可执行文件位置
4. 配置信息保存至 Windows 注册表:`HKCU\Software\DFIRVault\Hayabusa`
#### Chainsaw 设置
1. 从 [GitHub](https://github.com/WithSecureLabs/chainsaw) 下载 Chainsaw
2. 解压至 `C:\Tools\Chainsaw\`
3. 确保 Sigma 规则位于 `rules/` 子目录中
4. 配置信息保存至 Windows 注册表
#### Thor 扫描器设置
1. 从 [Nextron Systems](https://www.nextron-systems.com/thor-lite/) 下载 Thor Lite
2. 将 `thor64-lite.exe` 放置到 `C:\Tools\Thor\`
3. 通过工具菜单运行签名更新
4. **需要管理员权限**
### Splunk 集成
**初始设置:**
1. 确保 Splunk 已安装并运行(本地)
2. 访问 `Settings > Tokens` 生成认证令牌
3. 在 DFIRVault 中输入凭证
**常用操作:**
- 创建索引并自动监控文件夹
- 删除索引前备份(支持密码保护)
- 从备份 ZIP 文件恢复索引
- 直接从控制台启动 Splunk Web
### Elasticsearch CSV 上传
**支持格式:**
- 带标题行的标准 CSV
- UTF-8 编码(推荐)
- 任意分隔符(自动检测)
- 大文件(自动分块)
**时间戳处理:**
- 自动检测时间戳列
- 支持 Unix 时间戳(秒/毫秒)
- ISO-8601 日期字符串转换
- 可自定义时间戳字段
### VaultMirror 安全同步
**安全删除机制:**
1. 文件不会立即永久删除
2. 被删除文件移至 `[Drive]:\VaultMirror_Deleted\[CaseName]\`
3. 保留 30 天(可配置)
4. 自动清理过期文件
5. 元数据 JSON 文件记录删除历史
**同步模式:**
- **单向同步**:源 → 目标(仅添加/更新文件)
- **双向同步**:完整同步,基于时间戳解决冲突
## 🔧 配置管理
DFIRVault 的所有配置均存储在 Windows 注册表中,路径如下:
```
HKEY_CURRENT_USER\Software\DFIRVault\
```
### 注册表结构
```
DFIRVault/
├── CaseManager/
│ ├── case_folder (REG_SZ)
│ └── backup_location (REG_SZ)
├── Hayabusa/
│ └── executable_path (REG_SZ)
├── Chainsaw/
│ └── executable_path (REG_SZ)
├── Thor/
│ └── executable_path (REG_SZ)
├── Splunk/
│ ├── splunk_path (REG_SZ)
│ ├── username (REG_SZ)
│ └── password (REG_SZ)
└── Elasticsearch/
├── url (REG_SZ)
├── username (REG_SZ)
└── password (REG_SZ)
```
**备份注册表设置:**
```
reg export "HKCU\Software\DFIRVault" DFIRVault_backup.reg
```
**恢复注册表设置:**
```
reg import DFIRVault_backup.reg
```
## 🛠️ 故障排查
### 常见问题与解决方案
| 问题 | 解决方案 |
|------|----------|
| **Hayabusa/Chainsaw 未找到** | 下载对应工具并设置路径 |
| **Thor 扫描器失败** | 以管理员身份运行 DFIRVault |
| **Splunk 连接被拒绝** | 确保 Splunk 在 8089 端口运行 |
| **CSV 上传失败** | 检查 Elasticsearch 集群健康与凭证 |
| **VaultMirror 任务未创建** | 以管理员身份运行并检查任务计划程序服务 |
| **注册表访问被拒绝** | 确保对 HKCU 拥有写入权限 |
### 日志文件
- **案件管理器**:`[CaseFolder]/case_manager.log`
- **Hayabusa**:`[ReportPath]/[case]-log.txt`
- **Thor 扫描器**:`[ReportPath]/[case]_thor_log.txt`
- **SFTP 监控**:`[LocalFolder]/logs/sftp_monitor_*.log`
- **VaultMirror**:`%APPDATA%\VaultMirror\logs\`
### 性能优化
- 尽可能使用 SSD 存储证据
- 限制并发扫描器数量以避免 I/O 瓶颈
- 对大型驱动器启用 Thor 扫描器的多线程选项
- 根据网络状况调整 CSV2ELK 的分块大小
## 📄 许可证
本项目采用 MIT 许可证授权——详见 [许可证文件](LICENSE)。
## 🙏 感谢
- **Yamato Security** 提供 Hayabusa
- **WithSecure Labs** 提供 Chainsaw
- **Nextron Systems** 提供 Thor Lite
- **Splunk** 与 **Elastic** 社区
- 所有提供反馈与测试的 DFIR 实践者
## 📞 联系与支持
- **开发者**:Jacob Wilson
- **邮箱**:dfirvault@gmail.com
- **GitHub**:[https://github.com/dfirvault](https://github.com/dfirvault)
- **问题反馈**:[GitHub 问题页面](https://github.com/dfirvault/DFIRVault/issues)
## ⭐ 星标历史
如果你发现 DFIRVault 有用,请考虑在 GitHub 上为该项目标星!
[](https://star-history.com/#dfirvault/DFIRVault&Date)
用心构建,为 DFIR 社区而献 ❤️
标签:7-Zip, AES-256, CSV报告, DFIRVault, Elasticsearch, HTML报告, JSON报告, Python, Windows平台, 企业级, 取证工具, 同步, 威胁扫描, 安全分析, 性能优化, 数字取证, 数据摄取, 无后门, 检测绕过, 漏洞评估, 结构化文件夹, 统一控制台, 自动化任务, 自动化脚本, 调查工具, 逆向工具, 链式保管