卷影副本中的文件时间戳
卷影副本(VSS)为卷保存历史版本,可以恢复被删除或被改写的文件;副本中的时间戳与当前卷状态对照,能看出一段改写与恢复的经过。枚举副本用 vssadmin list shadows,取得影子卷偏移后再以只读方式解析,就能看到历史时刻的目录结构与文件属性。
基本信息
| 枚举命令 | vssadmin list shadows,需要管理员权限 |
|---|---|
| 关键输出 | 副本创建时间、影子卷设备路径、卷偏移扇区 |
| 访问方式 | 按偏移对镜像做只读解析,使用文件系统工具 |
| 典型用途 | 恢复被删或被改写的文件,比对历史版本时间 |
| 前提条件 | 副本未被清理,且镜像采集范围包含对应区域 |
典型使用场景
- 恢复被攻击者删除或改写的脚本与配置
- 对比同一文件在不同副本中的时间,定位改写时刻
- 确认某个文件在事发之前是否已经存在
- 从历史版本中取回被清除的日志文件
- 把副本创建时间与事件时间线比对,判断清理动作的发生点
枚举与访问
枚举与访问
vssadmin list shadows # 枚举副本与其创建时间
vssadmin list shadows | findstr /i "creation shadow copy volume" # 只看关键行
# 取得影子卷偏移后对镜像做只读解析
# fls -r -o <影子卷偏移扇区> -m '/' -z UTC /evidence/disk.dd | head
# icat -o <偏移> /evidence/disk.dd <节点号> > recovered_file # 取出单个文件副本字段读法
| 字段 | 含义 | 取证价值 |
|---|---|---|
| 副本标识 | 每个副本的编号 | 与卷路径配对使用,避免指错 |
| 创建时间 | 该副本形成的时间点 | 用于确定版本对应的时间 |
| 影子卷路径 | 影子卷的设备路径 | 定位并访问该历史版本 |
| 原始卷路径 | 副本对应的源卷 | 确认副本属于哪个卷 |
影子卷偏移来自 vssadmin 的输出,单位与文件系统工具的偏移参数(扇区)要对齐。不同采集工具呈现偏移的方式不同,换算错误会让解析落到错误区域,看起来就像副本里没有数据。
解析历史副本同样要只读操作:副本位于同一镜像内,任何写入都会同时改变当前卷与副本状态,等于毁掉两者之间的可比对性。恢复出的文件要输出到证据目录,并记录来源副本标识与偏移。