edruela/invweb.diskRecovery
GitHub: edruela/invweb.diskRecovery
一个基于 Foremost 的交互式取证文件恢复工具,专门用于从U盘和SD卡中恢复已删除或格式化的文件。
Stars: 0 | Forks: 0
# invweb.磁盘恢复
[](https://opensource.org/licenses/MIT)
一个 Python 辅助工具,用于从 USB 驱动器和 SD 卡(包括已格式化的分区)中恢复已删除的文件,使用 **Foremost** —— 一款专业的法医级文件雕刻工具。
## 为什么选择 Foremost?
经过广泛测试,**Foremost 被证明远优于** photorec:
- ✅ 从相机格式化的驱动器中恢复了 **100%** 的文件
- ✅ 更积极的文件签名检测
- ✅ 更好的碎片文件处理能力
- ✅ 被执法部门用于数字取证
- ✅ 更清晰的输出组织结构(文件按类型分类)
## 系统要求
- Linux
- Python 3.8+
- 已安装 `foremost` (`sudo apt install foremost`)
- 建议具有 Root 权限(用于原始设备访问)
## 快速开始
### 简单恢复(交互式)
```
sudo ./run.sh
```
自动列出设备,提示选择,并恢复文件。
### 高级取证恢复(建议用于最大化恢复)
针对顽固情况(相机格式化的卡,最大恢复尝试):
```
sudo ./forensic_recovery.sh /dev/sdX
```
此命令并行运行 **3 个专业取证工具**:
- **Foremost** - 执法文件雕刻工具
- **Scalpel** - 积极的头尾匹配
- **Sleuth Kit** - 文件系统元数据分析
每个工具使用不同的算法,可能恢复出不同的文件。
## 使用方法
### 交互模式(推荐)
直接运行脚本,不带参数:
```
sudo ./run.sh
```
工具将:
1. 列出可用的可移动设备(USB 驱动器、SD 卡)
2. 提示您选择一个设备
3. 建议一个包含今天日期的输出目录
4. 启动 foremost 恢复所有文件
5. **自动修复文件权限**,以便您无需 sudo 即可访问
### 直接模式(用于脚本/自动化)
将设备和输出路径作为参数提供:
```
sudo ./run.sh --device /dev/sdb --output ~/recovered_files
```
此模式适用于脚本或您已经知道设备路径的情况。
## 脚本功能说明
该脚本:
- 验证输出文件夹是本地的,而非在U盘上
- 在执行任何恢复操作前请求确认
- 以无人值守模式启动 **foremost**
- 使用取证算法自动雕刻文件
- 按类型(jpg/、png/、pdf/ 等)组织恢复的文件
**为什么 Foremost 更有效:**
- 相机格式化的驱动器:Foremost 恢复率 100%,photorec 仅约 10%
- 更积极的字节模式匹配
- 更好的碎片文件处理
- 专业的取证级工具
## 自动权限修复
当使用 `sudo` 运行时,工具会自动:
- 检测您的原始用户(非 root)
- 将恢复文件的所有权更改为您的用户
- 设置可读权限 (0644)
- 无需手动运行 `chown`!
如果您有现有的恢复文件归 root 所有,请使用:
```
./fix_permissions.sh
```
## 许可证
本项目基于 MIT 许可证授权 - 详见 [LICENSE](LICENSE) 文件。
## 致谢
- **Foremost** - 由 Jesse Kornblum 开发的专业取证工具
- **Scalpel** - 由 Golden G. Richard III 开发的文件雕刻工具
- **The Sleuth Kit** - 由 Brian Carrier 开发的数字调查框架
## 支持
如果此工具帮助您恢复了重要数据,请考虑:
- ⭐ 为仓库点星
- 📝 在 issues/discussions 中分享您的成功案例
- 🤝 贡献改进
**免责声明**:此工具按原样提供。请务必先在非关键数据上进行测试。数据恢复成功率取决于许多因素,包括数据被删除的方式以及是否已被覆盖。
标签:Foremost, Linux工具, Scalpel, SD卡恢复, Sleuth Kit, USB驱动器恢复, 交互式软件, 删除文件恢复, 存储管理, 存储设备恢复, 恢复软件, 数字取证, 数据恢复, 数据提取, 文件恢复, 文件系统, 格式化分区恢复, 法医工具, 端口探测, 脚本自动化, 自动化脚本, 设备管理, 逆向工具