该案例文件删除后,文件起始簇号高位没有被清零,请网友注意.
在
E
盘下有一个文件夹
anli,
文件夹
anli
下有文件夹
Winhex15.3
和两个图片分别是
111.jpg
和
222.jpg.
我们首先用
Winhex
软件打开
E
盘,从
FDT
中找到所描述的文件夹项
anli
,
FDT
起如扇区号
=
保留扇区数
+FAT
大小
*2
,这些参数可在
DBR
的
BPB
参数中可以找到,也可直接跳转到
2
号簇。查找文本
anli
。
可以找到
anli
所对应
FDT
项如下:
相对本
FDT
偏移
0X14-15
表示起始簇号高
16
位,
0X1A-18
表示起始簇号低
16
位,所以文件夹
anli
的起始族号为
B01CE
转十进制为
721358
号簇,因为
anli
为文件夹所以偏移
0X1C-1F
描述大小为
0
,我们转到
721358
号簇,
如下:
可以看到该扇区启始两个
FDT
项分别为“
.
”“
..
”
“
.
”表示描述为该目录自身
,
从起始簇号可以看出起始簇号为
721358
与
anli
的
FDT
所描述的起始簇号一样,
“
..
”描述的是上一级目录
,
可以看出起始簇号描述为
0
,大小也为
0
,表示上一级目录为根目录。
第三项、第四项和第五项
FDT
描述的分别为
winhex15.3
文件夹、
111.jpg
和
222.jpg.
第四项
FDT
中可以看出
111.JPG
文件的起始簇号为
B0291H=721553D
大小为
2A806=174086B
第五项
FDT
中可以看出
222.JPG
文件的起始簇号为
B029CH=721564D
大小为
1278F=75663B
下面我们再转到
anli
对应的
FAT
表去看
FAT
表分配情况
.
我们可以直接转到
FAT
表
,
由前面分析可知
anli
文件夹起始簇号为
721358,FAT32
为
32
位表示一个簇的使用情况
,
所以
721358*4=2885432,
所以第
721358
对应的偏移地址为
2885432
转十六进制为
2C0738
。我们转到相对
FAT
偏移地址
2C0738
:
再转到
111.JPG
对应的
FAT
表
,721553*4=2886212.
转十六进制为
2C0A44
转到对应的
FAT
偏移地址
:
此时可转到
FAT
表对应的簇号:
222.JPG
也是使用同样的方法就不再介绍。
然后我们将
111.JPG
文件彻底删除
,
转到删除前
111.JPG
对应的
FDT
项看其变化
.
可以看到该
FDT
的第一字节被改写为
E5H,
其它没有改变。再转到
FAT
对应的
FAT
项,
可以看到之前对应的
FAT
表项全部被清空。
我们再将
anli
该文件夹彻底删除,看
FDT
和
FAT
变化情况。
先看
FDT
变化情况:
可以看出,该
FDT
项第一字节被改为
E5H
表示删除,其它无变化,
再转到对应的
FAT
项看其变化情况:
可以看到
FAT
表全部被清空。