回收站删除时间
Windows 回收站把一次删除拆成一对文件:$I 开头的元数据记录原始路径与删除时间,$R 开头的是被删除内容本身,两者用同一编号配对,存放在各卷根目录的 $Recycle.Bin\<用户 SID> 目录中。$I 的独特价值在于它保留了 Windows 通常不写入文件系统的删除时刻。
基本信息
| 位置 | 各卷的 $Recycle.Bin\<用户 SID>\ |
|---|---|
| 配对规则 | $I<编号> 与 $R<编号> 使用同一编号对应 |
| $I 内容 | 文件头、原文件名与路径、删除时间 |
| 时间类型 | FILETIME,UTC 口径 |
| 解析工具 | RBCmd(Eric Zimmerman 工具集)等命令行解析器 |
| 权限要求 | 读取系统隐藏目录需要管理员权限 |
典型使用场景
- 还原文件被删除的时刻与原始路径
- 判断哪些文件是同一次操作批量删除的
- 与浏览器、下载记录对照确认素材来源
- 分析清理类工具的残留与反取证行为
- 从 $R 文件中恢复仍完整保存的内容
最小示例
最小示例
# 列出目标卷的回收站目录(CMD 环境)
dir /a C:\$Recycle.Bin\
# 用解析工具批量导出为 CSV
RBCmd.exe -d 'C:\$Recycle.Bin\S-1-5-21-XXXX' --csv C:\out\rb
# 读取导出的 CSV,核对列名与首行
Import-Csv C:\out\rb\rb.csv | Select-Object -First 5 DeletedOn, FileName
# 输出文件名与列名以所用工具版本为准
dir C:\out\rb要素与解读
| 要素 | 含义 | 注意 |
|---|---|---|
| $I 文件 | 元数据:原路径与删除时间 | 与 $R 同编号配对 |
| $R 文件 | 被删除内容本体 | 可能已被清理工具一并删除 |
| 删除时间 | FILETIME,UTC | 换算时区后再并入时间线 |
| 原始路径 | 带盘符的完整路径 | 用于还原文件归属 |
| SID 目录名 | 属主账号的 SID | 出现多个 SID 说明多账号使用 |
不同 Windows 版本的 $I 结构存在差异,字段偏移会变化;解析要以工具的输出版本为准,不要手写偏移量。
用户 SID 可通过 whoami /user 或注册表的 ProfileList 项关联到账号名,报告里建议同时写出账号名与 SID。
清理工具会同时删除 $I 与 $R,回收站为空并不等于没有删除行为,需要结合 USN Journal 等其它痕迹判断。
$R 文件可能是被删内容的完整副本,处置前先固定镜像;直接在原盘打开这类文件会更新访问时间。