手工恢复回收站被清空的文件

时间:2024年3月1日 天气:中雨

今天不小心清空了回收站误删的一个文件,准备用X-Ways Forensics手工恢复出来。

先用X-Ways Forensics加载存放被删文件的NTFS分区F。


这个文件是我自己命名的,所以还记得文件名中包含“huanshoupalu”,NTFS文件系统的文件名是用Unicode编码保存的,所以把这个字符串转换为十六进制的Unicode便于搜索。

1
6800750061006E00730068006F007500700061006C007500


然后在X-Ways中点一下$MFT文件,会自动跳转到$MFT中的第一条记录。


点击HEX搜索按钮,输入已经转换成的HEX字符串的部分文件名,方向向下,然后点击确定。


这样就能定位到原来的文件,从而确定被移动到回收站后获得的新命名。


去掉新文件名前缀$I,只复制剩下的字符串的HEX

1
480037004500560052005A002E007A00690070


重新点击MFT文件,继续使用复制的字符串进行HEX搜索****,定位被删文件的MFT文件记录


上图就是被删文件的MFT记录以及进入回收站获得的新名称,继续分析这条MFT记录的80属性,来获取文件在磁盘中被分配的簇,X-Ways Forensics模板已经帮我们高亮了簇流信息。

1
42 7F 03 1F D3 3D 01 00

其中第一个字节42前边的4表示起始簇位置是后四个字节,后边的2表示前两个字节是簇流长度,00表示簇流结束。


起始簇1F D3 3D 01转换成十进制表示第20,828,959个簇


簇流长度7F 03换算为十进制表示长度为895个簇,就也就是簇流持续到第20,828,959+895=20,829,854个簇前结束。


跳转到起始簇20,828,959


可以看到压缩文件的文件头,我们在开头字节50处用快捷键Alt+1标记一下


继续跳转到簇流结束的20,829,854簇,在前一个簇最后一个字节用Alt+2标记一下


随后导出这段选块的数据至新文件“未命名.zip”。


随后打开文件进行解压测试,成功恢复了。


由于最后一个簇里面还有很多未使用的空间00也同时被放到恢复出的文件尾了,所以哈希值大小和之前有所不同,但是文件没问题能用。


上述操作直接用FTK加载分区去翻回收站应该也是能直接导出的,以后想多学习电子数据取证最原始的东西,打好基础。