akhil-dara/RecycleBin-Forensic-Explorer
GitHub: akhil-dara/RecycleBin-Forensic-Explorer
一款用于从E01取证镜像中解析并还原Windows回收站文件原始结构与元数据的可视化分析工具。
Stars: 15 | Forks: 3
# 🗑️ RecycleBin Forensic Explorer
**一款用于 Windows 回收站取证的便捷 GUI 工具 - 无需复杂的 $I/$R 解析即可浏览已删除文件**

[](https://www.python.org/)
[](LICENSE)
[](https://github.com/akhil-dara)
## 🎯 概述
RecycleBin Forensic Explorer 是一款用户友好的 GUI 应用程序,专为数字取证调查员和网络安全专业人士设计,旨在直接从 **E01 取证镜像** 中快速探索回收站相关痕迹。该工具通过提供直观的界面用于快速浏览、分析和导出已删除文件的元数据,消除了手动解析 Windows 回收站痕迹($I 和 $R 文件)的复杂性。
该工具旨在解决在使用传统取证工具(这些工具仅将回收站数据以平面记录形式展示)分析大量 `$I` 文件时遇到的实际调查挑战。
## 🚨 解决的问题
现有的取证方法(包括 Windows 和商业 DFIR 工具):
- 以无上下文的平面表格形式显示回收站痕迹
- 不允许在原始文件夹层次结构中浏览已删除文件
- 使用原始 `$Rxxxx` 文件名导出已删除文件
- 需要手动关联 `$I` 和 `$R` 文件
- 在大规模操作时效率低下且容易出错
**本工具专注于上下文重建,而不仅仅是痕迹提取。**
### 为什么选择 RecycleBin Forensic Explorer?
传统的回收站取证需要:
- ❌ 手动解析二进制 $I 文件以提取元数据
- ❌ 复杂的命令行工具和脚本
- ❌ 将 $I 文件与相应的 $R 文件进行匹配
- ❌ 耗时的手动关联已删除文件痕迹
- ❌ 丢失原始目录结构上下文
**RecycleBin Forensic Explorer 通过以下方式解决这些问题:**
- ✅ **直接 E01 镜像分析** - 无需挂载即可加载取证镜像
- ✅ **分区选择** - 选择要分析的具体分区
- ✅ **一键分析** 整个回收站结构
- ✅ **可视化证据树** 按原始层次结构显示已删除项目
- ✅ **自动 $I/$R 文件解析** 无需人工干预
- ✅ **多种导出格式**(CSV, JSON, HTML 报告)
- ✅ **上下文感知导出** - 恢复原始文件名和文件夹结构
- ✅ **深色/浅色模式** 便于舒适的分析工作
- ✅ **详细统计** 和时间线可视化
## 🚀 主要功能
### 🔍 证据处理
- **直接加载 E01 取证镜像** 无需挂载
- **支持分区选择** - 选择要分析的分区
- **自动发现** `$Recycle.Bin` 文件夹
- **基于 SID 的回收站内容解析**
- **稳健的 $I 元数据解析** 带有防御性错误处理
- **关联 $I 元数据** 与相应的 $R 文件
- **检测丢失的 $R 内容** 条目
### 📂 智能解析引擎
- 自动解析 Windows Vista/7/8/10/11 回收站结构
- 从 $I 文件中提取元数据:原始文件名、路径、删除时间戳和文件大小
- 将 $I 元数据映射到相应的 $R 恢复文件内容
- 支持基于 SID 组织的多用户环境
- **跨 Windows 版本处理多种 $I 文件格式变体**
### 🖥️ 面向调查员的界面
使用 **PySide6 (Qt)** 构建,专注于取证调查员的工作流程:
- 左侧窗格中的 **基于 SID 的导航** 适用于多用户系统
- 已删除文件的 **重建原始目录层次结构**
- 按删除前的状态浏览已删除内容
- 用于分层浏览的证据树视图
- 带有可排序列表的列表视图
- 实时搜索和过滤功能
- 用于快速操作的上下文右键菜单
- **过滤器**:删除日期、$R 存在/缺失
- **排序**:删除时间、文件大小、原始路径
- **图像预览** 和可选哈希计算
### 📊 上下文感知导出与报告
使用 `$I` 元数据而不是原始 `$R` 痕迹名称进行重建导出:
- **扁平导出** - 所有文件在单个目录中
- **保留原始目录结构** - 维护文件夹层次结构
- **基于 SID 的目录分离** - 按用户组织
- **组合 SID + 原始层次结构** - 完整上下文保留
- **恢复原始文件名** 而不是 $Rxxxx 名称
- **可选哈希计算** (MD5/SHA1/SHA256)
- **冲突安全处理** 带有自动后缀添加 (_1, _2 等)
- **CSV 和 JSON 报告** 包含完整取证元数据
- 基于时间线的删除分析
- 文件类型和大小分布统计
### 🎨 现代设计
- 适合长时间分析会话的深色模式
- 适合文档和演示的浅色模式
- 可自定义视图的响应式布局
- 专业的取证工具美学
## 📸 截图
### 证据树视图

*按用户 SID 组织浏览已删除项目,并显示综合元数据*
### 文件列表视图

*所有已恢复回收站痕迹的详细表格视图,带有可排序列*
### 导出选项

*用于 CSV、JSON 和 HTML 报告生成的灵活导出选项*
### 统计仪表板

*显示删除模式、文件类型和时间线分布的可视化分析*
### 报告生成

*保留所有取证元数据的专业 CSV 导出,以便进一步分析*
### 上下文菜单操作

*通过右键菜单快速访问导出、复制和分析功能*
### 文件对话框

*轻松从本地或挂载的取证镜像中选择回收站源*
### 深色模式界面

*适合长时间取证分析会话的舒适深色主题*
### 浅色模式界面

*专业的浅色主题,带有用于证据展示的平铺视图*
## 🔧 安装
### 前置条件
- Python 3.8 或更高版本
- PySide6 (Qt 框架)
- 必需的库:pyewf, pytsk3(用于处理 E01 镜像)
- Windows 操作系统(用于实时分析)或任何用于 E01 分析的操作系统
### 设置
```
# Clone the repository
git clone https://github.com/akhil-dara/RecycleBin-Forensic-Explorer.git
# 导航到项目目录
cd RecycleBin-Forensic-Explorer
# 安装所需依赖
pip install -r requirements.txt
# Run the application
python RecycleBin-Forensic-Explorer.py
```
## 💡 使用方法
### 快速开始
1. **启动应用程序**
python RecycleBin-Forensic-Explorer.py
2. **加载取证证据**
- 点击 "File" -> "Open E01 Image"
- 选择您的 E01 取证镜像文件
- 选择包含 Windows 安装的分区
- 工具会自动发现并解析 `$Recycle.Bin` 文件夹
3. **浏览已删除项目**
- 使用左侧窗格中基于 SID 的导航选择用户
- 在证据树中查看重建的原始目录层次结构
- 切换到列表视图以查看带有可排序列的详细表格显示
- 右键单击项目以进行上下文操作(预览、导出、哈希)
4. **过滤和分析**
- 应用删除日期过滤器以缩小时间线范围
- 按 $R 文件可用性(存在/缺失)进行过滤
- 按删除时间、文件大小或原始路径排序
- 使用搜索定位特定文件名或扩展名
5. **导出结果**
- 选择项目或整个树
- 右键单击 -> "Export"
- 选择导出模式:
- Flat:所有文件在一个目录中
- Original structure:保留文件夹层次结构
- SID-based:按用户组织
- Combined:SID + 原始层次结构
- 如有需要启用哈希计算 (MD5/SHA1/SHA256)
- 选择 CSV 或 JSON 报告格式
- 保存到案例文件夹
### 高级功能
#### E01 镜像分析
- 直接从取证镜像进行分析,无需挂载
- 支持复杂磁盘布局的多分区支持
- 只读操作确保证据完整性
- 在离线/物理隔离环境中工作
#### 过滤和搜索
- 按删除日期范围过滤以构建时间线
- 仅显示缺少 $R 内容的条目
- 按文件名、路径或扩展名搜索
- 通过单击标题对列进行排序
#### 统计分析
- 查看 "Statistics" 标签页以进行可视化分析
- 分析随时间变化的删除模式
- 识别文件类型分布
- 通过 SID 属性进行用户活动分析
- 导出统计数据以用于报告
#### 上下文感知导出
- 恢复原始文件名而不是 $Rxxxx
- 保留删除前的文件夹结构
- 带有智能后缀的自动冲突处理
- 用于证据完整性的哈希验证
- 完全记录在报告中的导出行为
## 🧪 用例
### 数据盗窃调查
恢复证据,证明在未经授权复制到外部介质或云存储后删除的文件。重建删除了什么以及何时删除。
### 员工不当行为
通过 SID 映射进行用户归属,在内部公司调查中调查已删除文件。构建删除活动的时间线。
### 内部威胁分析
追踪可能表明数据渗出或破坏的选择性文件删除。与访问日志和网络活动相关联。
### 欺诈调查
识别故意删除的财务文档或通信。在原始文件夹上下文中展示调查结果以增加清晰度。
### 时间线重建
构建涉及文件删除事件的综合时间线。与其他系统痕迹关联以形成完整的事件图景。
## 📋 提取的取证元数据
| 字段 | 描述 |
|-------|-------------|
| **原始文件名** | 删除前的完整文件名 |
| **原始路径** | 文件所在的完整文件系统路径 |
| **删除时间戳** | 删除的确切日期和时间(FILETIME 格式) |
| **文件大小** | 已删除文件的大小(字节) |
| **用户 SID** | 删除文件的用户的安全标识符 |
| **$I 文件路径** | 回收站中元数据文件的位置 |
| **$R 文件路径** | 可恢复内容文件的位置 |
| **$R 状态** | 内容文件是否存在或缺失 |
| **哈希值** | 已导出文件的可选 MD5/SHA1/SHA256 |
## 🔒 取证可靠性
- **只读分析**:工具从不修改源数据
- **哈希验证**:已导出文件的可选 MD5/SHA256/SHA1 验证
- **审计日志**:记录所有操作以便取证记录
- **监管链**:保留元数据时间戳和属性
- **防御性解析**:遇到错误时明显失败而非静默失败
- **法庭可辩护的导出**:具有完整来源的可读报告
## 🤝 贡献
欢迎贡献!无论是修复错误、改进文档还是添加新功能:
## 📝 许可证
本项目在 MIT 许可证下授权 - 有关详细信息,请参阅 [LICENSE](LICENSE) 文件。
⭐ **如果此工具对您的取证调查有帮助,请给此仓库点个星!**
*Built with ❤️ for the Digital Forensics & Incident Response community*
标签:$I文件, $R文件, E01镜像, GUI工具, pyewf, PySide6, Python, pytsk3, RecycleBin, Windows回收站, 元数据解析, 哈希计算, 已删除文件恢复, 开源安全工具, 数字取证, 数据导出, 文件夹结构重建, 文件恢复, 无后门, 时间戳分析, 电子取证, 磁盘镜像, 网络安全, 自动化脚本, 身份验证滥用, 逆向工具, 逆向工程平台, 隐私保护